VR-Forces 4.6 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
vrfTacticalGraphicOverlayTreeWidget.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2014 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
9 #pragma once
14 #include <vrvCore/DtStateView.h>
16 
17 #include <QtWidgets/QStyledItemDelegate>
18 
19 class QToolButton;
20 
21 namespace makVrv
22 {
23  class DtVirtualBaseClass;
24  class DtDe;
25 }
26 
27 namespace makVrf
28 {
34  {
35  Q_OBJECT
36 
37  public:
38 
41 
44 
46  virtual void addOverlay(const std::string& name);
47 
49  virtual void lockOverlay(const std::string& name, bool lock);
50 
52  virtual void removeOverlay( const std::string& ovrName );
53 
55  virtual void setOverlaySelected( const std::string& name, bool flag );
56 
57  virtual void activate();
58 
60  virtual void enableAddOverlays(bool flag);
62  virtual void enableDeleteOverlays(bool flag);
64  virtual void enableEditOverlays(bool flag);
66  virtual void enableLockOverlays(bool flag);
67 
69  virtual void setCanSaveOverlayAsShapeFile(bool flag);
70 
72  virtual void setCanImportShapeFileOntoOverlay(bool flag);
73 
75  virtual void setOverlayLayerVisible(const std::string& overlay, bool b);
76 
78  virtual void clear();
79 
81  virtual void updateUI();
82 
83  virtual QTreeWidget* treeWidget();
84 
86  virtual void removeTacticalGraphic(const makVrv::DtUniqueID& id);
87 
88  virtual void addTacticalGraphic( const makVrv::DtUniqueID& id, const std::string& name, const std::string& ovrName );
89  virtual void renameTacticalGraphic(const makVrv::DtUniqueID& id, const std::string& newName);
90  virtual QTreeWidgetItem* findOverlayParentItem( const std::string& name);
91  virtual QTreeWidgetItem* findItem(const makVrv::DtUniqueID& id);
92  virtual void moveTacticalGraphic( const makVrv::DtUniqueID& id, const std::string& toLayer );
93  virtual void clearOverlays();
94  virtual bool isOverlaySelected(const std::string& name) const;
95 
96  virtual void setOverlayFlagsForItem(QTreeWidgetItem*);
97 
98  boost::signal<void ()> signal_addOverlay;
99  boost::signal<void (const makVrv::DtUniqueID& id, const std::string& )> signal_itemMovedToOverlay;
100  boost::signal<void (const std::string&, const std::string& )> signal_renameOverlay;
101  boost::signal<void (const std::string&)> signal_removeOverlay;
102  boost::signal<void (const std::string&, bool flag)> signal_lockOverlay;
103  boost::signal<void (const std::string&)> signal_saveOverlayAsShapeFiles;
104  boost::signal<void (const std::string&)> signal_importShapeFileAsOverlay;
105  boost::signal<void (const makVrv::DtSelectionManager::IdSet&)> signal_selectItems;
106 
107  protected slots:
108 
109  virtual void onMarkingTextChanged(QTreeWidgetItem*, const QString&);
110 
112  void slot_addOverlayButtonClicked();
113 
115  void slot_removeOverlayButtonClicked();
116 
118  void slot_editOverlayButtonClicked();
119 
121  void slot_lockOverlayButtonClicked();
122 
124  void slot_saveOverlayAsShapeFilesButtonClicked();
125 
127  void slot_importShapeFileAsOverlayButtonClicked();
128 
130  void slot_itemClicked(QTreeWidgetItem* item, int column );
131 
133  void slot_itemDoubleClicked(QTreeWidgetItem* item, int column );
134 
136  void slot_currentItemChanged( QTreeWidgetItem * current, QTreeWidgetItem * previous );
137 
139  void slot_itemChanged ( QTreeWidgetItem * item, int column );
140 
142  void slot_itemMoved(const QStringList& children, std::string overlay);
143 
145  void slot_hideOverlaysStateChanged( int state );
146 
147  protected:
148 
150  virtual void updateUI(QTreeWidgetItem* current);
151  virtual void changeVisibleBasedOnExternalFilterStatus(makVrv::DtUniqueID);
152  virtual void slot_onStateAdded(const makVrv::DtStateView<makVrv::DtVrlinkSimulatedBaseState>* state);
153  virtual void externalFiltersChanged();
154  virtual void scenarioEventUpdated(const makVrv::DtStateView<DtVrlinkSimulatedEnvironmentProcess>*);
155  virtual void processItemSelectionChanged();
156  virtual void slot_overlayFlagsChanged(const std::string&, int);
157  virtual void slot_overlayHidden(const std::string&, bool);
158 
159  public:
168 
169  protected:
172  std::string myLastSelectedText;
173 
174  typedef std::map<std::string, QTreeWidgetItem*> TreeListByName;
176 
177  typedef std::map<makVrv::DtUniqueID, QTreeWidgetItem*> TreeListByID;
179 
181  };
182 
185  {
186  Q_OBJECT
187 
188  public:
191 
192  virtual QWidget* createEditor(QWidget *parent, const QStyleOptionViewItem &option,
193  const QModelIndex &index) const;
194 
195  protected slots:
196  virtual void editingFinished();
197 
198  signals:
199  void markingTextChanged(QTreeWidgetItem*, const QString&);
200 
201  protected:
204  mutable bool myNameChanged;
205  };
206 }
207 

Document ID: Generated on Thu Apr 12 03:15:37 EDT 2018 from SVN revision 187986
Copyright © 2005-2018 VT MÄK. All Rights Reserved (www.mak.com)