Mon, 12 Oct 2009 18:54:25 +0200, Jacob Carlborg thusly wrote: > On 10/12/09 14:11, language_fan wrote: >> Mon, 12 Oct 2009 14:02:11 +0200, Jacob Carlborg thusly wrote: >> >>> On 10/12/09 04:14, Chad J wrote: >>>> Too bad we can't just make programs switch between GUI backends at >>>> will ;) >>> >>> Why not have a GUI toolkit available on almost all platforms that uses >>> native controls just like DWT? >> >> The list of native platforms SWT supports is this: >> >> Win32 >> WPF (under development) >> AIX, FreeBSD, Linux, HP-UX, Solaris: >> Motif >> GTK+ >> Mac OS X: >> Carbon >> Cocoa >> QNX Photon >> Pocket PC >> >> As a FLTK2, Qt 3.x, Qt 4.x, Swing, and (forked) Harmonia user I fail to >> see how SWT is more native than the ones I develop for. All SWT >> applications look weird, unthemed, and have horrible usability issues >> in the file open/save dialogs. DWT brings another level of cruft above >> the "lightweight" SWT and performs badly. > > As a said previously SWT is more native because it uses the native GUI > library available on the current platform, for windows (before vista) > win32, osx cocoa and on linux gtk. It doesn't decide how a button should > look, it doesn't try do draw a button that is similar to the natives, it > just call the native library to draw the button.
The problem is, 99% of win32 users use the win32 gui toolkit on win32, 99% of osx users use cocoa, but on Linux/BSD maybe about 40% use gtk+. It is not The native toolkit to use. I do not even have it installed on my system. > I don't know what you mean by "unthemed" but if you refer to that > applications on windows don't get the winxp look you have the same > problem if you create the application in c++ or c and uses win32. It's > caused by an older dll is loaded as default and to get the winxp look > you have to request it to load the newer dll with a manifest file. > Welcome to dlls. I mostly work on *nixen. The unthemed means that I do not have *any* gtk+ libraries installed anywhere so it defaults to the ugly default theme. To me gtk+ does not have the native feel as I never see any application written in it. Like I said, I only use { FLTK2, Qt 3.x, Qt 4.x, Swing, and (forked) Harmonia}. I am sorry if you have trouble reading that. Whenever an application comes with its own (statically linked) gtk+ libs, it will look bad. I do not have any "control panel" to change the look and feel of the gtk+ applications. > > If you have problems with the open/save dialogs in SWT either you will > have the same problem in other native applications because it uses the > native dialogs or there's a bug in SWT. Look, this is what I get on Win32: http://johnbokma.com/textpad/select-a-file-dialog.png on Linux: http://www.matusiak.eu/numerodix/blog/wp-content/uploads/20050710- kdefilechooser.png on Java: http://www.dil.univ-mrs.fr/~garreta/docJava/tutorial/figures/uiswing/ components/FileChooserOpenMetal.png You can probably see something that I have started to call 'consistency'. Almost the same buttons and layouts on every platform. I immediately know how it works. The same design has been there since Windows 95, if I recall correctly. This is what many people have learned to live with. Now every time I see a gtk+/swt/dwt application I wonder where the heck that unintuitive terrible piece of cr*p came: http://book.javanb.com/swt-the-standard-widget-toolkit/images/0321256638/ graphics/14fig03.gif Native? It might very well use native binaries on my platform, but the native feel ends there.