PDA

View Full Version : Undefined interface



mero
14th November 2009, 01:02
Hello
I've got error in cmake:



Error: Undefined interface in line: Q_INTERFACES(QTextObjectInterface)




#include <QObject>
#include <QTextObjectInterface>

class ImageHandler : public QObject, public QTextObjectInterface
{
Q_OBJECT
Q_INTERFACES(QTextObjectInterface)
public:
ImageHandler(TextDocument *doc);
QSizeF intrinsicSize(QTextDocument *doc, int posInDoc, const QTextFormat &format);
void drawObject(QPainter *painter, const QRectF &rect, QTextDocument *doc, int posInDoc, const QTextFormat &format);

private:
QTextObjectInterface *m_defaultImageHandler;

};


what I must add to cmake ? or into code ?

squidge
14th November 2009, 12:31
Where is your Q_DECLARE_INTERFACE ?

wysota
14th November 2009, 13:55
Please provide a minimal example reproducing the problem.

mero
14th November 2009, 16:02
Where is your Q_DECLARE_INTERFACE ?
This is not my code, I insert 2 files from http://download.hyves.org/kwekker2/HyvesDesktop-src-1.3.tar.gz (HyvesDesktop) for animated icons but I can't compile it.
This problem is part of http://www.qtcentre.org/forum/f-qt-programming-2/t-animation-in-qtextedit-24431.html ...



HyvesDesktop-src-1.2$ grep -R Q_DECLARE_I *
3rdparty/iris/irisnet/corelib/irisnetplugin.h:Q_DECLARE_INTERFACE(XMPP::IrisNetP rovider, "com.affinix.irisnet.IrisNetProvider/1.0")
3rdparty/iris/irisnet/corelib/irisnetplugin.h:Q_DECLARE_INTERFACE(XMPP::NetInter faceProvider, "com.affinix.irisnet.NetInterfaceProvider/1.0")
3rdparty/iris/irisnet/corelib/irisnetplugin.h:Q_DECLARE_INTERFACE(XMPP::NameProv ider, "com.affinix.irisnet.NameProvider/1.0")
3rdparty/iris/irisnet/corelib/irisnetplugin.h:Q_DECLARE_INTERFACE(XMPP::ServiceP rovider, "com.affinix.irisnet.ServiceProvider/1.0")
3rdparty/qca/include/QtCrypto/qcaprovider.h:Q_DECLARE_INTERFACE(QCAPlugin, "com.affinix.qca.Plugin/1.0")
src/plugger/CXXPluginInterface.h:Q_DECLARE_INTERFACE(Plugger:: CXXPluginInterface,

I don't see Q_DECLARE_INTERFACE for TextDocument.h