Ruby GUI recommendations?


#1

Which GUI lib is the best and which is the most widely used ?
(Necessarily not the same :slight_smile: )
I’m using Win XP.

I’ve tried wxRuby so far, but would like to get some overview what’s
available before deciding where to put the efforts.

I would prefer a good minimal OO API, with documentation.

Christer


#2

On 12/12/05, Christer N. removed_email_address@domain.invalid wrote:

Which GUI lib is the best and which is the most widely used ?
(Necessarily not the same :slight_smile: )
I’m using Win XP.

I’ve tried wxRuby so far, but would like to get some overview what’s
available before deciding where to put the efforts.

I would prefer a good minimal OO API, with documentation.

Depending on your needs, a RubyOnRails application packaged up as an
.exe may be your best bet.

That’s the way I’d go (if possible).


#3

On Monday 12 December 2005 08:29 pm, Christer N. wrote:

Which GUI lib is the best and which is the most widely used ?
(Necessarily not the same :slight_smile: )
I’m using Win XP.

I’ve tried wxRuby so far, but would like to get some overview what’s
available before deciding where to put the efforts.

I would prefer a good minimal OO API, with documentation.

Christer

Here are comparisons between available toolkits.

–ruby-gtk2
The most complete and stable toolkit you’ll find with the better ruby
bindings
UTF8 support
API finished
very complete documentation
works on windows, unix, and mac
GUI designer available, Glade2 (link below shows link to glade for
windows)
http://ruby-gnome2.sourceforge.jp/hiki.cgi?Install+Guide+for+Windows

–qtruby
works very well, stable API, complete…
unfortunately qtruby/4 is not on windows yet.
UTF8 support
very complete documentation
GUI designer available, qt designer
Native widgets on each platform
no windows install doc

–wxruby2
bindings not complete to ruby, missing classes and methods
works if you want to use just the basic widgets
UTF8 support however
Native widgets on each platform

–fxruby
well… :frowning: Its a okay toolkit if you use what fxruby stable is
lacks UTF8 support
the API is not stable, things change often. not fxruby’s fault, its a
FOX
toolkit development problem.
draws its own widgets
fox doesn’t contain all the widgets other toolkits have like gtk

–tk
very complete, comlplete APIs, everything
bindings are included with ruby, but I don’t think the curt’s ruby
installer
has the tk runtime.

You might want to consider ruby-gtk2, its pretty straight forward and
simple.
qtruby/4 is almost there.

Tsume


#4

removed_email_address@domain.invalid wrote:

Christer
http://ruby-gnome2.sourceforge.jp/hiki.cgi?Install+Guide+for+Windows
–wxruby2
draws its own widgets

Tsume

this guy likes gtk2 too (in French)
http://www.bawet.org/article.php3?id_article=60


#5

removed_email_address@domain.invalid wrote:

–ruby-gtk2
–qtruby
–wxruby2
–fxruby
–tk

What are people’s experience with packaging applications made with
these toolkits using Rubyscript2exe? I’ve done so with wxruby, so I
know that works, how about the others, is it easy to get the required
files included so the client doesn’t have to install the toolkit
before running the application?


#6

tk works as well, though i think tk works in a somewhat silly way…

2005/12/13, Terje T. removed_email_address@domain.invalid:


#7

–ruby-gtk2

What are people’s experience with packaging applications made with
these toolkits using Rubyscript2exe?

i just spent the last few hours trying this out. the install was
relatively painless. i was suprised at how easy it was to get gui code
up and running.

rubyscript2exe created the exe, but an end user would need gtk
installed. i wasn’t able to figure out all the dll’s what would need
to be distributed with an app or even if that’s possible…i’m
guessing that’s why the gaim installer fires up the gtk installer :slight_smile:

it would be nice if there was an ‘allinone’ gtk.dll that you could
distribute with ruby-gtk2 apps…

and debugging with arachnoruby worked as smoothly as i thought it would

i like it enough to stick with it…


#8

rubyscript2exe created the exe, but an end user would need
gtk installed. i wasn’t able to figure out all the dll’s what
would need to be distributed with an app or even if that’s
possible…i’m guessing that’s why the gaim installer fires
up the gtk installer :slight_smile:

A quick guess of the required DLL’s, by analyzing the contents
of ruby-gtk2-0.14.1-1-i386-msvcrt-1.zip:

$ strings $(find -name ‘*.so’) | grep -wie dll | sort | uniq
intl.dll
KERNEL32.dll
libatk-1.0-0.dll
libcairo-2.dll
libgdkglext-win32-1.0-0.dll
libgdk_pixbuf-2.0-0.dll
libgdk-win32-2.0-0.dll
libglade-2.0-0.dll
libglib-2.0-0.dll
libgmodule-2.0-0.dll
libgobject-2.0-0.dll
libgtkglext-win32-1.0-0.dll
libgtk-win32-2.0-0.dll
libpango-1.0-0.dll
libpangocairo-1.0-0.dll
MSVCR71.dll
msvcrt.dll
msvcrt-ruby18.dll

Skip the (default) Windows DLLS’s and you end up with this:

RUBYSCRIPT2EXE_DLLS = []
RUBYSCRIPT2EXE_DLLS << “libatk-1.0-0.dll”
RUBYSCRIPT2EXE_DLLS << “libcairo-2.dll”
RUBYSCRIPT2EXE_DLLS << “libgdkglext-win32-1.0-0.dll”
RUBYSCRIPT2EXE_DLLS << “libgdk_pixbuf-2.0-0.dll”
RUBYSCRIPT2EXE_DLLS << “libgdk-win32-2.0-0.dll”
RUBYSCRIPT2EXE_DLLS << “libglade-2.0-0.dll”
RUBYSCRIPT2EXE_DLLS << “libglib-2.0-0.dll”
RUBYSCRIPT2EXE_DLLS << “libgmodule-2.0-0.dll”
RUBYSCRIPT2EXE_DLLS << “libgobject-2.0-0.dll”
RUBYSCRIPT2EXE_DLLS << “libgtkglext-win32-1.0-0.dll”
RUBYSCRIPT2EXE_DLLS << “libgtk-win32-2.0-0.dll”
RUBYSCRIPT2EXE_DLLS << “libpango-1.0-0.dll”
RUBYSCRIPT2EXE_DLLS << “libpangocairo-1.0-0.dll”

I can’t test it…

gegroet,
Erik V. - http://www.erikveen.dds.nl/


#9

Erik V. wrote on 12/13/2005 4:12 PM:

Skip the (default) Windows DLLS’s and you end up with this:

and add: libgtjread-2.0-…dll
libfontconfig-1.0.dll
xmlparse.dll
xmltok.dll
libfreetype-6.dll
libpng13.dll
libpangowin32-1.0-0.dll

and then i get a:

Pango-ERROR **:file …/…/…/pango/pango/shape.c: line 75
(pango_shape): assertion failed: (glyphs->num_glyphs>0) aborting…

which was when i posted my message :slight_smile:


#10

Pango-ERROR **:file …/…/…/pango/pango/shape.c: line 75
(pango_shape): assertion failed: (glyphs-> num_glyphs> 0)
aborting…

It obviously needs more than just the DLL’s. For TK, I included
a lot more than just the DLL’s, and it works. We could do the
same with GTK.

I’ll investigate it. I have no experience with Ruby-GTK, so I
might need some help. I’ll shout…

gegroet,
Erik V. - http://www.erikveen.dds.nl/


#11

Erik V. wrote on 12/15/2005 3:57 PM:

It obviously needs more than just the DLL’s. For TK, I included
a lot more than just the DLL’s,

yeah, with tk you’d probably need the package info, etc.

and it works. We could do the
same with GTK.

I’ll investigate it. I have no experience with Ruby-GTK, so I
might need some help. I’ll shout…

i’ve been doing trial and error but no luck so far…