#pragma once #include #include "dmxcontroller.h" class RegisterGroupsModel : public QAbstractListModel { Q_OBJECT Q_PROPERTY(DmxController* controller READ controller WRITE setController NOTIFY controllerChanged) public: using QAbstractListModel::QAbstractListModel; DmxController *controller() { return m_controller; } const DmxController *controller() const { return m_controller; } void setController(DmxController *controller); int rowCount(const QModelIndex &parent) const override; QVariant data(const QModelIndex &index, int role) const override; QMap itemData(const QModelIndex &index) const override; QHash roleNames() const override; signals: void controllerChanged(DmxController *controller); private: DmxController *m_controller{}; };