URIS http://rubyforge.org/projects/korundum/ http://developer.kde.org/language-bindings/ruby/index.html NAME QtRuby 1.4.7 SYNOPSIS Ruby bindings for the Qt4 GUI apis. Many fixes and improvements. QtDBus now works. DESCRIPTION Highlights from the QtRuby ChangeLog since release 1.4.7: * Support for Qt 4.2 final * The Qt4 version of QtRuby can be installed at the same time as the Qt3 version. * Use: - require 'Qt3' - require 'Qt4' - require 'Qt' The last option will default to Qt4 QtRuby. * The command line api introspection tool can be used to query both Qt3 and Qt4 apis: - rbqt3api - rbqt4api - rbqtapi Again the last option will default to the Qt4 api for QtRuby * The 'rbuic' tool has been renamed 'rbuic4' to avoid a clash with the Qt3 one. * The Qt3 and Qt4 versions of the Smoke library have different versions and can be installed in the same directory * Added the rbrcc Ruby resource compiler tool * Optional support for the QtDbus classes, and Qt QDBus examples ported to ruby * Optional support for the Qwt plotting library * Blocks can be used as targets for connect calls as well as ordinary slots: * Added a new variant of connect, which takes a SIGNAL as an argument, along with a block. For example: quit.connect(SIGNAL(:clicked)) { puts 'quit pressed' } The block is called in the context of where the connect call was made, and 'self' needn't be a Qt::Object. It is similar to the signal_connect() method in ruby-gnome. This was suggested by rickdangerous on the #qtruby irc channel. * Here is an example of the class method connect() call with a block as a target: app = Qt::Application.new(ARGV) quit = Qt::PushButton.new('Quit') Qt::Object.connect(quit, SIGNAL('clicked()'), app) do puts 'quit clicked' end The block is executed in the context of the target instance, 'app' in this case. * And the instance method form: class MyButton < Qt::Button def initialize(text) super(text) connect(self, SIGNAL(:clicked)) do puts 'button clicked' end end ... The block is executed in the context of self - the instance making the connect() call. CONFIG See the qtruby/INSTALL file for details of configuration, building and installation. BUILDING ON WINDOWS * The smoke library can be built on windows by manually editing qtguess.pl.in and generate.pl.in (automake doesn't work with qtruby on Windows). Run 'perl qtguess.pl' to for the configure tests. Then run 'perl generate.pl' to generate the Smoke sources, and build with qmake. Use extconf.rb and qmake to build the qtruby extension and rbuic tool. ENVIRONMENTS Linux, BSD*, Unix etc Mac OS X, Windows AUTHORS Richard Dale with Caleb Tennis, Alexander Kellett and others. Special thanks to kelko and rickdangerous for suggesting how to implment 'blocks as slots' for this release.