VR-Forces 4.6 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtObserverSettingsItems.h
Go to the documentation of this file.
1 /******************************************************************************
2  * Copyright (c) 2010 MAK Technologies, Inc.
3  * All rights reserved.
4  *****************************************************************************/
5 /******************************************************************************
6  * $RCSfile: DtObserverSettingsItems.h,v $ $Revision: 1.8 $ $State: Exp $
7  *****************************************************************************/
8 
12 
13 #pragma once
14 
15 #include <vrvCoreQt/vrvCoreQt.h>
16 #include <vrvCoreQt/DtMenu.h>
20 #include <QtWidgets/QToolButton>
21 #include <QtWidgets/QMenu>
22 #include <map>
23 
24 namespace makVrv
25 {
26 
27  class DtInputDriver;
28  class DtObserver;
29  class DtObserverModeItem;
30  class DtObserverModeSettingItem;
31  class DtObserverAdvancedItem;
32  class DtObserverModelSetItem;
33  class DtObserverQMenu;
34  class DtSetModelSetMenu;
35 
39  {
40  Q_OBJECT;
41  public:
43 
44  virtual ~DtObserverModeSettingItem();
45 
47  virtual QAction* createAction(DtDe&, QWidget* parent);
48 
49  QAction* qAction();
50 
52  virtual void on_aboutToShow();
53 
54  protected:
55 
57  virtual void on_triggered();
58 
59  protected:
62  };
63 
64 
68  public DtDeObserver
69  {
70  public:
72 
73  virtual ~DtSetObserverModeMenu();
74 
76  virtual QMenu* createMenu( DtDe&, QWidget* parent );
77 
78  protected:
79  virtual void setMenuTitle( const QString& observerName );
80 
81  // For Display Engine subject observer
82  virtual void slot_activate( DtDe* subject );
83  virtual void slot_deactivate( DtDe* ) {}
84 
85  virtual void slot_currentObserverChanged( DtInputDriver* inputDriver,
86  DtObserver* observer );
87  virtual void slot_observerDestroyed( DtInputDriver* inputDriver,
88  DtObserver* observer );
89  virtual void slot_observerCreated( DtInputDriver* inputDriver,
90  DtObserver* observer );
91 
92  virtual void slot_observerModeAdded( int modeId );
93  virtual void slot_observerModeNameChanged( int modeId );
94  virtual void slot_observerModeToBeRemoved( int modeId );
95 
96  protected:
97  typedef std::map<int, DtObserverModeItem*> ItemMap;
98 
101  };
102 
106  {
107  Q_OBJECT;
108  public:
110 
111  virtual ~DtObserverModeItem();
112 
114  virtual QAction* createAction(DtDe&, QWidget* parent);
115 
116  QAction* qAction();
117 
118  protected:
119 
121  virtual void on_triggered();
122 
124  virtual void on_aboutToShow();
125 
126  protected:
129  };
130 
131 
135  {
136  Q_OBJECT;
137  public:
139 
140  virtual ~DtObserverAdvancedItem();
141 
143  virtual QAction* createAction(DtDe&, QWidget* parent);
144 
145  QAction* qAction();
146 
147  protected:
148 
150  virtual void on_triggered();
151 
152  protected:
155  };
156 
160  : public QAction
161  , public DtDeObserver
162  {
163  Q_OBJECT;
164 
165  public:
166  DtSetModelSetAction( DtDe& de, QWidget* parent );
167  virtual ~DtSetModelSetAction();
168 
169  protected slots:
170 
172  virtual void on_aboutToShow();
173 
174  protected:
175 
176  virtual void setIconFromModelSet( int modelSet );
177 
178  // Notification that the current observer has changed modes
179  virtual void slot_observerModeChanged( DtObserver*, int newObserverMode );
180 
181  virtual void slot_currentObserverChanged( DtInputDriver*,
182  DtObserver* observer );
183 
184  virtual void slot_observerAboutToBeDestroyed( DtInputDriver*,
185  DtObserver* observer );
186 
187  virtual void slot_observerModeModelSetChanged( int modeId );
188 
189  virtual void slot_activate( DtDe* subject );
190 
191  virtual void slot_deactivate( DtDe* ) {}
192 
193  protected:
197  };
198 
202  {
203  public:
204  DtSetModelSetToolButton( DtDe& de, QWidget * parent = 0 );
205  };
206 
210  {
211  public:
212 
215  virtual QWidget* create( DtDe& de, QWidget* parent, const Qt::WindowFlags& flags);
216  };
217 
222  {
223  Q_OBJECT;
224  public:
226 
227  virtual ~DtObserverMenuModelSetItem();
228 
230  virtual QAction* createAction(DtDe&, QWidget* parent);
231 
232  QAction* qAction();
233 
234  protected:
237 
238  };
239 
243  {
244  public:
245  DtSetModelSetMenu(DtDe& de);
246 
247  virtual ~DtSetModelSetMenu();
248 
250  virtual QMenu* createMenu( DtDe&, QWidget* parent );
251 
254  virtual void setCurrentModelSet( int modelSet );
255 
256  protected:
257  virtual void setIconFromModelSet( QAction* action, int modelSet );
258 
259  virtual void slot_activate(DtDe* de);
260  virtual void slot_deactivate(DtDe* de) {}
261 
262  protected:
263  // map of model set to item
264  typedef std::map<int, DtObserverModelSetItem*> ItemMap;
265 
268  };
269 
273  {
274  Q_OBJECT;
275  public:
277 
278  virtual ~DtObserverModelSetItem();
279 
281  virtual QAction* createAction(DtDe&, QWidget* parent);
282 
283  QAction* qAction();
284 
285  protected:
286 
288  virtual void on_triggered();
289 
290  protected:
293  };
294 
298  public DtDeObserver
299  {
300  public:
301  DtObserverSettingItem(DtDe& de, const std::string& itemName, int settingKey );
302 
303  virtual ~DtObserverSettingItem();
304 
305  //Override create action to connecto to DtDe signals.
306  QAction* createAction(DtDe& de, QWidget* parent);
307 
308  protected:
309 
310  //Set the value due to being triggered.
311  virtual void setValue(bool value);
312 
313  //Get the current value.
314  virtual bool getValue() const;
315 
316  // Notification that the current observer has changed modes
317  virtual void slot_observerModeChanged( DtObserver*, int newObserverMode );
318 
319  virtual void slot_terrainChanged();
320 
321  virtual void slot_observerModeModelSetOrIs2DChanged( int modeId );
322 
323  virtual void slot_observerModeSettingChanged( int modeId, int settingId );
324 
325  virtual void slot_currentObserverChanged( DtInputDriver*,
326  DtObserver* observer );
327 
328  virtual void slot_observerAboutToBeDestroyed( DtInputDriver*,
329  DtObserver* observer );
330 
331  virtual void updateEnabled();
332 
333  // For Display Engine subject observer
334  virtual void slot_activate( DtDe* subject );
335  virtual void slot_deactivate( DtDe* ) {}
336 
337 
338  protected:
342 
344  };
345 }

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)