Key Pages
ProjectsThemes usually comes up in the context of Unix support, and is available by default with KDE and GNOME.
As described in the page on Look and Feel, the first goal for this project is to update the appearance on Unix away from Motif and to provide a Windows-like look and feel. We can then address themes after that. Doing the Windows as a first step is important because:
So to summarize, themes are beyond the original scope of this project, but once we get through that, it makes a whole lot of sense to revisit the topic.
Original discussion below...
Posted at Aug 05/2003 12:02 PM:
LVirden: I hear a lot more clammer for themes than I do for a Windows look and feel.
Mark Roseman: Themes are both a lot of work, and a secondary concern - the default look on Unix for Tk apps is far too clunky (too big borders, etc.). Most apps, particularly more commercial oriented ones, tend to go with a more Windows-like style on Unix... by that I mean as much use of property dialogs, tree metaphors, certain standard dialogs, types of layout, etc. No surprise given most of these apps also run on Windows as well! I guess what I'm saying is we need to get the default look able to easily support that style of app (and we're not that far away from being able to do that well) long before we get to worrying about themes (which will take a lot more work).
Steve Simmons: Speaking as one of the persons who mentioned themes, I must suggest that it be lower on the core teams priority list than the Windows L+F work. My reasons are simple enough: the Windows work is necessary and unattractive to the average UNIX programmer. The themes work is not as necessary but is much more likely to attract a Linux/KDE/Gnome hacker. Let's leave themes as a bit of bait for attracting the latter.
Posted at Aug 05/2003 01:12 PM:
Clif Flynt: I hear requests for themes from the Open Source folks, and windows look/feel from the industrial/commercial users. By Windows Look/Feel they usually mean IE and Word (Not the look/feel from the Command Console, as I provided first).
I believe we can get a large step towards Windows Look/Feel with options. Serious theming will require more options at the C level (tiling options, corner shape, separate options for top-width, bottom-width, left-height, right-height). Given the kinds of support necessary for theming, I think we'll have all the tools for generating native, MS-Win, ice-blue-C001, JellyBean, or anything else.
Posted at Aug 11/2003 07:24 AM:
DKF: There's the beginnings of a theme engine in Tk now, based on TIP #48. It just needs work to make it happen for everyone.
Posted at Aug 17/2003 05:38 PM:
TFW: Re. TIP #48, Is there list somewhere of what needs to be done?
Posted at Aug 18/2003 09:31 PM:
Brian Griffin: Here's my thoughts on Themes: We can spend a lot of time trying to mimic Windows 98/2K/XP, and Motif, and OSX, and KDE, etc., etc., only to find that a new L&F has come onto the scene. I think implementing themes or styles right up front so it is at the core of all widgets, we will at least have some hope of keeping up with MS's or Apple's "next big thing."
Another thing I've noticed is that all the GUI toolkits I've looked at define their own L&F, so picking one sort-of locks you into that L&F. We have an opportunity here to do something that none of the other toolkits do, that is to mimic or be any L&F the application wants. If you want to go after the commercial Windows buisness world, you can make your applications match Windows, no matter which platform you run on and ditto for OSX, etc.
Brett Schwarz: I agree. I think getting themes done, will make the L&F of Tk easier to accomplish on the various platforms. Then, by default, if tcl_platform == windows; then theme = windows_theme, ...
Posted at Sep 01/2003 03:04 PM:
Joe English: I've been playing with the TIP #48 style engine a bit, and I have to agree with Brian and Brett -- themeability, done right, will go a long way towards making "native" look and feel easier to accomplish (at least at the widget level). TIP #48 has some deficiencies, but it's definitely on the right track.
Posted at Oct 15/2003 04:56 PM:
DKF: Too see more of what Joe's been playing with, go to http://tktable.sourceforge.net/tile/ and don't forget to drool!
Posted at Oct 15/2003 05:04 PM:
Steve Landers: Indeed! Keep up the great work Joe (and collaborators!)
Posted at Mar 10/2004 03:56 PM:
Peter da Silva: My thoughts on themes mirror jwz's (all the way down to his instant retribution technology), they belong at the OS (system wide) level, not the application. And the interfaces to system themes are system dependant.
In other words, I think "native look and feel" is a red herring. What you really need is "native widgets", as much as possible, and if that requires changing the API to deal with missing widgets, then that's the thing to do. I will give up multi-line buttons and the fine details of menu posting if that's what it takes to get a native interface.