File indexing completed on 2024-05-26 05:40:55
0001 #ifndef FIELDVIEW_H 0002 #define FIELDVIEW_H 0003 0004 #include <QContextMenuEvent> 0005 #include <QList> 0006 #include <QSignalMapper> 0007 #include <QTreeView> 0008 0009 class QUndoStack; 0010 class FieldModel; 0011 class Canvas; 0012 class FieldController; 0013 namespace rcse{ 0014 class MainController; 0015 } 0016 class FieldView : public QTreeView 0017 { 0018 Q_OBJECT 0019 public: 0020 FieldView(QWidget* parent= nullptr); 0021 0022 void setController(rcse::MainController *ctrl); 0023 0024 void applyValue(QModelIndex& index, bool selection); 0025 void defineItemCode(QModelIndex& index); 0026 0027 int getCurrentPage() const; 0028 0029 QList<Canvas*>* getCanvasList() const; 0030 void setCanvasList(QList<Canvas*>* canvasList); 0031 0032 FieldModel* getModel() const; 0033 void setFieldModel(FieldModel* model); 0034 0035 public slots: 0036 void editColor(QModelIndex index); 0037 void lockItems(); 0038 void hideAllColumns(bool); 0039 void setCurrentPage(int currentPage); 0040 0041 signals: 0042 void removeField(FieldController* field, int m_currentPage); 0043 0044 protected: 0045 void contextMenuEvent(QContextMenuEvent* event) override; 0046 0047 private: 0048 QPointer<rcse::MainController> m_ctrl; 0049 QAction* m_lock= nullptr; 0050 QAction* m_delItem= nullptr; 0051 QAction* m_applyValueOnSelection= nullptr; 0052 QAction* m_applyValueOnAllLines= nullptr; 0053 QAction* m_defineCode= nullptr; 0054 QAction* m_resetCode= nullptr; 0055 0056 // Show Hide Columns 0057 QAction* m_showGeometryGroup= nullptr; 0058 QAction* m_showEsteticGroup= nullptr; 0059 QAction* m_showValueGroup= nullptr; 0060 QAction* m_showAllGroup= nullptr; 0061 QAction* m_showIdGroup= nullptr; 0062 0063 FieldModel* m_model= nullptr; 0064 QList<Canvas*>* m_canvasList= nullptr; 0065 int m_currentPage= 0; 0066 0067 QSignalMapper* m_mapper= nullptr; 0068 }; 0069 0070 #endif // FIELDVIEW_H