[lnkForumImage]
TotalShareware - Download Free Software

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


 

Forums >

comp.lang.ruby

[ANN] QtRuby 1.0.8/Korundum 3.4.0/KDevelop 3.2.0

Richard Dale

4/1/2005 3:57:00 AM

URIS

http://rubyforge.org/projects...
http://developer.kde.org/language-bindings/ruby/...
http://www.kdevelop.org/?filename=dow...

NAME

QtRuby 1.0.8
Korundum 3.4.0
KDevelop 3.2.0

SYNOPSIS

Ruby bindings for the Qt and KDE GUI apis, combinded with an IDE for RAD

DESCRIPTION

Highlights from the QtRuby ChangeLog

* An 'include Qt' statement in qtruby.rb where a couple of methods were
being added to class Module was causing all the Qt methods to be added
to Module. Oops, this a really serious bug. Various methods in
qtruby.rb are now module methods in the Qt::Internal module. Big thanks
to Eric Veensta and Samir Patel for pointing out this can of worms.

* It also fixes a problem reported by David Crosby where a "require
'time'" statement was incompatible with a "require 'Qt'" statement. As
the cause was unknown, a hacky workround had to be added, which is no
longer needed.

* rbuic was giving widgets names containing a '@' to match the ruby
instance variable name. However, this doesn't work with
KDE::ConfigDialog which expects the names to match the ones generated
in a KDE::ConfigSkeleton by rbkconfig_compiler so '@' is no longer
added.

* Added a Qt::Integer.coerce method so that Qt::Integers and Qt::Enums
can be combined in arithmetic expressions with ruby Integers.

Highlights from the Korundum ChangeLog

* Fixed problems caused ''include Qt'' and "include KDE" statements in
korundum.rb where a couple of methods were being added to class Module
was causing all the Qt and KDE methods to be added to Module.

* Added marshallers for KIO::UDSEntry and KIO::UDSEntryList, and accessor
methods for fields in the KIO::UDSAtom struct. Fixes problem reported
by Ian Monroe.

* Added rbkconfig_compiler for compiling .kcfg files to ruby

KDevelop Ruby Support

* Integrated Qt Designer KPart component for creating UIs graphically
* Source code debugger
* Code folding/Syntax highlighting
* Templates for Qt and KDE project types
* Class browser with support for Qt features such as signals/slots,
or KDE dcop signals slots

CONFIG

See the qtruby/INSTALL file for details of configuration, building
and installation.

ENVIRONMENTS

Linux, BSD*, Unix etc
Mac OS X

AUTHORS

Richard Dale
Alexander Kellett

TUTORIALS

Qt Tutorial #1, 14 Steps to Writing a Game
http://developer.kde.org/language-bindings/ruby/tutorial/tut...

Qt Tutorial #2, Building a Charting Application
http://developer.kde.org/language-bindings/ruby/tutorial2/tuto...

The Qt Designer Color Tool Tutorial
http://developer.kde.org/language-bindings/ruby/colortooltu......

KDE 3.0 Tutorial
http://developer.kde.org/language-bindings/ruby/kde3tutorial/...

RAD with KDevelop using Ruby/Qt/KDE
http://www.kdevelop.org/doc/technotes/ru...
2 Answers

Erik Veenstra

4/1/2005 9:59:00 AM

0

> An 'include Qt' statement in qtruby.rb where a couple of
> methods were being added to class Module was causing all the
> Qt methods to be added to Module. Oops, this a really serious
> bug. Various methods in qtruby.rb are now module methods in
> the Qt::Internal module.

This "hack" caused a problem in RubyScript2Exe when trying to
"compile" a Ruby application which uses Qt. I've tested the
combination RubyScript2Exe and Qt with a little HelloWorld
program. It works!

gegroet,
Erik V.

Richard Dale

4/1/2005 10:10:00 AM

0

Erik Veenstra wrote:

>> An 'include Qt' statement in qtruby.rb where a couple of
>> methods were being added to class Module was causing all the
>> Qt methods to be added to Module. Oops, this a really serious
>> bug. Various methods in qtruby.rb are now module methods in
>> the Qt::Internal module.
>
> This "hack" caused a problem in RubyScript2Exe when trying to
> "compile" a Ruby application which uses Qt. I've tested the
> combination RubyScript2Exe and Qt with a little HelloWorld
> program. It works!
Yes, my mistake was to think of 'include Qt' being just like a 'using
namespace' statement in a static language like C++. But it isn't like that
at all, and in this case was having quite major unexpected effects.

I'd known there was something 'not quite right' in the namespace handling of
QtRuby for a while, but couldn't work out what it was. That was I was so
pleased when you found the problem.

-- Richard