VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
quickLaunchWidget.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2015 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
11 
12 #pragma once
13 
14 #if !defined(Q_MOC_RUN)
17 #include <vrvCoreQt/DtPage.h>
21 #include <vrvCore/DtUniqueID.h>
22 #include <vrvCore/DtStateView.h>
24 #endif
25 #include <boost/signals2.hpp>
26 
27 #include <QtWidgets/QWidget>
28 #include <QtWidgets/QToolBar>
29 
30 class QHBoxLayout;
31 class QLabel;
32 class QToolButton;
33 class QVBoxLayout;
34 class QScrollArea;
35 class QSpacerItem;
36 
37 namespace makVrv
38 {
39  class DtDe;
40 }
41 
42 class QTimer;
43 
44 namespace makVrf
45 {
47  {
48  Q_OBJECT
49  public:
51  DtQuickLaunchWidget( makVrv::DtDe& de, QWidget* parent = 0, Qt::WindowFlags flags = 0);
52 
54  virtual ~DtQuickLaunchWidget();
55 
57  virtual QIcon icon();
58 
61  virtual makVrv::DtQIconConfigurations qIconConfigurations() const;
62 
64  virtual QString title();
65 
67  virtual const std::string& pageClassName() const;
68 
69  protected:
71  virtual void setupUi();
72  virtual void init();
73 
74  virtual void initializeScenarioEvents();
75  virtual void scenarioEventRemoved(makVrv::DtUniqueID);
76  virtual void scenarioEventStarted(makVrv::DtUniqueID);
77  virtual void scenarioEventStopped(makVrv::DtUniqueID);
78  virtual void scenarioEventUpdated(const makVrv::DtStateView<DtVrlinkSimulatedEnvironmentProcess>*);
79 
80  virtual void removeFromOrdinalOrder(QToolButton* b);
81 
82  virtual void initializeGlobalPlans();
83  virtual void clearGlobalPlans();
84  virtual void receivedGlobalPlans(const DtVrfGlobalPlansManager::GlobalPlanInformation&,
85  const std::string&);
86  virtual void addQuickLaunchPlan(makVrv::DtUniqueID,
87  const DtVrfGlobalPlansManager::GlobalPlanWithState&, const std::string& server);
88  virtual void removeQuickLaunchPlan(makVrv::DtUniqueID);
89 
90  virtual void positionButton(int ordinal, QToolButton*);
91  virtual void updateEventButtonStatus(QToolButton* button, const DtRwScenarioEvent& evt);
92 
93  virtual void scenarioEventOptionsChanged();
94 
95  virtual bool anyValidQuickLaunchEvents() const;
96  virtual void activate() override;
97  virtual void deactivate() override;
98 
99  protected slots:
100  virtual void changeEventStatus();
101  virtual void launchGlobalPlan();
102 
103  public:
104  QVBoxLayout* myMainLayout;
109  QSpacerItem* myQuickLaunchSpacer;
110 
112  {
113  std::string image;
115  };
116 
118  {
119  std::string image;
121  std::string server;
122  };
123 
124  typedef std::map<makVrv::DtUniqueID, QuickLaunchData> QuickLaunchEvents;
126 
127  typedef std::map<makVrv::DtUniqueID, QuickLaunchPlanData> QuickLaunchPlans;
129 
130  typedef std::map<int, std::vector<QToolButton*> > OrdinalOrder;
132 
133  protected:
135  bool myActivated = false;
136  };
137 
140  {
141  public:
142 
145 
147  virtual ~DtQuickLaunchWidgetCreator();
148 
152  virtual std::string pageClassName() const;
153 
155  virtual makVrv::DtPage* create(QWidget* parent = 0, Qt::WindowFlags f = 0);
156  };
157 }
QScrollArea * myQuickLaunchCanvasScrollArea
Definition: quickLaunchWidget.h:108
std::string server
Definition: quickLaunchWidget.h:121
Contains makVrv::DtWidgetBuilder class.
std::map< int, std::vector< QToolButton * > > OrdinalOrder
Definition: quickLaunchWidget.h:130
Contains makVrv::DtPage class.
#define DT_DLL_VRFGUICOREQT
Definition: vrfGuiCoreQt.h:26
std::map< makVrv::DtUniqueID, QuickLaunchData > QuickLaunchEvents
Definition: quickLaunchWidget.h:124
QuickLaunchEvents myQuickLaunchEvents
Definition: quickLaunchWidget.h:125
Contains makVrv::DtStateView class.
The page creator. This class should be extended by all page classes.
Definition: DtPage.h:121
QSpacerItem * myQuickLaunchSpacer
Definition: quickLaunchWidget.h:109
QuickLaunchPlans myQuickLaunchPlans
Definition: quickLaunchWidget.h:128
std::map< makVrv::DtUniqueID, QuickLaunchPlanData > QuickLaunchPlans
Definition: quickLaunchWidget.h:127
std::map< makVrv::DtUniqueID, GlobalPlanWithState > GlobalPlanInformation
Definition: vrfGlobalPlansManager.h:69
OrdinalOrder myOrdinalOrder
Definition: quickLaunchWidget.h:131
Definition: quickLaunchWidget.h:111
QToolButton * button
Definition: quickLaunchWidget.h:114
QVBoxLayout * myMainLayout
Definition: quickLaunchWidget.h:104
QLabel * myNoQuickLaunchEventsLabel
Definition: quickLaunchWidget.h:105
QWidget * myQuickLaunchCanvas
Definition: quickLaunchWidget.h:106
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
The page is a single widget component which is viewed in a page collection.
Definition: DtPage.h:30
QToolButton * button
Definition: quickLaunchWidget.h:120
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
Definition: quickLaunchWidget.h:117
Definition: quickLaunchWidget.h:46
The DtRwScenarioEvent class will define the contents of a scenario event and it&#39;s current status...
Definition: rwScenarioEvent.h:68
QVBoxLayout * myQuickLaunchCanvasLayout
Definition: quickLaunchWidget.h:107
Base class to provide boost signal/slot management.
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
std::string image
Definition: quickLaunchWidget.h:119
The creator class needed to be used to create a DtQuickLaunchWidget.
Definition: quickLaunchWidget.h:139
Contains makVrv::DtUniqueID type.
std::string image
Definition: quickLaunchWidget.h:113
makVrv::DtSignalConnectionManager myConnections
Definition: quickLaunchWidget.h:134
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:72
A collection of icon configurations. The collection maintains flags indicating whether to generate ic...
Definition: DtQIconConfiguration.h:131
Definition: vrfGlobalPlansManager.h:57

Document ID: Generated on Tue Sep 24 19:28:17 EDT 2024 from SVN revision 269799
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)