#ifndef RULEPREVIEW_H #define RULEPREVIEW_H #include "rule.h" #include #include #include #include #include #include #include #include #include namespace Ui { class RulePreview; } class RuleDialog; class RulePreview : public QWidget { Q_OBJECT public: explicit RulePreview(QWidget *parent = nullptr); ~RulePreview(); public slots: void AddRule(const Rule rule); void AddRules(const QVector rules); void DeleteRule(const Rule rule); void DeleteRuleByName(const QString ruleName); void SetRules(const QVector rules); void SetScrollValue(int scrollValue); signals: void ScrollMaxChanged(int scrollMax); protected: void paintEvent(QPaintEvent *event) override; QSize sizeHint() const override; private: Ui::RulePreview *ui; QQueue pRules; int pScrollValue; int pScrollMax; }; #endif // RULEPREVIEW_H