VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
scenarioEventManagerDialog.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
6 #pragma once
7 
8 #if !defined(Q_MOC_RUN)
9 #include <vrvUtil/signalslib.h>
11 #include "DtScenarioEventManagerDialogUI.hpp"
14 #include <vrvCore/DtStateView.h>
17 #endif
18 #include <boost/signals2.hpp>
19 
20 #include <QDialog>
21 #include <QTreeWidget>
22 
23 class QTreeWidget;
24 class DtRwScenarioEvent;
25 class DtUUID;
26 
27 namespace makVrf
28 {
31  {
32  public:
35 
38 
39  boost::signals2::signal<void (const DtUUID&)> signal_startEvent;
40  boost::signals2::signal<void (const DtUUID&)> signal_stopEvent;
41  boost::signals2::signal<void (const DtUUID&)> signal_resetEvent;
42  boost::signals2::signal<void (const DtUUID&, bool)> signal_setEventEnabled;
43 
44  protected:
45  virtual void mousePressEvent(QMouseEvent *event);
46  };
47 
50  {
51  public:
54 
55  virtual bool operator<(const QTreeWidgetItem& other) const;
56  virtual QVariant data(int col, int role) const;
57  };
58 
63  {
64  Q_OBJECT
65 
66  public:
67  //CTOR
68  DtScenarioEventManagerDialog(makVrv::DtDe& de, QWidget* parent, const Qt::WindowFlags& flags = 0);
69 
70  //DTOR
72 
73  //Selects the scenario event given, if the id exists
74  virtual void selectScenarioEvent(makVrv::DtElementID);
75 
76  protected:
78  void setupGui();
79  void initConnections();
80 
82  virtual makVrv::DtElementID idFromItem(QTreeWidgetItem*) const;
83 
84  virtual void selectionChanged(const makVrv::DtSelectionManager::IdSet& selected, const makVrv::DtSelectionManager::IdSet& deselected);
85 
86  virtual void editingOrCreateChanged();
87 
89  virtual void slot_onStartEvent(const DtUUID&);
90 
92  virtual void slot_onResetEvent(const DtUUID&);
93 
95  virtual void slot_onStopEvent(const DtUUID&);
96 
98  virtual void slot_onSetEventEnabled(const DtUUID&, bool);
99 
101  virtual QString startTimeString(const DtRwScenarioEvent&) const;
102 
105 
107  virtual void slot_removed(makVrv::DtElementID);
108 
110  virtual void slot_scenarioEventStarted(makVrv::DtElementID);
111 
113  virtual void slot_scenarioEventStopped(makVrv::DtElementID);
114 
116  virtual void resolveLinkedEvents();
117 
118  protected slots:
120  virtual void itemClicked(QTreeWidgetItem*);
121 
123  virtual void itemDoubleClicked(QTreeWidgetItem*);
124 
126  virtual void createScenarioEvent();
127  virtual void createIntelligenceObject();
128 
130  virtual void deleteScenarioEvent();
131 
133  virtual void editScenarioEvent();
134 
136  virtual void updateButtons(QTreeWidgetItem*);
137 
138  virtual void dateAndTimeFormatChanged();
139 
140  protected:
145 
146  typedef std::map<makVrv::DtElementID, QTreeWidgetItem*> ScenarioEventsItemsMap;
148  std::map<DtUUID, std::set<makVrv::DtUniqueID> > myAwaitingScenarioEvents;
150 
151  public:
152  Ui_DtScenarioEventManagerDialogUI myUiImpl;
154  };
155 
158  {
159  public:
162 
164  static void registerInstance(makVrv::DtDe&, DtScenarioEventManagerDialogCreator*);
165 
166  virtual DtScenarioEventManagerDialog* create(makVrv::DtDe&, QWidget* parent, const Qt::WindowFlags& f = 0);
167 
168  protected:
171  };
172 }
UUID is a unique ID wrapper class.
Definition: rwUUID.h:222
Virtual base class.
Definition: DtVirtualBaseClass.h:22
bool myInCreationMode
Definition: scenarioEventManagerDialog.h:144
boost::signals2::signal< void(const DtUUID &)> signal_stopEvent
Definition: scenarioEventManagerDialog.h:40
#define DT_DLL_VRFGUICOREQT
Definition: vrfGuiCoreQt.h:26
virtual QVariant data(int col, int role) const
makVrv::DtDe & myDe
Definition: scenarioEventManagerDialog.h:141
Creator class. Register a subclass of this to return your own version of the DtScenarioEventManagerDi...
Definition: scenarioEventManagerDialog.h:157
virtual bool operator<(const QTreeWidgetItem &other) const
Contains makVrv:DtSelectionManager class.
Contains makVrv::DtStateView class.
For ID sorting numerically.
Definition: scenarioEventManagerDialog.h:49
DtScenarioEventManagerTreeWidget * myTreeWidget
Definition: scenarioEventManagerDialog.h:153
DtScenarioEventManagerTreeWidget class implemented for mouse down on icon.
Definition: scenarioEventManagerDialog.h:30
DtUniqueID DtElementID
The ElementID is a specific type of unique ID used to represent VR-Vantage uniquely defined elements...
Definition: DtUniqueID.h:26
ScenarioEventsItemsMap myScenarioEvents
Definition: scenarioEventManagerDialog.h:147
boost::signals2::signal< void(const DtUUID &, bool)> signal_setEventEnabled
Definition: scenarioEventManagerDialog.h:42
DtScenarioEventManagerDialog.
Definition: scenarioEventManagerDialog.h:62
std::map< makVrv::DtElementID, QTreeWidgetItem * > ScenarioEventsItemsMap
Definition: scenarioEventManagerDialog.h:146
Contains makVrv::DtVirtualBaseClass class.
Ui_DtScenarioEventManagerDialogUI myUiImpl
Definition: scenarioEventManagerDialog.h:152
boost::signals2::signal< void(const DtUUID &)> signal_resetEvent
Definition: scenarioEventManagerDialog.h:41
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:24
QPixmap myGrayscaleImage
Definition: scenarioEventManagerDialog.h:149
The DtRwScenarioEvent class will define the contents of a scenario event and it&#39;s current status...
Definition: rwScenarioEvent.h:68
Base class to provide boost signal/slot management.
boost::signals2::signal< void(const DtUUID &)> signal_startEvent
Definition: scenarioEventManagerDialog.h:39
makVrv::DtSignalConnectionManager myConnectionManager
Definition: scenarioEventManagerDialog.h:142
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
DtScenarioEventManagerDialog * myDialog
Only create once.
Definition: scenarioEventManagerDialog.h:170
std::map< DtUUID, std::set< makVrv::DtUniqueID > > myAwaitingScenarioEvents
Definition: scenarioEventManagerDialog.h:148
makVrv::DtSignalConnectionManager mySelectionSignals
Definition: scenarioEventManagerDialog.h:143
std::set< DtUniqueID > IdSet
Definition: DtSelectionManager.h:32

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)