VR-Forces 4.7 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 #include <vrvUtil/signalslib.h>
10 #include "DtScenarioEventManagerDialogUI.hpp"
13 #include <vrvCore/DtStateView.h>
16 
17 #include <QDialog>
18 #include <QTreeWidget>
19 
20 class QTreeWidget;
21 class DtRwScenarioEvent;
22 class DtUUID;
23 
24 namespace makVrf
25 {
28  {
29  public:
32 
35 
36  boost::signal<void (const DtUUID&)> signal_startEvent;
37  boost::signal<void (const DtUUID&)> signal_stopEvent;
38  boost::signal<void (const DtUUID&)> signal_resetEvent;
39  boost::signal<void (const DtUUID&, bool)> signal_setEventEnabled;
40 
41  protected:
42  virtual void mousePressEvent(QMouseEvent *event);
43  };
44 
47  {
48  public:
51 
52  virtual bool operator<(const QTreeWidgetItem& other) const;
53  virtual QVariant data(int col, int role) const;
54  };
55 
60  {
61  Q_OBJECT
62 
63  public:
64  //CTOR
65  DtScenarioEventManagerDialog(makVrv::DtDe& de, QWidget* parent, const Qt::WindowFlags& flags = 0);
66 
67  //DTOR
69 
70  //Selects the scenario event given, if the id exists
71  virtual void selectScenarioEvent(makVrv::DtElementID);
72 
73  protected:
75  void setupGui();
76  void initConnections();
77 
79  virtual makVrv::DtElementID idFromItem(QTreeWidgetItem*) const;
80 
81  virtual void selectionChanged(const makVrv::DtSelectionManager::IdSet& selected, const makVrv::DtSelectionManager::IdSet& deselected);
82 
83  virtual void editingOrCreateChanged();
84 
86  virtual void slot_onStartEvent(const DtUUID&);
87 
89  virtual void slot_onResetEvent(const DtUUID&);
90 
92  virtual void slot_onStopEvent(const DtUUID&);
93 
95  virtual void slot_onSetEventEnabled(const DtUUID&, bool);
96 
98  virtual QString startTimeString(const DtRwScenarioEvent&) const;
99 
102 
104  virtual void slot_removed(makVrv::DtElementID);
105 
107  virtual void slot_scenarioEventStarted(makVrv::DtElementID);
108 
110  virtual void slot_scenarioEventStopped(makVrv::DtElementID);
111 
113  virtual void resolveLinkedEvents();
114 
115  protected slots:
117  virtual void itemClicked(QTreeWidgetItem*);
118 
120  virtual void itemDoubleClicked(QTreeWidgetItem*);
121 
123  virtual void createScenarioEvent();
124  virtual void createIntelligenceObject();
125 
127  virtual void deleteScenarioEvent();
128 
130  virtual void editScenarioEvent();
131 
133  virtual void updateButtons(QTreeWidgetItem*);
134 
135  virtual void dateAndTimeFormatChanged();
136 
137  protected:
142 
143  typedef std::map<makVrv::DtElementID, QTreeWidgetItem*> ScenarioEventsItemsMap;
145  std::map<DtUUID, std::set<makVrv::DtUniqueID> > myAwaitingScenarioEvents;
147 
148  public:
149  Ui_DtScenarioEventManagerDialogUI myUiImpl;
151  };
152 
155  {
156  public:
159 
161  static void registerInstance(makVrv::DtDe&, DtScenarioEventManagerDialogCreator*);
162 
163  virtual DtScenarioEventManagerDialog* create(makVrv::DtDe&, QWidget* parent, const Qt::WindowFlags& f = 0);
164 
165  protected:
168  };
169 }

Document ID: Generated on Fri Apr 26 21:53:14 EDT 2019 from SVN revision 197883
Copyright © 2005-2019 VT MAK. All Rights Reserved (www.mak.com)