Hi Deech,
the trick is that there is no code involved!
Graphos, for example is perfectly native on Mac, the same is true for
Grr and GShisen.
The way this is accomplished is that there are
* two different "projects" one for ProjecectCenter (with makefiles) and
one for XCode
* two different interface sets: Gorm files and NIB files (this is not
necessary for apps which do not use interface files but code the
interface. Also you can use NIBs in GNustep but they don't look perfect
and native, so this is the most expensive but most "perfect" approach)
* the code base is about 100% the same. The small differences are
handled with #ifdefs in the applications which need that
The effect is that when you build on Mac you build with Xcode and have a
true mac app.
On Linux and Windows, your application will have the default GNUstep
theme (which essentially matches WindowMaker)
To make the GNUstep application feel at home in Windows or GNOME (or
other environments) you need a Theme. Currently themes for Windows and
GNOME are work in progress.
These themes handle the native bits for all applications and they are
not needed in the application.
Riccardo
On 07/15/11 17:03, aditya siram wrote:
I am interested in GNUStep mainly as cross-platform toolkit that looks
good on Windows, Linux (Gnome and WindowMaker) and Mac.
In order to find examples of a single code-base using different themes
I have downloaded the source for a number of cross-platform
applications:
GraphOS, Grr, GShisen, Gemas
However it is not apparent to me where to look for the code that deals
with different platforms. For example how would I build an executable
for Windows or Gnome using the source? I would appreciate if someone
could point me to a file in any of these application where is
different GUI behavior invoked based on platform.
Thanks for all your help.
-deech
_______________________________________________
Discuss-gnustep mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/discuss-gnustep