[Bf-interface] GUI redesign - Call for Participation ;)

Julian Eisel eiseljulian at gmail.com
Wed Jun 10 19:02:05 CEST 2015


Alright, talked about this in IRC and this is definitely a quite nice
approach even if it is a bit of work. I'll first try to get a working
system for this done, later we can check more detailed on developing a
couple of styles.

We can keep keep working with what we already have in the meanwhile,
so for now nothing has changed except that I'll look into making the
"Interface Style" idea more insane ;)

On Wed, Jun 10, 2015 at 6:15 PM, Campbell Barton <ideasman42 at gmail.com> wrote:
> On Thu, Jun 11, 2015 at 12:12 AM, Julian Eisel <eiseljulian at gmail.com> wrote:
>> Hey all!
>>
>> I guess most of you already noted that I was working on a graphical
>> redesign branch for a couple of days now. So far this was mostly
>> fooling around since we discussed a lot about many things but didn't
>> make many desicions. So currently I've implemented a mixture of
>> different proposals/styles.
>>
>> Main changes so far:
>> * "Interface Style" option to toggle between old "Classic" style and
>> new "Flat" style
>> * Implemented a Sub-Button pipline for widget rollover feedback (Task:
>> https://developer.blender.org/T38070) but can be used for much more
>> * New panel design (Task: https://developer.blender.org/T41261)
>> * Improved Menu/Popup design
>> * More flat widget drawing (disabled outlines, emboss and shading -
>> Task: https://developer.blender.org/T38037)
>> * Increased default DPI to 78 (was 72), decreased font sizes
>> * New Area/Region edge design, also added a theme color option for it
>> (mainly for testing)
>> * Thinner scrollbars
>> * Theme option for widget corner roundness (mainly for testing, don't
>> think we should have that in master TBH - based on an old patch from
>> Pablo)
>> * New checkbox button design
>>
>> Some screenshots of the current state of the branch:
>> * Full default screen: https://developer.blender.org/F188930
>> * Sub-buttons widget rollover (.gif) https://developer.blender.org/F187781
>> * New menu design: https://developer.blender.org/F185707
>> * "Interface Style" menu: https://developer.blender.org/F188942
>> * "Classic" style: https://developer.blender.org/F188937
>>
>> Up till now, I've mostly worked on my own, asking Pawel for new ideas,
>> feedback and mockups now and then, but think at this point it would be
>> good to join forces on this (at least the UI team).
>> First some general feedback on status quo would be good, but then we
>> should start looking into some details, make desicions and also work
>> on the new default theme(s).
>> The exact branch name is UI-graphical-redesign btw, but the
>> UI-experiments branch is in sync with it.
>>
>> So! I see this as a good chance to prove (find?) the power of the UI
>> team and as a good warm up project for more, hope we can get something
>> done :)
>>
>> Cheers,
>> - Julian -
>
> Hi, I checked the branch and the main concern I have with the code so
> far is that flat/classic are basically tweaks to the same UI style.
>
> Thats fine if all we want is some subtle variation, on a similar base.
>
> The reason I think this could become a problem is the further we push
> each button style with this method, we basically mix all theme code in
> the same code-path (with a bunch of conditional checks all over)...
> which becomes hard to maintain.
> Even if it seems OK for the time being... areas like this tend to grow
> over time. (each time adding some button style option seems OK... but
> after a year or two we have spaghetti code - where fixing an issue
> with one style easily breaks another).
>
>
> I think it would be better to split the styles up in the code into
> distinct types (a little like we have for modifiers, customdata,
> DerivedMeshe ... already).
>
> uiWidgetStyle {
>     draw_operator();
>     draw_number();
>     draw_slider();
>     draw_text();
>     draw_label();
>     draw_color();
> ... etc ...
> };
>
> ... then each widget can define its own callbacks and they don't have
> to share any logic with each-other (they can of course share some
> lower level utility functions too if it makes sense).
>
> ----
>
> Irrespective if we go ahead with button style code, I think it would
> be good to start out with at least 2x extra distinct styles,
> (different enough that we can verify the style system works well).
>
> As an example... the Rounded and Minimal styles from 2.4x would be an
> OK test-case.
> http://download.blender.org/ftp/ideasman42/pics/blender_24_rounded_minimal.png
>
> While you could pick other examples, the point is to show a working
> style system. The actual design work can be done separately.
> _______________________________________________
> Bf-interface mailing list
> Bf-interface at blender.org
> http://lists.blender.org/mailman/listinfo/bf-interface


More information about the Bf-interface mailing list