[Interest] subclassed QTimer
André Somers
andre at familiesomers.nl
Tue Nov 3 14:24:55 CET 2015
Op 3-11-2015 om 14:13 schreef René J.V. Bertin:
> Hi,
>
> I wanted to add a quick timer to an editor class to check the state of the various items that editor can handle. It'd be cumbersome to subclass the edit items to add a timeout slot to them, or to extend the editor class so a timeout slot would get called with the appropriate item. The easiest way seemed to be to subclass QTimer:
>
> class QItemTimer : public QTimer {
> public:
> QItemTimer(QObject *parent, Item *item)
> : QTimer(parent)
> {
> _item = item;
> }
> public slots:
> void fired();
> protected:
> Item *_item;
> };
>
> and then do
>
> QItemTimer *t = new QItemTimer(0, _item);
> connect(t, SIGNAL(timeout()), t, SLOT(fired()));
> t->start(1000);
> timerList.append(t);
>
> but as far as I can tell my fired slot isn't being called.
>
> I'm probably overlooking something obvious?
>
Yeah. It simply doesn't make a lot of sense. What is the function of the
public fired() slot? And why do you connect to that from outside of the
timer class itself? What is the function of stuffing the timers in a
list instead of giving them a parent? Why do you need polling at all to
check the state of the "various items"?
André
More information about the Interest
mailing list