Error with KPassivePopup and OS X compiles

Tanner Lovelace clubjuggler at
Mon Jan 30 02:11:14 GMT 2006


In trying to get kdelibs compiled under OS X, some of us have run into a problem
with KPassivePopup.  It appears that while under Qt/X11, the type
"WId" is defined as

typedef unsigned long WId

under Qt/Mac, it is instead defined as

typedef int WId.

This causes problems with the following two KPassivePopup constructors:

KPassivePopup( WId parent );
KPassivePopup( int popupStyle, QWidget *parent=0, Qt::WFlags f=0 );

as the compiler cannot resolve which constructor should be called.

I see at this url
(or use )

that the second constructor used to be an enum type called PopupStyle but
was changed to int "to allow for subclass extensions".

Can anyone suggest a course of action here?  How many times is the
KPassivePopup constructor called?  This could be resolved just by removing
the default argument for QWidget* in the second constructor, but that might
be a huge job to change all the instances that call it if there are
lots of them.

Thanks in advance.

Tanner Lovelace

Tanner Lovelace
clubjuggler at gmail dot com
(fieldless) In fess two roundels in pale, a billet fesswise and an
increscent, all sable.

More information about the kde-core-devel mailing list