Need Help Selecting a GUI

B

Bill Atkins

As anyone can tell by looking at the topics of my recent posts, I'm
having trouble picking a Ruby GUI to use for a project. Here are some
of the toolkits I'm considering and the pros and cons of each. My
project, by the way, is a simple open-source, instant messaging client
that would have to work on Windows and NIX systems.

1. Tk
pros: comes with Ruby; pretty much everywhere; powerful TkText widget
cons: messy, mostly undocumented API; unconventional appearance;
requires tcl; no tree control; it's Tk :)

2. FOX
pros: consistent and attractive appearance; very OO
cons: no substitute for TkText - FXScintilla might do the trick, but
it's API is a lot more complicated than TkText; somewhat C++-ish API;
FxTreeList doesn't allow setting styles for individual items

3. Qt
pros: supposed to be really nice
cons: costs money on Win32 - out of the question

4. Gtk
pros: plenty of widgets; antialiasing
cons: supposed to be unstable on Win32; requires large download on
Win32 machines; X-ish interface

5. Wx
pros: well-designed Rubyish API; supports changing tree item styles;
seems pretty stable for a young project; native widgets
cons: brand new - could have problems; on Linux, requires a large
download (wxGTK) in order to work (6MB)

Wx would be my choice except that it requires such a large download on
Linux. I would really prefer that the user download as little as
possible, aside from Ruby itself. Considering that my project's
source will be under 300K, it seems silly to require large GUI
downloads just to make it work.

Also, antialiased fonts would be extremely nice, but no toolkit seems
to support them, except Gtk (right?) which I can't use because of the
large Win32 dependencies.

Any thoughts on these?

Bill
 
R

Rich

The FXScintilla Widget is a beast (like the docs say), but I'm as beginner
of a prgrammer as you can get (I know that's not gramatically correct) - and
I was able to figure it out.

-Rich

----- Original Message -----
From: "Bill Atkins" <[email protected]>
Newsgroups: comp.lang.ruby
To: "ruby-talk ML" <[email protected]>
Sent: Saturday, May 15, 2004 7:18 AM
Subject: Need Help Selecting a GUI
 
S

Simon Strandgaard

Wx would be my choice except that it requires such a large download on
Linux. I would really prefer that the user download as little as
possible, aside from Ruby itself. Considering that my project's
source will be under 300K, it seems silly to require large GUI
downloads just to make it work.

Also, antialiased fonts would be extremely nice, but no toolkit seems
to support them, except Gtk (right?) which I can't use because of the
large Win32 dependencies.

Any thoughts on these?

I have comed to pretty much the same conclusions... I am seriously
considering making multiple frontends for my aeditor project.

So on unix it supports: gtk or qt.. (havn't decided 100% yet)
on windows: windows native widget set
on mac: cocoa?

Lots of hard work, in order to get antialiasing and i18n. It seems
as XUL+ruby is still too far away.
 
J

Jamis Buck

Bill said:
Wx would be my choice except that it requires such a large download on
Linux. I would really prefer that the user download as little as
possible, aside from Ruby itself. Considering that my project's
source will be under 300K, it seems silly to require large GUI
downloads just to make it work.

I once started a project that used nothing more than Ruby/DL, and drew
its own widgets onto whatever windowing API was available (X, Gtk,
Win32, etc.). Didn't get very far, but I'm beginning to realize that
there may be a lot of value in a cross-platform "pure Ruby" windowing
toolkit.

Does anyone else see any value there? Has anyone else ever attempted this?

- Jamis

--
Jamis Buck
(e-mail address removed)
http://www.jamisbuck.org/jamis

ruby -h | ruby -e
'a=[];readlines.join.scan(/-(.)\[e|Kk(\S*)|le.l(..)e|#!(\S*)/) {|r| a <<
r.compact.first };puts "\n>#{a.join(%q/ /)}<\n\n"'
 
P

Phil Tomson

As anyone can tell by looking at the topics of my recent posts, I'm
having trouble picking a Ruby GUI to use for a project. Here are some
of the toolkits I'm considering and the pros and cons of each. My
project, by the way, is a simple open-source, instant messaging client
that would have to work on Windows and NIX systems.

1. Tk
pros: comes with Ruby; pretty much everywhere; powerful TkText widget
cons: messy, mostly undocumented API; unconventional appearance;
requires tcl; no tree control; it's Tk :)

2. FOX
pros: consistent and attractive appearance; very OO
cons: no substitute for TkText - FXScintilla might do the trick, but
it's API is a lot more complicated than TkText; somewhat C++-ish API;
FxTreeList doesn't allow setting styles for individual items

3. Qt
pros: supposed to be really nice
cons: costs money on Win32 - out of the question

4. Gtk
pros: plenty of widgets; antialiasing
cons: supposed to be unstable on Win32; requires large download on
Win32 machines; X-ish interface

5. Wx
pros: well-designed Rubyish API; supports changing tree item styles;
seems pretty stable for a young project; native widgets
cons: brand new - could have problems; on Linux, requires a large
download (wxGTK) in order to work (6MB)

Wx would be my choice except that it requires such a large download on
Linux. I would really prefer that the user download as little as
possible, aside from Ruby itself. Considering that my project's
source will be under 300K, it seems silly to require large GUI
downloads just to make it work.

Also, antialiased fonts would be extremely nice, but no toolkit seems
to support them, except Gtk (right?) which I can't use because of the
large Win32 dependencies.

Any thoughts on these?

FLTK? The FLTK shared lib and ruby bindings are smaller than 1MB.

Problem is that it's still not released 'into the wild' (at least the
source code for the bindings, that is). On Monday I'll try to remember to
see if there has been any progress on that front.

Phil
 
A

Ara.T.Howard

As anyone can tell by looking at the topics of my recent posts, I'm
having trouble picking a Ruby GUI to use for a project. Here are some
of the toolkits I'm considering and the pros and cons of each. My
project, by the way, is a simple open-source, instant messaging client
that would have to work on Windows and NIX systems.

1. Tk
pros: comes with Ruby; pretty much everywhere; powerful TkText widget
cons: messy, mostly undocumented API; unconventional appearance;
requires tcl; no tree control; it's Tk :)

2. FOX
pros: consistent and attractive appearance; very OO
cons: no substitute for TkText - FXScintilla might do the trick, but
it's API is a lot more complicated than TkText; somewhat C++-ish API;
FxTreeList doesn't allow setting styles for individual items

3. Qt
pros: supposed to be really nice
cons: costs money on Win32 - out of the question

4. Gtk
pros: plenty of widgets; antialiasing
cons: supposed to be unstable on Win32; requires large download on
Win32 machines; X-ish interface

5. Wx
pros: well-designed Rubyish API; supports changing tree item styles;
seems pretty stable for a young project; native widgets
cons: brand new - could have problems; on Linux, requires a large
download (wxGTK) in order to work (6MB)


6. webrick + native browser
you're program spawns a webserver (fork or popen) and then spanws a browser
pointing at it. the webrick server IS the ui.

pros: works on *nix, windoze, mac. familiar ui. extremely quick to code.
cons: limiting ui (but what do you really need for an im client?)


just something to consider - i had managed to make this work in 30 lines of
code or so a while back - now i can't seem to find it, but it's pretty
straightword:

url = start_server

require 'rbconfig'
case platform
when /*nix/
start_nix_client url
when /windoze/
start_windoze_client url
when /mac/
start_mac_client url
end

-a
--
===============================================================================
| EMAIL :: Ara [dot] T [dot] Howard [at] noaa [dot] gov
| PHONE :: 303.497.6469
| ADDRESS :: E/GC2 325 Broadway, Boulder, CO 80305-3328
| URL :: http://www.ngdc.noaa.gov/stp/
| TRY :: for l in ruby perl;do $l -e "print \"\x3a\x2d\x29\x0a\"";done
===============================================================================
 
R

Robert Feldt

Jamis said:
I once started a project that used nothing more than Ruby/DL, and drew
its own widgets onto whatever windowing API was available (X, Gtk,
Win32, etc.). Didn't get very far, but I'm beginning to realize that
there may be a lot of value in a cross-platform "pure Ruby" windowing
toolkit.

Does anyone else see any value there? Has anyone else ever attempted
this?
One of my students has done a prototype for a pure-Ruby GUI framework
using OpenGL as the back-end. She is finishing up now and the report
should be available in 2-3 weeks. Even though she hasn't focused on it
being pretty I think it's a "doable" approach and gives lots of freedom.

Based on her prototype I'd like to get a releasable version 0.1
together, see if there is some interest in it and if it can evolve from
there. I have early vacation this year but when I'm back (late June)
I'll try to get a tarball together if there is any interest.

Regards,

Robert
 
P

Phil Tomson

One of my students has done a prototype for a pure-Ruby GUI framework
using OpenGL as the back-end. She is finishing up now and the report
should be available in 2-3 weeks. Even though she hasn't focused on it
being pretty I think it's a "doable" approach and gives lots of freedom.

Based on her prototype I'd like to get a releasable version 0.1
together, see if there is some interest in it and if it can evolve from
there. I have early vacation this year but when I'm back (late June)
I'll try to get a tarball together if there is any interest.

I'd be interested in looking at it and I think I may actually have some
time in late June...

Phil
 
M

Mohammad Khan

First, I was going to reply from the original message of this thread that
was sent by 'Bill Atkins'. My Outlook Express was saying 'A program is
trying to access e-mail addresses you have stored in Outlook' !!


Couple of days back, I posted a similar message.
I liked Fox a lot. Its very much Object Oriented.

But I was surprised this morning when I went to the official website of Fox
http://www.fox-toolkit.org and found 'Coming Soon' By godaddy !!!


Mohammad
"Good artist borrow idea from others and great artist steal it !"



----- Original Message -----
From: "Rich" <[email protected]>
To: "ruby-talk ML" <[email protected]>
Sent: Saturday, May 15, 2004 10:06 AM
Subject: Re: Need Help Selecting a GUI
 
J

Jamey Cribbs

I think jeroen is in the process of changing providers or
something...for now, try http://www.fox-toolkit.com.

Jamey

Mohammad said:
First, I was going to reply from the original message of this thread that
was sent by 'Bill Atkins'. My Outlook Express was saying 'A program is
trying to access e-mail addresses you have stored in Outlook' !!


Couple of days back, I posted a similar message.
I liked Fox a lot. Its very much Object Oriented.

But I was surprised this morning when I went to the official website of Fox
http://www.fox-toolkit.org and found 'Coming Soon' By godaddy !!!


Mohammad
"Good artist borrow idea from others and great artist steal it !"



----- Original Message -----
From: "Rich" <[email protected]>
To: "ruby-talk ML" <[email protected]>
Sent: Saturday, May 15, 2004 10:06 AM
Subject: Re: Need Help Selecting a GUI


Confidentiality Notice: This email message, including any attachments, is for the sole use of the intended recipient(s) and may contain confidential and/or privileged information. If you are not the intended recipient(s), you are hereby notified that any dissemination, unauthorized review, use, disclosure or distribution of this email and any materials contained in any attachments is prohibited. If you receive this message in error, or are not the intended recipient(s), please immediately notify the sender by email and destroy all copies of the original message, including attachments.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,769
Messages
2,569,581
Members
45,056
Latest member
GlycogenSupporthealth

Latest Threads

Top