Why we shouldn't install header files created by UIC

Matt Rogers mattr at kde.org
Thu Apr 7 14:07:02 UTC 2005


On Thursday 07 April 2005 01:52 am, Tobias Erbsland wrote:
> Hello
>
> > As I'm going through and changing the main settings widget to look nicer
> > (screenshot at
> > http://www.sourcextreme.com/projects/kdevelop/newmainsettings.png), I've
> > noticed that we're installing a header file that's based of a .ui file
> > and calling it public API (i.e. we're not saying these headers are
> > private and they shouldn't be used). There are several reasons why this
> > is bad, and here's the two that i can think of ATM:
> > (...)
> > The solution to this is to create a new class that contains a pointer to
> > the UIC generated class and make this class part of the public API.We
> > can't base the new class off of the UIC generated class because you'll
> > still run into the above two points. Anyways, i still plan to go forward
> > with my changes, so i hope nobody cares that we're breaking BC.
>
> This is solved anyway with Qt4.0. In Qt4.0 the UIC is generating a class in
> a special namespace "Ui". This class has the method "setupUi()" which is
> called from your constructor.
>

Right, i know that, but I'm not particularly interested in things that are 
fixed for Qt4, i'm interested in getting things fixed or worked around or 
whatever now because now is what matters, not 3, 6, or 8 months down the 
line. :)

Matt




More information about the KDevelop-devel mailing list