Hello Joshua,<br><br><div><span class="gmail_quote">On 3/9/08, <b class="gmail_sendername">Joshua Lefkowitz</b> <<a href="mailto:lists@ruby-forum.com">lists@ruby-forum.com</a>> wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br>Mario, thanks for the input. I do need to have a GUI for my final app,<br> but it doesn't have to be via DialogBlocks/XRCise. I guess my question<br> is, if I learn about GUI in say Tk, how easily will i be able to apply<br>
that to any of the other GUI aps--fxruby, wxruby, etc.?</blockquote><div><br>Just a note, but when reffering to other GUI Toolkits, like Tk, FXRuby and wxRuby, they are technically GUI Libraries. As to your particular question, I strongly, very very strongly recommend staying with 1 GUI Toolkit. The reason for this, is that each GUI Toolkit library has it's own API Interface, it's own set of Controls, it's own way of handling Events that come from the GUI elements. Also, there's certain advantages and dis-advantages to using each Toolkit. Tk, is a very low level GUI Toolkit, and heavily relies on having the TK/TCL Framework installed along side Ruby in order to work. GUI Apps that are created with TK, do not truely have a native OS feel to it, and can tend to be over-complicated.<br>
<br>FXRuby, has a Single GUI Look and Feel, so it's garunteed to look the same across all platforms, though that is not always a good thing. The reason why it looks the same no matter what platform you run on, is cause Fox does all of it's own drawing for all the controls that it has associated with it. I have found many times over, that with this method of drawing controls, can lend to be a main cause for bottlenecks in programs developed in Ruby. Everything is compiled in with the Extension, so you don't need to re-distribute a whole bunch of stuff, just a single .so file and a few .rb files, which makes it a lot easier to port.<br>
<br>wxRuby on the other hand, utilizes Native OS Controls wherever possible, only substituting for controls that do not exist on the platform in question. It's very fast, and has very few bottlenecks, cause it's not custom drawing every single control, outside of the main Window. This is favorable, cause it will retain the user's preferences for Font size, control colors, layout, etc, etc. Also, as with FXRuby, wxRuby has a single SO File, and a few .rb files, making distrobution easier.<br>
<br>Going between these three toolkits, can be very fustrating when your trying to develop apps. Do note, that these are my own opinions, and experiences from using these three Toolkits, and even though I develop soley with wxRuby, I encourage people to experiment with other libraries, but only pick 1 toolkit in which to do any programming with, otherwise, it will get harder and more frustrating in which to do stuff, any other way.<br>
</div><br>If you have any other questions, please feel free to ask away!<br>L8ers,<br></div><br>-- <br>Mario Steele<br><a href="http://www.trilake.net">http://www.trilake.net</a><br><a href="http://www.ruby-im.net">http://www.ruby-im.net</a><br>
<a href="http://rubyforge.org/projects/wxruby/">http://rubyforge.org/projects/wxruby/</a><br><a href="http://rubyforge.org/projects/wxride/">http://rubyforge.org/projects/wxride/</a><br><a href="http://rubyforge.org/projects/vwmc/">http://rubyforge.org/projects/vwmc/</a>