Julian Raschke
8/15/2007 10:05:00 PM
Hi,
> I am curious, what is used internally to generate windows? Tk? wx? Qt?
> It would be nice to see a deeper tutorial. Specifically, since GUI
> stuff can be so different on an OS.
Gosu uses each system's (sort-of) native API: Cocoa, Win32 or X11,
respectively. I am not afraid of dependencies, however getting the
higher-level libraries to work seamlessly on every OS would be harder
than it was to write the windowing code from scratch.
In Ruby/Gosu, only Gosu::Window is available and all its features are
already shown in the tutorial, except button_up. What will come are
basic features needed for in-game, non-native UI (facilities for text
input, maybe support for multiple windows). A toolkit for such in-game
UI will however never be part of Gosu, as it contains endless
complexity and many very personal design choices. It may be released
as an add-on library though, as a side-effect of other Gosu projects.
Also, if there were a de-facto standard Ruby GUI toolkit, I could be
convinced to write glue to integrate Gosu with it.
> The window opened on OS X by the demo had only one item in the menu
> bar at the top of the OS X desktop. That item was Ruby, and it was
> clickable/highlightable, but no menu, no options.
This is because it is actually a bit hackish on OS X to have a command-
line program accept keyboard and mouse input, and the weird dock item
and menu bar are a side effect of this. Running Ruby scripts directly
is fine for development - for deployment the wrapper .app bundle from
the Mac package should be used, as it provides a real menu bar. (Some
more polish on this is planned).
Thanks for the kind feedback!
Julian