GlobeEngine
OutlinePanel.h
Go to the documentation of this file.
1 #ifndef OUTLINEPANEL_H
2 #define OUTLINEPANEL_H
3 
4 #include "OpenGL_Includes.h"
5 #include "ui_OutlinePanel.h"
6 #include "ModelLayer.h"
7 
8 #include <QWidget>
9 
10 
11 namespace geViewer {
12  class GlobeEngineUI;
13 
14  class OutlinePanel : public QWidget
15  {
16  Q_OBJECT
17 
18  public:
19  OutlinePanel(GlobeEngineUI* _parent);
20  ~OutlinePanel();
21  Ui::OutlinePanel* getUI() { return &ui; };
22 
23  QTreeWidgetItem* createOrGetTopLevelItem(std::string _name, QString _type);
24  void addChildItem(QTreeWidgetItem* _parent, std::string _name, int _entitiyCount, int _pointCount, int _edgeCount, QString _type, bool _checked);
25 
26  std::string getInfoString(int _entitiyCount, int _pointCount, int _edgeCount);
27 
28  QStringList getTrafficNamesList();
31  void refreshModel(std::shared_ptr<geGIS::ModelLayer> _modelLayer);
32 
33  signals:
34  void selectSaveObject(geGIS::ModelLayerSelection _sel, std::string _path, std::string _ext);
36  void selectExportGraphData(geGIS::ModelLayerSelection _sel, std::string _path);
37  void selectExportGraphRequests(geGIS::ModelLayerSelection _sel, std::string _path);
38  void itemVisibilityChange(geGIS::ModelLayerSelection _sel, bool _visible);
42 
43 
44  public slots:
45  void itemActionDoubleClick(QTreeWidgetItem* _item, int _value);
46  void changeItemVisibility(QTreeWidgetItem* _item, int _value);
47  void changeItemSelection();
48  void createContextMenuFromSelection(const QPoint& pos);
49 
50  private:
51  int getTopLevelItemIndex(QTreeWidgetItem* _item);
52  int getTopLevelItemNumber(std::string _name);
53  std::string getPathfromFileDialog(std::vector< std::string > _extList);
54 
55  Ui::OutlinePanel ui;
56  GlobeEngineUI* parent;
57 
58  QStringList categories;
59  };
60 }
61 #endif
void itemActionDoubleClick(QTreeWidgetItem *_item, int _value)
Definition: OutlinePanel.cpp:132
void itemVisibilityChange(geGIS::ModelLayerSelection _sel, bool _visible)
void changeItemSelection()
Definition: OutlinePanel.cpp:70
void selectSaveObject(geGIS::ModelLayerSelection _sel, std::string _path, std::string _ext)
void selectTriangulateObject(geGIS::ModelLayerSelection _sel)
~OutlinePanel()
Definition: OutlinePanel.cpp:31
Definition: FeaturePanel.h:10
QStringList getTrafficNamesList()
Definition: OutlinePanel.cpp:217
Ui::OutlinePanel * getUI()
Definition: OutlinePanel.h:21
void createContextMenuFromSelection(const QPoint &pos)
Definition: OutlinePanel.cpp:228
OutlinePanel(GlobeEngineUI *_parent)
Definition: OutlinePanel.cpp:7
void selectExportGraphRequests(geGIS::ModelLayerSelection _sel, std::string _path)
void addChildItem(QTreeWidgetItem *_parent, std::string _name, int _entitiyCount, int _pointCount, int _edgeCount, QString _type, bool _checked)
Definition: OutlinePanel.cpp:36
QTreeWidgetItem * createOrGetTopLevelItem(std::string _name, QString _type)
Definition: OutlinePanel.cpp:98
std::string getInfoString(int _entitiyCount, int _pointCount, int _edgeCount)
Definition: OutlinePanel.cpp:116
void changeItemVisibility(QTreeWidgetItem *_item, int _value)
Definition: OutlinePanel.cpp:145
Definition: ModelLayer.h:85
void itemSelectionChanged(geGIS::ModelLayerSelection _sel)
Definition: OutlinePanel.h:14
MODELTYPE
Definition: ModelLayer.h:54
void refreshModel(std::shared_ptr< geGIS::ModelLayer > _modelLayer)
Definition: OutlinePanel.cpp:160
enum geGIS::ModelLayerCategories::MODELTYPE getEnumFromString(std::string _name)
Definition: OutlinePanel.cpp:331
void objectItemDoubleClicked(geGIS::ModelLayerSelection selection)
geGIS::ModelLayerSelection getModelSelection()
Definition: OutlinePanel.cpp:183
void categoryDoubleClicked(geGIS::ModelLayerSelection selection)
void selectExportGraphData(geGIS::ModelLayerSelection _sel, std::string _path)
Definition: GlobeEngineUI.h:29