[Mono-devel-list] advice on portable UI coding
Philip Van Hoof
spamfrommailing at freax.org
Mon Sep 1 04:53:30 EDT 2003
> We started SWF with GTK, but realized to get good compatibility,
> we needed to use Wine instead.
> The GTK branch is still there, some brave soul took it back up a
> few months ago. Maybe they gave up. Anyway, assume it will never be up
> to what you need.
Hi there, I am one of those brave-souls,
Well... we have not gave up :) but because I have had a few very busy months
not much work has been done yet (I found myself a new Job and stuff like
At this moment it's already possible to have SWF-Forms with menus,
statusbars, labels, buttons, images, lists, comboboxes, scrollbars and
progressbars. You can also set properties like the backgroundcolor and stuff
like that. But the big massive amount of work has not yet started (that is,
mapping and porting the less-fun SWF-components). You can check-out the
demos as if those are a Prove-Of-Concept. They will both run with a native
widget-set on Windows and on GTK+ (Linux).
So basically .. The idea has been build and a few SWF-components are build
upon that idea to check if our idea will fit the reality.
However, it's true that you will never get a 100% compatible GUI when trying
to map SWF to native GTK+. Loads and loads of properties and "little things"
will not work and cannot work unless loads and loads of modifications will
be made to GTK+...
But then again, it's fun to map non-compatible widgetsets ;-)
To demonstrate difficulties that we encounter: A SWF-button is a Container
and can embed multiple other widgets (like Images, labels and other stuff).
A GtkButton can only embed a GtkLabel-widget. Using Gtk-Sharp it is afaik
not yet possible to replace this GtkLabel-widget with for example a GtkHBox
or a GtkContainer or ... So you will have to fallback on the plain C gtk-API
for this feature to be compatible with the SWF-button. -yes, its fun :) but
not always easy-.
Philip Van Hoof, Software Developer at Cronos
home: me at freax dot be
work: Philip dot VanHoof at Cronos dot Be
More information about the Mono-devel-list