> -----Original Message----- > From: owner-roottalk@pcroot.cern.ch [mailto:owner-roottalk@pcroot.cern.ch] > On Behalf Of Rene Brun > Sent: Saturday, November 20, 2004 1:47 AM > To: Jacek M. Holeczek > Cc: RootTalk > Subject: RE: [ROOT] ROOT 4.01/04 > > Hi Jacek, Valeri, > > On Sat, 20 Nov 2004, Jacek M. Holeczek wrote: > > Interesting . . . "emit" is a CPP macro defined by Qt > > > > > > grep emit qobjectdefs.h > > > #define emit // emit signal > > As already answered by Fons, this is a bug in Qt. Trolltech should fix > this bug. Meanwhile undefined "emit" after the inclusion of qtwidget.h I am afraid is NOT a bug :-( it is much worse. Qt has no "CINT". To introduce its signal/slot they need some sort of the dictionary (primitive one vs ROOT/CINT) though. The Qt solution ( not a bug) is to use CPP macro to allow the code like MyClass.h: Class MyClass : public QObject { public slots: public signals: } and they do use (and do advice) emit MySignal; within the class implementations. My guess, to compile the code above with the regular C++ compiler the TrollTech has to have the "signals", "slots" and "emits" defined as an EMPTY CPP macros at some point. #define slots #define signals #define emits Personally I do not see how they can fix it. Anyway I certainly shall communicate TrollTech on issue to know what they think and then forward their reply to RootTalk. I have to call your attention these macros should not make any damage for the ROOO code alone. At the moment ROOT GUI classes are well separated of the Qt implementation of TVirtualX, as it should be. Another problem (it is new for me I have to admit) the end-user code that wants to use BOTH GUIs' within one and the same file scope. I think it is still good to advice people do not mix Qt GUI and ROOT GUI within one and the same source file. Hope this helps, Valeri > > Rene Brun ----- Best Regards Valeri Fine Brookhave National Laboratory Upton, NY 11973. USA Phone: +1 631 344 7808 Fax: +1 631 344 4206
This archive was generated by hypermail 2b29 : Sun Jan 02 2005 - 05:50:10 MET