[Kde-bindings] Fwd: [korundum-help][56355] RE: Problems with korundum4 after svn update

Richard Dale richard.j.dale at gmail.com
Thu May 22 08:41:32 UTC 2008


On Wed, May 21, 2008 at 9:07 PM, Stefano Crocco <noreply at rubyforge.org>
wrote:

Read and respond to this message at:
http://rubyforge.org/forum/message.php?msg_id=56304
By: Stefano Crocco

I'm using korundum4 from kde svn. Some days ago (I think it was on Sunday or
Monday), I updated it from svn, and found that some code which previously
worked
flawlessly now gives strange errors. In particular, I found out these two
issues
(there may be other similar, but since these two stop my program from
setting
up, I can't say). The issues I found are:
1) KDE::ActionCollection#action returns a Qt::WidgetAction, instead of a
KDE::Action
(or derived class), both for actions created manually using
KDE::ActionCollection#add
>
> _action and actions created using KDE::StandardActions.
> The actions themselves are of the correct class and can be used normally if
> stored somewhere else (for example, in an instance variable). But you
> access
> them using KDE::ActionCollection#action, they'll behave as a
> Qt::WidgetAction,
> instead of whatever they should be.
> 2) The Qt::Pixmap s returned by KDE::IconLoader#load_icon aren't accepted
> as
> argument where a Qt::Pixmap is required (in particular, I tested it using
> Qt::Icon.new and Qt::Label#set_pixmap), and in both cases I got an error
> (ArgumentError). Creating a pixmap for the file by hand (using the string
> returned
> by KIconLoader#icon_path) or using a pixmap created with
> Qt::Pixmap.new(16,16)
> works perfectly.
>
>
> I know that svn code is highly unstable and that these issues may be known,
> but, after having looked at kde websvn and having found no commit which
> seemed
> to be connected to them, I decided to report about them.
>


---------- Forwarded message ----------
From: Richard Dale <noreply at rubyforge.org>
Date: Thu, May 22, 2008 at 9:33 AM
Subject: [korundum-help][56355] RE: Problems with korundum4 after svn update
To: noreply at rubyforge.org



Read and respond to this message at:
http://rubyforge.org/forum/message.php?msg_id=56355
By: Richard Dale

There was a very large change to the Ruby and C# bindings recently called
'modular
smoke'. Before all the QtRuby smoke bindings were in one big library called
'libsmokeqt' and all the QtRuby/Korundum ones were in 'libsmokekde'. With
the
modular smoke change we will be able to split up the smoke libs and also
wrap
a much wider range of apis.


However, there are a few minor issues that need fixing. The 'rbkde4api' and
'rbqtapi' command line tools no longer work properly, the version number on
the smoke libs needs raising to 3.0.0 and I think you've found some more.


There is some code that uses the runtime data in a QMetaObject to get a more
exact classname to use than the one in the api itself. It sounds like your
problem
has been caused by the resolve_classname() code no longer working correctly
(only looking for Qt classes and not KDE ones too).


The second error looks like it is caused by the function used in runtime
overloaded
method resolution not working correctly. It checks whether the class of an
argument
type is a subclass of the argument type in the smoke lib, and it is only
looking
in the Qt smoke lib to find that out, and not the KDE one too.


I think it will take a week or two before the Ruby bindings work as well as
they did before the modular smoke change, but thanks for reporting the bugs
as it is quite important to find out about these issues asap.

______________________________________________________________________
You are receiving this email because you elected to monitor this forum.
To stop monitoring this forum, login to RubyForge and visit:
http://rubyforge.org/forum/monitor.php?forum_id=723&group_id=181&stop=1
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-bindings/attachments/20080522/d5f238f1/attachment.html>


More information about the Kde-bindings mailing list