
On Thu, Sep 29, 2005 at 11:37:15AM +0200, Brian Ravnsgaard Riis <brian@riis.as> wrote:
The Windows GUI behaves slightly different than
GNOME, and there are quite large differences to OSX from either.
Thats interesting and useful stuff. Would it be possible to enumerate some of the differences? Personally I would like to have a uniform behaviour of a C++ GUI across platforms if possible.
I wouldn't. If I am on a Windows box, I want the look-n-feel of a program to be that of any other Windows program. The normal layout of a window should apply, and the Windows shortcuts should work, e.g. being able to start editing any textcontrol by pressing F2. On GNOME I would expect an app to behave like other GNOME programs. OSX differs from the other platforms in many ways, because Apple's Style Guide suggests different layouts.
Then you have to use a different library for each plattform. I claim that it is impossible to write a library which is able to refactor your layouts keybindings and more. You also forgot to mention that each plattform has a different set of widgets, or similar widgets with different features. Either you hide features that arent available on every plattform, or you reimplement missing ones, which might be impossible. You can look at wxWidgets for some examples. Maybe your library is implementable on a much higher level, as a sort of code generation tool that manages the applications data model and provides plattform dependent views on the data. I think that we should drop the wrapper idea for now. There are many applications on Windows, OSX and linux, that do not follow the native look and feel, if something like that exists at all. All devs not happy with that situation should work on and with wxWidgets, until that library is really portable and useable on all plattforms it claims to support. Regards Andreas Pokorny