VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
radioMenu.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
10 
11 #pragma once
12 
13 #if !defined(Q_MOC_RUN)
17 #include <vrvCoreQt/DtMenu.h>
22 #include <vrvCoreQt/DtMenuItem.h>
23 #include <vrfutil/rwUUID.h>
24 #include <boost/signals2.hpp>
25 
27 #endif
28 
29 namespace makVrv
30 {
31  class DtDe;
32  class DtSimEntry;
33 };
34 
35 class QEvent;
36 class DtSimTask;
37 
38 namespace makVrf
39 {
40  class DtVrfTaskSetMenu;
41  class DtVrfTaskSetAction;
42  class DtCommandAssignmentWidgetInterface;
43 
45  {
46  public:
47  DtRadioMenuManager() : makVrv::DtMenuManager()
48  {
49  }
50 
51  void clear()
52  {
53  myMenus.clear();
54  myMenuItems.clear();
55  }
56  };
57 
59  {
60  public:
62  : makVrv::DtQtMenuAssembler(de)
63  {
64  }
65 
67  {
68  myMenuManager.clear();
69  myMenuItemBuilders.clear();
70  }
71 
73  virtual QMenuBar* menuBar()
74  {
75  return 0;
76  }
77 
80  {
81  return myMenuManager;
82  }
83 
86  {
87  return myMenuManager.findMenu(path);
88  }
89 
91  {
92  return myDe;
93  }
94 
95  protected:
97  };
98 
100  {
101  public:
102 
104  DtRadioMenu(makVrv::DtDe& de, const std::string& menuIdName);
105 
107  virtual ~DtRadioMenu();
108 
110  virtual QMenu* createMenu(makVrv::DtDe&, QWidget* parent);
111 
113  boost::signals2::signal<void (const std::vector<DtUUID>&, const DtSimTask&)> signal_commandActivated;
114 
115  protected:
116  virtual void slot_createTaskSetDialog(int menuItemType, QWidget*, DtVrfTaskSetAction*,
117  const std::vector<makVrv::DtSimEntry*>&, int, DtVrfTaskSetMenu* menu);
118 
119  virtual void slot_commandActivated(const std::vector<DtUUID>&, const DtSimTask&, DtVrfTaskSetMenu* menu);
120 
121  protected:
122  virtual QString title() const = 0;
123  virtual DtVrfTaskSetMenu* assembleMenu() = 0;
124  };
125 
129  {
130  Q_OBJECT
131  public:
132  //CTOR
133  DtRadioItem(makVrv::DtDe& de, const std::string& className);
134 
135  //DTOR
136  virtual ~DtRadioItem();
137  };
138 
141  {
142  Q_OBJECT
143 
144  public:
145  DtVrfRadioAction(QWidget*, makVrv::DtDe&);
146 
147  virtual ~DtVrfRadioAction();
148 
150  boost::signals2::signal<void (int menuItemType, QWidget*, DtVrfTaskSetAction*,
151  const std::vector<makVrv::DtSimEntry*>&, int, DtVrfTaskSetMenu*)> signal_createCommandDialog;
152 
154  boost::signals2::signal<void (int menuItemType, QWidget*, DtVrfTaskSetAction*,
155  const std::vector<makVrv::DtSimEntry*>&, int, DtVrfTaskSetMenu*)> signal_createTaskSetDialog;
156 
157  virtual void setSignalDialogCreation(bool);
158  bool signalDialogCreation() const
159  {
160  return mySignalDialogCreation;
161  }
162 
163  protected slots:
164  virtual void dialogDestroyed(DtCommandAssignmentWidgetInterface*);
165 
166  protected:
167  virtual void on_triggered();
168 
169  virtual void slot_commandActivated(const std::vector<DtUUID>& n, const DtSimTask& task, DtVrfTaskSetMenu* menu);
170 
171  protected:
174  };
175 }
DtRadioMenuAssembler(makVrv::DtDe &de)
Definition: radioMenu.h:61
Definition: vrfTaskSetMenu.h:51
makVrv::DtDe & de()
Definition: radioMenu.h:90
Contains makVrv:DtSelectionManager class.
Definition: radioMenu.h:99
Contains the DtUUID class declaration.
A Qt implementation of a DtMenuAssembler.
Definition: DtQtMenuAssembler.h:26
Definition: radioMenu.h:58
Contains makVrv::DtMenuManager class.
void clear()
Definition: radioMenu.h:51
A widget class for encapsulating radio commands for tasks or sets.
Definition: commandAssignmentWidgetInterface.h:30
Definition: radioMenu.h:44
Contains makVrv::DtQtMenuAssembler class.
bool mySignalDialogCreation
Definition: radioMenu.h:172
bool signalDialogCreation() const
Definition: radioMenu.h:158
The menu manager can be used to lookup registered QMenu and QAction objects based on their menu paths...
Definition: DtMenuManager.h:38
QMenu * findMenu(const makVrv::DtMenuPath &path)
Returns the QMenu for the given path.
Definition: radioMenu.h:85
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
DtRadioMenuManager()
Definition: radioMenu.h:47
a Class which represents a menu path. The specific strings are not menu text, but the names used when...
Definition: DtMenuPath.h:27
Action that is used for a radio item.
Definition: radioMenu.h:140
Contains makVrv::DtMenuConfiguration class.
The abstract base menu class.
Definition: DtMenu.h:23
Base class to provide boost signal/slot management.
boost::signals2::signal< void(int menuItemType, QWidget *, DtVrfTaskSetAction *, const std::vector< makVrv::DtSimEntry * > &, int, DtVrfTaskSetMenu *)> signal_createTaskSetDialog
Signals that a regular task/set dialog wants to be created (on behalf of radio menu) ...
Definition: radioMenu.h:155
DtSimTask is an abstract base class from which real tasks can derive. It manages the read/write capab...
Definition: simTask.h:30
makVrv::DtSignalConnectionManager myConnections
Definition: radioMenu.h:173
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
Contains makVrf::DtTaskSetMenu, makVrf::DtVrfTaskSetAction, and makVrf::DtTaskSetMenuItem class...
Definition: vrfTaskSetAction.h:106
virtual ~DtRadioMenuAssembler()
Definition: radioMenu.h:66
DtRadioMenuManager myMenuManager
Definition: radioMenu.h:96
#define DT_DLL_VRFGUITASKSETQT
Definition: vrfGuiTaskSetQt.h:22
virtual makVrv::DtMenuManager & menuManager()
Returns menu manager.
Definition: radioMenu.h:79
virtual QMenuBar * menuBar()
If main menu, returns menu bar to add menu to.
Definition: radioMenu.h:73
The radio item will present the user with a list of tasks or sets that are valid for the simulation o...
Definition: radioMenu.h:128
Contains makVrf::DtTaskSetMenu, makVrf::DtVrfTaskSetAction, and makVrf::DtTaskSetMenuItem class...
Definition: vrfTaskSetAction.h:37
boost::signals2::signal< void(int menuItemType, QWidget *, DtVrfTaskSetAction *, const std::vector< makVrv::DtSimEntry * > &, int, DtVrfTaskSetMenu *)> signal_createCommandDialog
Signals that a command dialog wants to be created (on behalf of radio menu)
Definition: radioMenu.h:151

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)