Add missing Q_OBJECT macro