From ruby-talk Mon Oct 30 22:15:13 2006 From: Pau Garcia i Quiles Date: Mon, 30 Oct 2006 22:15:13 +0000 To: ruby-talk Subject: Re: [ANN] QtRuby 1.4.7 Message-Id: <20061030232603.76mp3yfjpxk4cks0 () www ! elpauer ! org> X-MARC-Message: https://marc.info/?l=ruby-talk&m=116224658030301 Quoting "richard.j.dale@gmail.com" : Awesome! > 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. > > >