VR-Forces 4.6.1 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
selectionGroupWidget.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
10 
11 #pragma once
12 
13 #include <vrvCoreQt/DtPage.h>
16 #include <vrvCore/DtStateView.h>
17 #include <vrvCore/DtEntityState.h>
19 #include <QtWidgets/QWidget>
20 
21 #include <boost/unordered_map.hpp>
22 namespace makVrv
23 {
24  class DtDe;
25 }
26 
27 class QTreeWidgetItem;
28 class QPushButton;
29 class QVBoxLayout;
30 class QHBoxLayout;
31 
32 namespace makVrf
33 {
34  class DtVrfFilteredListView;
35 
38  {
39  Q_OBJECT
40 
41  public:
42 
44  DtSelectionGroupWidget( makVrv::DtDe& de, QWidget* parent = 0, Qt::WindowFlags flags = 0);
45 
47  virtual ~DtSelectionGroupWidget();
48 
50  virtual QIcon icon();
51 
53  virtual QString title();
54 
56  virtual const std::string& pageClassName() const;
57 
58  protected:
59 
61  virtual void activate();
62 
64  virtual void deactivate();
65 
67  void setupUi();
68 
71  virtual void initialize();
72 
74  virtual void showEvent(QShowEvent*);
75 
77  virtual void onSelectionGroupAdded(std::string);
78 
80  virtual void onSelectionGroupRemoved(std::string);
81 
83  virtual void onSelectionGroupRenamed(std::string, std::string);
84 
86  virtual void setupFromSelectionGroupManager();
87 
89  virtual void onSelectionChanged();
90 
92  virtual void onSelectionGroupSelected(std::string);
93 
95  virtual void onItemsAddedToSelectionGroup(std::string, DtSelectionGroupManager::GroupItems);
96 
98  virtual void onItemsRemovedFromSelectionGroup(std::string, DtSelectionGroupManager::GroupItems);
99 
101  virtual void onSelectionGroupsCleared();
102 
104  virtual void onSelectionGroupCleared(std::string);
105 
107  virtual void slot_rightClickOnItem(QPoint global);
108 
110  virtual std::set<std::string> selectionGroupsSelected() const;
111 
112  protected slots:
113  virtual void onAddSelectionGroup();
114  virtual void onRemoveSelectionGroup();
115  virtual void onItemSelectionChanged();
116  virtual void onGroupRenamed();
117  virtual void onRemoveFromSelectionGroup();
118 
119  protected:
121  virtual QSize sizeHint() const;
122 
124  virtual void validateButtons();
125 
127  virtual QString getGroupName(const QString& initialName) const;
128 
129  virtual void onItemRemovedFromSelectionGroups(DtUUID);
130 
131  virtual void onFilterListItemAboutToBeRemoved(QTreeWidgetItem*);
132 
133  virtual void onStateAdded(const makVrv::DtStateView<makVrv::DtVrlinkSimulatedBaseState>*);
134 
135  public:
136  QVBoxLayout* myMainLayout;
137  QHBoxLayout* myButtonLayout;
144 
145  protected:
146  std::string myClassName;
147 
149  {
151  std::map<DtUUID, QTreeWidgetItem*> items;
152  };
153 
154  typedef std::map<std::string, SelectionGroup> SelectionGroups;
156 
157  typedef std::map<QTreeWidgetItem*, std::string> GroupListItems;
159 
160  typedef boost::unordered_map<DtUUID, std::set<std::string> > WaitingForDiscovery;
162  };
163 
167  {
168  public:
169 
172 
175 
179  virtual std::string pageClassName() const;
180 
182  virtual makVrv::DtPage* create(QWidget* parent = 0, Qt::WindowFlags f = 0);
183  };
184 }
185 

Document ID: Generated on Wed Jul 25 16:57:45 EDT 2018 from SVN revision 190790
Copyright © 2005-2018 VT MÄK. All Rights Reserved (www.mak.com)