00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef __GENERIC_TREE_VIEW_PAGE_WDGT_H
00022 #define __GENERIC_TREE_VIEW_PAGE_WDGT_H
00023
00024 #include "ui_GenericTreeViewPage_wdgt.h"
00025 #include "RootPage_wdgt.h"
00026
00027 #include "InstModel.h"
00028
00029 class GenericTreeViewPageWidget : public RootPageWidget
00030 {
00031 Q_OBJECT
00032
00033 public:
00034 GenericTreeViewPageWidget(ControlPanel * window
00035 ,QWidget * widgetParent
00036 ,QBoxLayout * layoutParent
00037 ,dbListManager * pDataLists);
00038 inline RootItem * getSelectedItem();
00039 protected:
00040 Ui::GenericTreeViewPage_wdgt wdgt;
00041 RootItem * selectedItem;
00042 QString rootSubtype;
00043 protected:
00044 virtual void init()=0;
00045 void initTabBtns(RootItem * obj);
00046 bool eventFilter(QObject * target, QEvent * event);
00047 private:
00048 void treeViewClicked(const QModelIndex & index);
00049 void createActions();
00050
00051 protected slots:
00052 virtual void btnAddClicked()=0;
00053 virtual void btnNewClicked()=0;
00054 virtual void btnModClicked()=0;
00055 virtual void btnDelClicked()=0;
00056
00057 private slots:
00058 void itemClicked(const QModelIndex & index);
00059 };
00060
00061 inline RootItem * GenericTreeViewPageWidget::getSelectedItem()
00062 {
00063 return static_cast<RootItem*>(wdgt.treeView->currentIndex().internalPointer());
00064 }
00065
00066 #endif