#ifndef RELAYWIDGET_H #define RELAYWIDGET_H #include #include #include "itemsettingsdialog.h" #include "../items/item.h" namespace Ui { class ItemWidget; } class ItemWidget : public QWidget { Q_OBJECT private: std::weak_ptr item_; void disable(); signals: void deleteRequest(const ItemData& item); private slots: void showSettingsDialog(); void moveToState(bool state); void moveToValue(int value); void deleteItem(); public: explicit ItemWidget(std::weak_ptr item, QWidget *parent = nullptr); std::weak_ptr getItem(); bool controles(const ItemData& relay); ~ItemWidget(); public slots: void stateChanged(int state); private: Ui::ItemWidget *ui; }; #endif // RELAYWIDGET_H