#pragma once #include #include #include #include #include #include #include #include #include "SequenceView.h" /// /// ¿Õ°×ÅäÖÃÃæ°å /// class EmptyConfiguration : public QWidget { public: EmptyConfiguration(QWidget* p = nullptr); }; namespace extract { class BytesAsInteger; } class IntegerConfiguration : public QWidget { Q_OBJECT private: std::shared_ptr _current_extractor = nullptr; QModelIndex _target_modelindex; QCheckBox* const _unsigned_mark; signals: void ruleHasBeenChanged(const QModelIndex& idx); public: IntegerConfiguration(QWidget* p = nullptr); void setCurrent(const QModelIndex& idx, std::shared_ptr u); }; class StructuralRuleView : public QWidget { private: SequenceRulesView* const _sequence_view; QStackedWidget* const _configs_stack; public: StructuralRuleView(QWidget* p = nullptr); };