[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

comp.lang.ruby

wxRuby and other GUI toolkits

Nick

12/14/2004 2:54:00 PM


So, having subscribed recently to the ruby-talk mailing list, I've
noticed that wxruby doesn't seem to have the "respect" of other GUI
libraries. I know GUI-library preference is a holy war almost up there
with vi versus emacs, but since I'm a wxruby developer, I'd like to know
what people "don't" like about wxruby. Otherwise, how else do we improve?

Browsing online, I've found a few complaints:

Difficulty in getting it installed - Daniel Sheppard,
http://www.jroller.com/pa...
Use of ugly integer values for event handlers -
http://homepages.ihug.com.au/~nase...

It's a good start (though I don't know what platform Mr. Sheppard is
trying to install on), but any other discussion would be most helpful.

Thanks,

Nick


23 Answers

Shashank Date

12/14/2004 5:20:00 PM

0

Welcome, Nick !

--- Nick <devel@nicreations.com> wrote:

> So, having subscribed recently to the ruby-talk
> mailing list, I've
> noticed that wxruby doesn't seem to have the
> "respect" of other GUI
> libraries.

And that will change, now that you are here ;-)

Seriously, having one of the core developers on this
ML helps a lot ... I can vouche for that based on my
experience with FxRuby. Lyle Johnson's stupendous
presence here increases the comfort level by two
orders of magnitude.

> I know GUI-library preference is a holy
> war almost up there
> with vi versus emacs, but since I'm a wxruby
> developer, I'd like to know
> what people "don't" like about wxruby. Otherwise,
> how else do we improve?

Now, that I have written a full blown (but tiny)
commercial app in wxRuby, I can say that one area
which we (almost always) can improve upon is
documentation and sample code. I will gladly
contribute on both fronts.

> Browsing online, I've found a few complaints:
>
> Difficulty in getting it installed - Daniel
> Sheppard,
> http://www.jroller.com/pa...

This situation has improved a lot. Although, IMO, at
least on the Windows platform, I would like for it to
be optionally installed. I am aware that this would
add to the girth of the one-click installer, so it
could be an issue.

> Use of ugly integer values for event handlers -
> http://homepages.ihug.com.au/~nase...

Hmmm .. that did not bother me much. Isn't it an issue
with the other GUI's too ?

> It's a good start (though I don't know what platform
> Mr. Sheppard is
> trying to install on), but any other discussion
> would be most helpful.

I must mention here that the lack of
documentation/samples has been compensated by
all the help I get on the wxRuby mailing list.

Thank you !

> Thanks,
>
> Nick

-- shanko






__________________________________
Do you Yahoo!?
Yahoo! Mail - You care about security. So do we.
http://promotions.yahoo.co...


Craig Moran

12/14/2004 5:46:00 PM

0

I'm looking into wxRuby myself after looking at FXRuby and having
marginal success. I am a returning list member after being gone for
~1 year. Here is some sample code that works for me on Windows with
the One-Click Installer and wxRuby. FXRuby and Tk both had PigIt
examples in the sample directories, yet wxRuby didn't. This is my
first attempt at wxRuby, so feel free to slice and dice.
Warm Regards-
Craig

# This is a wxRuby version of Thomas and Hunt's timeless classic, Pig It!
# example (from the "Ruby/Tk" chapter of "Programming Ruby".)
# Implemented by Craig Moran

require 'wxruby'
include Wx

Button_Pig = 1
Button_Exit = 2

class PigFrame < Frame
def initialize
super(nil, -1, "Pig", Point.new(100, 100), Size.new(300, 130))
panel = Panel.new(self, -1)
sizer = BoxSizer.new(VERTICAL)
pigText = StaticText.new(panel, -1, "Enter text:", DEFAULT_POSITION)
sizer.add(pigText, 0, ALIGN_CENTER)
@text = TextCtrl.new(panel, -1, "", DEFAULT_POSITION,
DEFAULT_SIZE, TE_MULTILINE)
sizer.add(@text, 1, GROW|ALL, 2)
pigButton = Button.new(panel, Button_Pig, "Pig It!", DEFAULT_POSITION)
sizer.add(pigButton, 0, ALIGN_CENTER|ALL, 2)
exitButton = Button.new(panel, Button_Exit, "Exit", DEFAULT_POSITION)
sizer.add(exitButton, 0, ALIGN_CENTER|ALL, 2)
panel.set_sizer(sizer)
show(true)
evt_button(Button_Pig) {showPig}
evt_button(Button_Exit) {onExit}
end

def pig(word)
leadingCap = word =~ /^A-Z/
word.downcase!
res = case word
when /^aeiouy/
word+"way"
when /^([^aeiouy]+)(.*)/
$2+$1+"ay"
else
word
end
leadingCap ? res.capitalize : res
end

def showPig
@text.set_value(@text.get_value.split.collect{|w| pig(w)}.join(" "))
end

def onExit
close(true)
end
end

class PigApp < App
def on_init
PigFrame.new
end
end

PigApp.new.main_loop


On Wed, 15 Dec 2004 02:19:48 +0900, Shashank Date <shanko_date@yahoo.com> wrote:
> Welcome, Nick !
>
> --- Nick <devel@nicreations.com> wrote:
>
> > So, having subscribed recently to the ruby-talk
> > mailing list, I've
> > noticed that wxruby doesn't seem to have the
> > "respect" of other GUI
> > libraries.
>
> And that will change, now that you are here ;-)
>
> Seriously, having one of the core developers on this
> ML helps a lot ... I can vouche for that based on my
> experience with FxRuby. Lyle Johnson's stupendous
> presence here increases the comfort level by two
> orders of magnitude.
>
> > I know GUI-library preference is a holy
> > war almost up there
> > with vi versus emacs, but since I'm a wxruby
> > developer, I'd like to know
> > what people "don't" like about wxruby. Otherwise,
> > how else do we improve?
>
> Now, that I have written a full blown (but tiny)
> commercial app in wxRuby, I can say that one area
> which we (almost always) can improve upon is
> documentation and sample code. I will gladly
> contribute on both fronts.
>
> > Browsing online, I've found a few complaints:
> >
> > Difficulty in getting it installed - Daniel
> > Sheppard,
> > http://www.jroller.com/pa...
>
> This situation has improved a lot. Although, IMO, at
> least on the Windows platform, I would like for it to
> be optionally installed. I am aware that this would
> add to the girth of the one-click installer, so it
> could be an issue.
>
> > Use of ugly integer values for event handlers -
> > http://homepages.ihug.com.au/~nase...
>
> Hmmm .. that did not bother me much. Isn't it an issue
> with the other GUI's too ?
>
> > It's a good start (though I don't know what platform
> > Mr. Sheppard is
> > trying to install on), but any other discussion
> > would be most helpful.
>
> I must mention here that the lack of
> documentation/samples has been compensated by
> all the help I get on the wxRuby mailing list.
>
> Thank you !
>
> > Thanks,
> >
> > Nick
>
> -- shanko
>
>
> __________________________________
> Do you Yahoo!?
> Yahoo! Mail - You care about security. So do we.
> http://promotions.yahoo.co...
>
>


Nick

12/14/2004 5:59:00 PM

0


Thanks! I'll add that to the samples (worked on my Mac OS X box without
a hitch).

Nick

Craig Moran wrote:
> I'm looking into wxRuby myself after looking at FXRuby and having
> marginal success. I am a returning list member after being gone for
> ~1 year. Here is some sample code that works for me on Windows with
> the One-Click Installer and wxRuby. FXRuby and Tk both had PigIt
> examples in the sample directories, yet wxRuby didn't. This is my
> first attempt at wxRuby, so feel free to slice and dice.
> Warm Regards-
> Craig
>
> # This is a wxRuby version of Thomas and Hunt's timeless classic, Pig It!
> # example (from the "Ruby/Tk" chapter of "Programming Ruby".)
> # Implemented by Craig Moran
>
> require 'wxruby'
> include Wx
>
> Button_Pig = 1
> Button_Exit = 2
>
> class PigFrame < Frame
> def initialize
> super(nil, -1, "Pig", Point.new(100, 100), Size.new(300, 130))
> panel = Panel.new(self, -1)
> sizer = BoxSizer.new(VERTICAL)
> pigText = StaticText.new(panel, -1, "Enter text:", DEFAULT_POSITION)
> sizer.add(pigText, 0, ALIGN_CENTER)
> @text = TextCtrl.new(panel, -1, "", DEFAULT_POSITION,
> DEFAULT_SIZE, TE_MULTILINE)
> sizer.add(@text, 1, GROW|ALL, 2)
> pigButton = Button.new(panel, Button_Pig, "Pig It!", DEFAULT_POSITION)
> sizer.add(pigButton, 0, ALIGN_CENTER|ALL, 2)
> exitButton = Button.new(panel, Button_Exit, "Exit", DEFAULT_POSITION)
> sizer.add(exitButton, 0, ALIGN_CENTER|ALL, 2)
> panel.set_sizer(sizer)
> show(true)
> evt_button(Button_Pig) {showPig}
> evt_button(Button_Exit) {onExit}
> end
>
> def pig(word)
> leadingCap = word =~ /^A-Z/
> word.downcase!
> res = case word
> when /^aeiouy/
> word+"way"
> when /^([^aeiouy]+)(.*)/
> $2+$1+"ay"
> else
> word
> end
> leadingCap ? res.capitalize : res
> end
>
> def showPig
> @text.set_value(@text.get_value.split.collect{|w| pig(w)}.join(" "))
> end
>
> def onExit
> close(true)
> end
> end
>
> class PigApp < App
> def on_init
> PigFrame.new
> end
> end
>
> PigApp.new.main_loop
>
>
> On Wed, 15 Dec 2004 02:19:48 +0900, Shashank Date <shanko_date@yahoo.com> wrote:
>
>>Welcome, Nick !
>>
>>--- Nick <devel@nicreations.com> wrote:
>>
>>
>>>So, having subscribed recently to the ruby-talk
>>>mailing list, I've
>>>noticed that wxruby doesn't seem to have the
>>>"respect" of other GUI
>>>libraries.
>>
>>And that will change, now that you are here ;-)
>>
>>Seriously, having one of the core developers on this
>>ML helps a lot ... I can vouche for that based on my
>>experience with FxRuby. Lyle Johnson's stupendous
>>presence here increases the comfort level by two
>>orders of magnitude.
>>
>>
>>>I know GUI-library preference is a holy
>>>war almost up there
>>>with vi versus emacs, but since I'm a wxruby
>>>developer, I'd like to know
>>>what people "don't" like about wxruby. Otherwise,
>>>how else do we improve?
>>
>>Now, that I have written a full blown (but tiny)
>>commercial app in wxRuby, I can say that one area
>>which we (almost always) can improve upon is
>>documentation and sample code. I will gladly
>>contribute on both fronts.
>>
>>
>>>Browsing online, I've found a few complaints:
>>>
>>>Difficulty in getting it installed - Daniel
>>>Sheppard,
>>>http://www.jroller.com/pa...
>>
>>This situation has improved a lot. Although, IMO, at
>>least on the Windows platform, I would like for it to
>>be optionally installed. I am aware that this would
>>add to the girth of the one-click installer, so it
>>could be an issue.
>>
>>
>>>Use of ugly integer values for event handlers -
>>>http://homepages.ihug.com.au/~nase...
>>
>>Hmmm .. that did not bother me much. Isn't it an issue
>>with the other GUI's too ?
>>
>>
>>>It's a good start (though I don't know what platform
>>>Mr. Sheppard is
>>>trying to install on), but any other discussion
>>>would be most helpful.
>>
>>I must mention here that the lack of
>>documentation/samples has been compensated by
>>all the help I get on the wxRuby mailing list.
>>
>>Thank you !
>>
>>
>>>Thanks,
>>>
>>>Nick
>>
>>-- shanko
>>
>>
>>__________________________________
>>Do you Yahoo!?
>>Yahoo! Mail - You care about security. So do we.
>>http://promotions.yahoo.co...
>>
>>
>
>
>
>
>



Erik Veenstra

12/14/2004 6:47:00 PM

0

On Wed, 15 Dec 2004 02:45:31 +0900, Craig Moran wrote:

> I'm looking into wxRuby myself after looking at FXRuby and
> having marginal success. I am a returning list member after
> being gone for ~1 year. Here is some sample code that works
> for me on Windows with the One-Click Installer and wxRuby.
> FXRuby and Tk both had PigIt examples in the sample
> directories, yet wxRuby didn't. This is my first attempt at
> wxRuby, so feel free to slice and dice. Warm Regards- Craig

Works on Linux with Ruby 1.8.1.

gegroet,
Erik V.

Its Me

12/14/2004 6:47:00 PM

0

Any chance you could provide a simplified interface along the lines
discussed at length in

http://groups-beta.google.com/group/comp.lang.ruby/messages/36fe4224ced792ff,7824fe1d05b4f648,ffa0c9b33be25877,453e05fefa6610b4,79dd1925715e2b10,3c7c01a279f685f6,fc636d28f68f9266,78ac98a3c718caa4,4f3960a377f7eed1,99bd3fcd397cf7d1?thread_id=b901e483a6711f72&mode=thread&noheader=1&q=UI+hal+fulton#doc_36fe42...

It basically let's Ruby code look structurally like the ui structure, and
uses some variation of dynamic binding to more cleanly define, override, and
lookup wide-ranging defaults.

I for one would gravitate strongly towards such a simplified interface ...

"Nick" <devel@nicreations.com> wrote in message
news:41BEFE07.5080304@nicreations.com...
>
> So, having subscribed recently to the ruby-talk mailing list, I've
> noticed that wxruby doesn't seem to have the "respect" of other GUI
> libraries. I know GUI-library preference is a holy war almost up there
> with vi versus emacs, but since I'm a wxruby developer, I'd like to know
> what people "don't" like about wxruby. Otherwise, how else do we improve?
>
> Browsing online, I've found a few complaints:
>
> Difficulty in getting it installed - Daniel Sheppard,
> http://www.jroller.com/pa...
> Use of ugly integer values for event handlers -
> http://homepages.ihug.com.au/~nase...
>
> It's a good start (though I don't know what platform Mr. Sheppard is
> trying to install on), but any other discussion would be most helpful.
>
> Thanks,
>
> Nick
>
>


Curt Hibbs

12/14/2004 7:23:00 PM

0

itsme213 wrote:
>
> Any chance you could provide a simplified interface along the lines
> discussed at length in
>
> http://groups-beta.google.com/group/comp.lang.ruby/messa...
24ced792ff,7824fe1d05b4f648,ffa0c9b33be25877,453e05fefa6610b4,79dd1925715e2b
10,3c7c01a279f685f6,fc636d28f>
68f9266,78ac98a3c718caa4,4f3960a377f7eed1,99bd3fcd397cf7d1?thread_
> id=b901e483a6711f72&mode=thread&noheader=1&q=UI+hal+fulton#doc_36f
> e4224ced792ff
>
> It basically let's Ruby code look structurally like the ui structure, and
> uses some variation of dynamic binding to more cleanly define,
> override, and
> lookup wide-ranging defaults.

This is something that would best be implemented as layer on top of the base
wxRuby. The base support should stick close to its wxWidgets roots (using
Ruby idioms, where possible).

Curt



Richard Lyman

12/14/2004 7:46:00 PM

0

Then why not gravitate toward FXRuby?

It already allows a lot of what was discussed in the given thread.

-Rich



On Wed, 15 Dec 2004 03:47:18 +0900, itsme213 <itsme213@hotmail.com> wrote:
> Any chance you could provide a simplified interface along the lines
> discussed at length in
>
> http://groups-beta.google.com/group/comp.lang.ruby/messages/36fe4224ced792ff,7824fe1d05b4f648,ffa0c9b33be25877,453e05fefa6610b4,79dd1925715e2b10,3c7c01a279f685f6,fc636d28f68f9266,78ac98a3c718caa4,4f3960a377f7eed1,99bd3fcd397cf7d1?thread_id=b901e483a6711f72&mode=thread&noheader=1&q=UI+hal+fulton#doc_36fe42...
>
> It basically let's Ruby code look structurally like the ui structure, and
> uses some variation of dynamic binding to more cleanly define, override, and
> lookup wide-ranging defaults.
>
> I for one would gravitate strongly towards such a simplified interface ...
>


Zach Dennis

12/14/2004 7:50:00 PM

0

Richard Lyman wrote:
> Then why not gravitate toward FXRuby?

FXRuby doesn't necessarily appeal to all developers with it being GPL'd.
And to the late wxruby project lead Kevin Smith:

"On the bright side, wx is still the only liberally-licensed,
full-featured, native-widget, cross-platform GUI toolkit. If those
features are important to you, then wx is really where you want to be. "

Zach


Its Me

12/14/2004 7:53:00 PM

0


"Curt Hibbs" <curt@hibbs.com> wrote in message
> This is something that would best be implemented as layer on top of the
base
> wxRuby. The base support should stick close to its wxWidgets roots (using
> Ruby idioms, where possible).

True.


Its Me

12/14/2004 7:54:00 PM

0


"Richard Lyman" <lymans@gmail.com> wrote in message
> Then why not gravitate toward FXRuby?

When I last looked at the FXRuby examples (several months ago), I found it
hard to see the basic ui structure, somewhat buried (to me) in the many
configuration parameters. Do you know if that has changed?