discuss-gnustep
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Gnustep gui and win32 visual styles (theme)


From: Nicolas Roard
Subject: Re: Gnustep gui and win32 visual styles (theme)
Date: Thu, 24 Nov 2005 20:22:29 +0000



On 11/24/05, Michael Hanni <mhanni@yahoo.com> wrote:
Folks,

--- Nicolas Roard <nicolas.roard@gmail.com> wrote:

> So when it's done, you can either 1) use the pixmap theme engine to
> create a "windows theme" using pixmaps -- easy and quick, but as
> explained, not perfect -- you can even already start, just grab
> Camaelon and create a theme ! 2) create your own theme engine using
> the extended GSDrawFunctions api, that will use the Windows theme api
> for the drawing -- ideal.

Follow GTK-WIMP here... They extended the GTK+ pixmap theme to use the Windows
drawing functions to draw the relevant pixmaps on the fly. (I believe there is
a gtk+ theme that does this with QT as well.) It looks quite close to the real
thing.


Yes, that's exactly what I'm proposing -- implement a GTK-WIMP-like simply by proviging a GSDrawFunctions subclass -- that's exactly its role (or will be).

The one problem here, as others have mentioned with GTK-WIMP, is that the
resulting app looks like Windows but a lot of the feel is wrong -- i.e. button
order is wrong, buttons are too big, too small. I think this is where we have a
big hand up with Gorm. You simply load up the gorm file you created on Linux in
windows with Gorm + WinTheme and modify the gorm file to fit the windows HIG.
NeXT knew this back in the day and provided a MyApp-windows.nib (or something
along those lines) with new apps.

Hell, you could have a MyApp-pda.gorm and a MyApp-gnome.gorm (that uses the
GNOME HIG), whatever. Gorm is cool like that.


Indeed, we should have, in addition to the current language-selector, an "environment" defaults to select the right .gorm

Aie, this is really not hard. Take WildMenus, sprinkle in some updates and some
love, and you can have a horizontal menu in a window. Take a look at
http://u.cc.utah.edu/~msh3/xmas_surprise.png for what I had working last year
after a day of hacking. The biggest issue is this: how do you determine which
windows get a menu bar in them?

The first obvious idea is to put the menu in all the NSWindow but not in the NSPanel.. But ideally, we should have an ivar in NSWindow to set if it accept menu or not, and set that ivar in Gorm. Greg.. ?

If someone wants to pick up the WildMenus code, clean it, love it, and make
this happen I'd be happy to provide input along the way.

You should release the menu-in-windows hack as it is :-)

--
Nicolas Roard
"Any sufficiently advanced technology is indistinguishable from magic."
  -Arthur C. Clarke
reply via email to

[Prev in Thread] Current Thread [Next in Thread]