[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-devel
Subject:    Re: kdesdk/kspy ported to Qt4
From:       Albert Astals Cid <aacid () kde ! org>
Date:       2009-01-01 19:13:47
Message-ID: 200901012013.47913.aacid () kde ! org
[Download RAW message or body]

A Dimecres 31 Desembre 2008, Peter Oberndorfer va escriure:
> On Dienstag 30 Dezember 2008, Albert Astals Cid wrote:
> > A Dimarts 30 Desembre 2008, Peter Oberndorfer va escriure:
> > > Hi,
> > >
> > > i ported kdesdk/kspy to Qt4.
> > > Since i have no SVN account i am sending the patches to this list
> > > so somebody can apply them for me (after 4.2 since i assume kdesdk is
> > > part of 4.2).
> > >
> > > The receivers tab had to be removed as i have no idea how to port it
> > > without accesing qt internals.
> > > Other than this there should be no functional differences compared to
> > > kspy from kde3. It is still unsafe in the way that kspy/the application
> > > will probably crash when the a widget is deleted and then selected in
> > > kspy. There should be no i18n changes.
> >
> > Good to see someone working on unported code :-)
> >
> > Some general comments:
> >  * Get a SVN account[1], they are free!
> >
> >  * There are some unneeded changes like
> > -#include <qwidget.h>
> > +#include <QWidget>
>
> Like others said i did this because Qt docs say it is the preferred style.
> http://doc.trolltech.com/4.4/qt4-intro.html#include-syntax
> I will try to separate this out this changes from the port to Qt4.

Good

>
> > and
> >
> > -     lib->factory(); // Ensure the factory is loaded
> > +    lib->factory(); // Ensure the factory is loaded
> >    you should avoid this
>
> I can move whitespace cleanup and include changes into a separate patch.

Good

>
> >  * You substituted QObject::objectTrees() with
> > QApplication::topLevelWidgets() which sucks but it's the best info Qt
> > gives us, we should try to prod someone at QtSoftware to give us access
> > to that nice allObjects set they have in qobject.cpp, oh, wait, they've
> > removed that set in Qt 4.5, i think it would still be better doing
> > QCoreApplication::instance()->findChildren and go on from there so we
> > list non widgets too
> >
> >  * You killed ReceiversView? Why?
>
> From my original mail:
> The receivers tab had to be removed as i have no idea how to port it
> without accesing qt internals.

I need to learn to read :D

>
> >  * Without the test program it's really difficult testing if the code
> > works or not, you should put it back
>
> I do not know how to automatically generate the VERSION define in cmake.
> Additionally the test should probably use the same interface that apps are
> supposed to use (kspy.h and not access Spy directly)
> I will try to find out, but i think it is ok for now to live without the
> test. Since i tested what i ported :-)

Agreed it should use the same interface.

How did you test it without the test program?

>
> >  * Other than that the patches seem okaish, but i think you should really
> > get the account (if you plan to work on more things that i'm sure you
> > are) and try to commit the patches without the unnecessary changes.
>
> OK I will ask for one.

Welcome to the club!

> and commit after 4.2
> (if i interpret http://techbase.kde.org/Schedules/KDE4/4.2_Release_Schedule
> right)

Yeah, we are in deep freeze for KDE 4.2 already.

Albert

>
> > Albert
> >
> > [1] http://techbase.kde.org/Contribute/Get_a_SVN_Account
> >
> > > All patches are relative to kspy project.
> > > kspy compilation is NOT enabled in kdesdk/CMakeLists.txt
> > > Since i do not know if:
> > > * there needs to be some change to make the lib/header coexist with
> > > KDE3. * it is ok to use the old kde3 library mechanism (It shows some
> > > strange messages [1])
> > >
> > > Hope this is useful
> > > Greetings Peter
> > >
> > > [1]
> > > compiling:
> > > /home/kde-devel/kde/include/kspy.h: In static member function 'static
> > > void KSpy::invoke()': /home/kde-devel/kde/include/kspy.h:23: warning:
> > > 'self' is deprecated (declared at
> > > /home/kde-devel/kde/src/kdelibs/kdecore/util/klibloader.h:142)
> > > /home/kde-devel/kde/include/kspy.h:31: warning: 'factory' is deprecated
> > > (declared at
> > > /home/kde-devel/kde/src/kdelibs/kdecore/util/klibrary.h:59)
> > >
> > > runtime:
> > > kdevelop(14950)/kdecore (KLibLoader) findLibraryInternal: plugins
> > > should not have a 'lib' prefix: "libkspy.so" kdevelop(14950)/kdecore
> > > (KLibLoader) findLibraryInternal: library "libkspy.so" not found under
> > > 'module' but under 'lib' kdevelop(14950)/kdecore (KLibLoader)
> > > kde4Factory: The library "/home/kde-devel/kde/lib/libkspy.so" does not
> > > offer a qt_plugin_instance function. KSpy: Initialising...
> > > kdevelop(14950)/kdecore (KLibLoader) kde3Factory: The library
> > > "/home/kde-devel/kde/lib/libkspy.so" does not offer a KDE compatible
> > > factory.
> > >
> > > >> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to
> > > >> unsubscribe <<
> > >>
> > >> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to
> > >> unsubscribe <<
> >>
> >> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to
> >> unsubscribe <<


 
>> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe <<
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic