On Thu, Mar 22, 2012 at 11:11 AM, Evan Laforge <[email protected]> wrote:
> > I was relieved to see you mentioned shared library support for themes. > > This is also where I got in a big argument with the other FLTK > > developers. It is ugly but work should be done on loading GTK themes and > > calling the Windows "Appearance Manager", not on writing parsers for > > some fltk-specific format that no other programs use and can only set a > > bunch of colors. I know it is not fun but it HAS to be done this way, > > and it has to be done NOW, rather than pretending that after ignoring it > > FLTK will magically have the right underlying scheme to allow these to > run. > > Are there people who actually really like and care about themes? I'd > personally prefer just a single hardcoded one that looks nice. > The problem is that 'nice' is extremely subjective. Some people *hate* gradients, others *require them*. Ditto with rounded corners, straight lines, drop shadows, the color blue, stippling and anything else you can imagine. That's why there are so many GTK themes. None of them is wildly different, they just vary these parameters... Now, maybe you can get away with having themes that aren't shared objects if you have a theme engine that allows all these things to be tweakable, but shared objects are certainly the ultimate in flexibility--as the theme can do whatever it wants and be as configurable as it wants, it can do optimizations like caching common sizes of boxes offscreen, it can be made entirely of pixmaps etc. I don't know about the possibility of using the GTK theme engines directly--as I'm pretty sure they depend on GDK and Glib in addition to Cairo. But making copy+paste functional equivalents should not be difficult at all. And, most importantly to the user, *they* can pick the theme and have it applied to all programs--without having to specify -scheme plastic or whatever.
_______________________________________________ fltk-dev mailing list [email protected] http://lists.easysw.com/mailman/listinfo/fltk-dev
