VR-Forces 4.6.1 Class Documentation
 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 #include <vrvUtil/signalslib.h>
14 
17 #include <vrvCoreQt/DtMenu.h>
22 #include <vrvCoreQt/DtMenuItem.h>
23 #include <vrfutil/rwUUID.h>
24 
26 
27 namespace makVrv
28 {
29  class DtDe;
30  class DtSimEntry;
31 };
32 
33 class QEvent;
34 class DtSimTask;
35 
36 namespace makVrf
37 {
38  class DtVrfTaskSetMenu;
39  class DtVrfTaskSetAction;
40  class DtCommandAssignmentWidget;
41 
43  {
44  public:
45  DtRadioMenuManager() : makVrv::DtMenuManager()
46  {
47  }
48 
49  void clear()
50  {
51  myMenus.clear();
52  myMenuItems.clear();
53  }
54  };
55 
57  {
58  public:
60  : makVrv::DtQtMenuAssembler(de)
61  {
62  }
63 
65  {
66  myMenuManager.clear();
67  myMenuItemBuilders.clear();
68  }
69 
71  virtual QMenuBar* menuBar()
72  {
73  return 0;
74  }
75 
77  virtual makVrv::DtMenuManager& menuManager()
78  {
79  return myMenuManager;
80  }
81 
83  QMenu* findMenu(const makVrv::DtMenuPath& path)
84  {
85  return myMenuManager.findMenu(path);
86  }
87 
89  {
90  return myDe;
91  }
92 
93  protected:
95  };
96 
98  {
99  public:
100 
102  DtRadioMenu(makVrv::DtDe& de, const std::string& menuIdName);
103 
105  virtual ~DtRadioMenu();
106 
108  virtual QMenu* createMenu(makVrv::DtDe&, QWidget* parent);
109 
111  boost::signal<void (const std::vector<DtUUID>&, const DtSimTask&)> signal_commandActivated;
112 
113  protected:
114  virtual void slot_createTaskSetDialog(int menuItemType, QWidget*, DtVrfTaskSetAction*,
115  const std::vector<makVrv::DtSimEntry*>&, int, DtVrfTaskSetMenu* menu);
116 
117  virtual void slot_commandActivated(const std::vector<DtUUID>&, const DtSimTask&, DtVrfTaskSetMenu* menu);
118 
119  protected:
120  virtual QString title() const = 0;
121  virtual DtVrfTaskSetMenu* assembleMenu() = 0;
122  };
123 
127  {
128  public:
129  //CTOR
130  DtRadioItem(makVrv::DtDe& de, const std::string& className);
131 
132  //DTOR
133  virtual ~DtRadioItem();
134  };
135 
138  {
139  Q_OBJECT
140 
141  public:
142  DtVrfRadioAction(QWidget*, makVrv::DtDe&);
143 
144  virtual ~DtVrfRadioAction();
145 
147  boost::signal<void (int menuItemType, QWidget*, DtVrfTaskSetAction*,
148  const std::vector<makVrv::DtSimEntry*>&, int, DtVrfTaskSetMenu*)> signal_createCommandDialog;
149 
151  boost::signal<void (int menuItemType, QWidget*, DtVrfTaskSetAction*,
152  const std::vector<makVrv::DtSimEntry*>&, int, DtVrfTaskSetMenu*)> signal_createTaskSetDialog;
153 
154  virtual void setSignalDialogCreation(bool);
155  bool signalDialogCreation() const
156  {
157  return mySignalDialogCreation;
158  }
159 
160  protected slots:
161  virtual void dialogDestroyed();
162 
163  protected:
164  virtual void on_triggered();
165 
166  virtual void slot_commandActivated(const std::vector<DtUUID>& n, const DtSimTask& task, DtVrfTaskSetMenu* menu);
167 
168  protected:
170  };
171 }

Document ID: Generated on Wed Jul 25 16:57:45 EDT 2018 from SVN revision 190790
Copyright © 2005-2018 VT MÄK. All Rights Reserved (www.mak.com)