"Cornelius's grand plan" - Merging KDElibs into Qt

todd rme toddrme2178 at gmail.com
Sun Oct 31 17:08:20 GMT 2010

On Sun, Oct 31, 2010 at 9:26 AM, Michael Jansen <kde at michael-jansen.biz>wrote:

> On Sunday 31 October 2010 12:33:22 Mark Kretschmann wrote:
> > Hey all,
> >
> > after reading the whole thread that started with Chani's mail ("why
> > kdelibs?"), I think the noise level has become a bit too much there.
> > Cornelius had proposed this rather daring idea:
> >
> > http://lists.kde.org/?l=kde-core-devel&m=128842761708404&w=2
> >
> >
> > It's a very controversial idea. However, I think it is so refreshing
> > that it deserves some more thought. Personally, I think the idea is
> > great, if we can overcome some of the obvious road blocks. I would
> > love to read some honest and direct thoughts from you guys.
> >
> >
> > What do you think about it?
>  1. Small improvements to the Qt Libraries
> Those are the so called convenient classes. Classes the have been added to
> the
> KDE Libs because of some shortcomings of the Qt Classes or to add some
> convenience methods. I guess classes like KUrl and KIcon (at least parts)
> fall
> into that category.
> The classes in this category do not add additional functionality,
> requirements
> or anything else to the Qt Classes.

I think this sounds like the place to start, for several reasons:

1. The changes to Qt should be relatively minor
2. These shouldn't change too rapidly, meaning Qt's release cycle won't be
as big of a problem
3. Backwards compatibility won't be affected (the relevant KDE libraries can
be marked as deprecated and/or just be plain wrappers for the Qt version)
4. There is already probably some confusion about whether people should use
the Qt or KDE version (KDE has a policy on this I think)
5. Licensing shouldn't be as much of a problem
6. This is a prerequisite for moving larger parts over, since Qt libraries
cannot make use of KDE convenience functions.

I think the second step would be to merge classes that subclass one existing
Qt class to add additional features to that class.  These would be things
that are mostly the same as the Qt version, but add some features to that

Third should be merging features from libraries that do the same thing as a
Qt library, but implement it independently, One example that comes to mind
is drag-and-drop between windows that is preventing some programs from using
the Qt tab bar.

I think stuff that requires moving whole blocks of KDE over to Qt, like KIO,
should be the last thing that is done.  This is partly because it is a lot
more work, but also partly because, as I said in point 6, all the small KDE
changes that the larger blocks depend on have to be in Qt anyway.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20101031/e45f7ee9/attachment.htm>

More information about the kde-core-devel mailing list