VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
simulationCommandMenu.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2015 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
10 
11 #pragma once
12 
13 #if !defined(Q_MOC_RUN)
14 #include <vrvUtil/signalslib.h>
19 
21 #endif
22 #include <boost/signals2.hpp>
23 
24 #include <QtWidgets/QMenu>
25 
26 #include <matrix/vlVector.h>
27 
28 class QEvent;
29 class DtSimCommand;
30 class DtSimTask;
31 class DtEntityType;
32 class QDialog;
33 
34 namespace makVrv
35 {
36  class DtSimEntry;
37 }
38 
39 namespace makVrf
40 {
41  class DtVrfSimulationCommandAction;
42  class DtSimCommandObjectWrapper;
43  class DtVrfTaskSetAction;
44  class DtMenu;
45  class DtCommandAssignmentWidgetInterface;
46  class DtEntityMapperKey;
47  class DtEntityCreatePalette;
48 
52  {
53  Q_OBJECT
54 
55  public:
57  virtual ~DtSimulationCreateMenu();
58  virtual QMenu* createMenu( makVrv::DtDe& de, QWidget* parent );
59 
60  protected slots:
61  virtual void showPalette();
62 
63  signals:
64  void showPalette(const std::string&, const QString& title);
65  };
66 
68  {
69  Q_OBJECT
70 
71  public:
72  DtVrfSimulationCommandMenu(makVrv::DtDe&, const QString& title, QWidget* parent);
73 
74  virtual ~DtVrfSimulationCommandMenu();
75 
76  boost::signals2::signal<void (DtSimCommand&)> signal_addCommand;
77 
79  {
80  myEntitySet = i;
81  }
82 
84  {
85  return myEntitySet;
86  }
87 
88  boost::signals2::signal<void (const DtVrfObjectManipulationHandlerBaseClass::ObjectManipulationData&)> signal_createObject;
89 
91  virtual void setPartOfGlobalPlanDialog(bool);
92 
93  public:
94  virtual void slot_onCommandComplete(const DtSimCommandObjectWrapper&);
95  virtual void slot_onCommandActivated(const std::vector<DtUUID>&, const DtSimTask&);
96  virtual void slot_paletteCreated();
97  virtual void slot_paletteDestroyed();
98 
99  DtCommandAssignmentWidgetInterface* currentDialog() { return myCurrentDialog; };
100 
102  boost::signals2::signal<void (DtCommandAssignmentWidgetInterface*)> signal_dialogCreated;
103 
106  boost::signals2::signal<void ()> signal_dialogDestroyed;
107 
108  boost::signals2::signal<void ()> signal_paletteCreated;
109  boost::signals2::signal<void ()> signal_paletteDestroyed;
110 
111  protected slots:
112  virtual void dialogDestroyed();
113  virtual void paletteDialogDestroyed();
114  virtual void showPalette(const std::string&, const QString&);
115 
116  protected:
117  virtual bool eventFilter(QObject *, QEvent *);
118  virtual void actionAdded(QEvent*);
119  virtual bool shouldAddAsPartOfMenu(const QList<QAction*>& acts, QAction* toMatch) const;
120  virtual void creatingObject();
121 
122  virtual void slot_onCreateObject(DtEntityMapperKey, std::string markingText, DtUUID initialUUID);
123  virtual void slot_onObjectCreated(const DtVrfObjectManipulationHandlerBaseClass::ObjectManipulationData&);
124  virtual void slot_stoppedCreatingObject();
125 
127  virtual void setPartOfGlobalPlanDialog(const QList<QAction*>& acts, bool);
128 
129  virtual void slot_createTaskSetCommandDialog(int menuItemType, QWidget* parent, DtVrfTaskSetAction* forAction,
130  const std::vector<makVrv::DtSimEntry*>& data, int partOfPlan);
131 
132  virtual void slot_createRadioCommandDialog(int menuItemType, QWidget* parent, DtVrfTaskSetAction* forAction,
133  const std::vector<makVrv::DtSimEntry*>& data, int partOfPlan);
134 
135  protected:
138  std::vector<DtVrfSimulationCommandAction*> myConnections;
144  QWidget* myPaletteDialog;
145  };
146 
148  {
149  public:
150 
153 
155  virtual ~DtSimulationCommandMenu();
156 
158  virtual QMenu* createMenu(makVrv::DtDe&, QWidget* parent);
159 
160  static DtSimulationCommandMenu& instance(makVrv::DtDe&);
161  static DtSimulationCommandMenu* menuInstance(makVrv::DtDe& de);
162 
163  virtual DtSimulationCommandMenu* newInstance();
164 
166  virtual bool useNewStyleTaskAndSetMenus() const;
167 
168  public:
170  virtual DtSubMenuConfiguration& menuConfiguration();
171 
173  virtual DtConfigurableMenuAssembler& menuAssembler();
174 
175  protected:
177  virtual void createMenuConfiguration(makVrv::DtDe& de);
178 
179  protected:
183  };
184 }
UUID is a unique ID wrapper class.
Definition: rwUUID.h:222
Definition: entityMapperKey.h:23
makVrv::DtSignalConnectionManager myManagedConnections
Definition: simulationCommandMenu.h:142
QWidget * myPaletteDialog
Definition: simulationCommandMenu.h:144
#define DT_DLL_VRFGUICOREQT
Definition: vrfGuiCoreQt.h:26
Contains makVrv:DtSelectionManager class.
static DtConfigurableMenuAssembler * theMenuAssembler
Variables used to store initial menu configuration.
Definition: simulationCommandMenu.h:181
Definition: simulationCommandMenu.h:67
Subclass for additional functionality needed by VRF.
Definition: subMenuConfiguration.h:73
bool myCreatingObject
Definition: simulationCommandMenu.h:141
Menu that is used to show all palettes available, and, when selected, bring up a palette and signal w...
Definition: simulationCommandMenu.h:51
makVrv::DtDe & myDe
Definition: simulationCommandMenu.h:137
boost::signals2::signal< void()> signal_paletteDestroyed
Definition: simulationCommandMenu.h:109
boost::signals2::signal< void()> signal_paletteCreated
Definition: simulationCommandMenu.h:108
Definition: simulationCommandMenu.h:147
boost::signals2::signal< void(DtSimCommand &)> signal_addCommand
Definition: simulationCommandMenu.h:76
A widget class for encapsulating radio commands for tasks or sets.
Definition: commandAssignmentWidgetInterface.h:32
makVrv::DtSignalConnectionManager myCreationConnections
Definition: simulationCommandMenu.h:143
makVrv::DtSelectionManager::IdSet myEntitySet
Definition: simulationCommandMenu.h:136
DtCommandAssignmentWidgetInterface * myCurrentDialog
Definition: simulationCommandMenu.h:139
void setEntitySet(const makVrv::DtSelectionManager::IdSet &i)
Definition: simulationCommandMenu.h:78
const makVrv::DtSelectionManager::IdSet & entitySet() const
Definition: simulationCommandMenu.h:83
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:24
DtSimCommand is an abstract base class from which commands can derive.
Definition: simCommand.h:32
boost::signals2::signal< void(const DtVrfObjectManipulationHandlerBaseClass::ObjectManipulationData &)> signal_createObject
Definition: simulationCommandMenu.h:88
Definition: simCommandObjectWrapper.h:44
Definition: vrfObjectManipulationHandlerBaseClass.h:477
The abstract base menu class.
Definition: DtMenu.h:26
Base class to provide boost signal/slot management.
DtSimTask is an abstract base class from which real tasks can derive.
Definition: simTask.h:33
Definition: translator.h:58
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
Contains makVrf::DtTaskSetMenu, makVrf::DtVrfTaskSetAction, and makVrf::DtTaskSetMenuItem class...
Definition: vrfTaskSetAction.h:92
Definition: configurableMenu.h:273
bool myConnectedToCreateMenu
Definition: simulationCommandMenu.h:140
std::vector< DtVrfSimulationCommandAction * > myConnections
Definition: simulationCommandMenu.h:138
std::set< DtUniqueID > IdSet
Definition: DtSelectionManager.h:32
static DtSubMenuConfiguration * theMenuConfiguration
Definition: simulationCommandMenu.h:182
Used by menu classes to modify menu registrations in a menu.
Definition: configurableMenu.h:120
boost::signals2::signal< void()> signal_dialogDestroyed
Signal sent when the current editing dialog is destroyed.
Definition: simulationCommandMenu.h:106

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)