VR-Forces 4.7 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  Q_OBJECT
129  public:
130  //CTOR
131  DtRadioItem(makVrv::DtDe& de, const std::string& className);
132 
133  //DTOR
134  virtual ~DtRadioItem();
135  };
136 
139  {
140  Q_OBJECT
141 
142  public:
143  DtVrfRadioAction(QWidget*, makVrv::DtDe&);
144 
145  virtual ~DtVrfRadioAction();
146 
148  boost::signal<void (int menuItemType, QWidget*, DtVrfTaskSetAction*,
149  const std::vector<makVrv::DtSimEntry*>&, int, DtVrfTaskSetMenu*)> signal_createCommandDialog;
150 
152  boost::signal<void (int menuItemType, QWidget*, DtVrfTaskSetAction*,
153  const std::vector<makVrv::DtSimEntry*>&, int, DtVrfTaskSetMenu*)> signal_createTaskSetDialog;
154 
155  virtual void setSignalDialogCreation(bool);
156  bool signalDialogCreation() const
157  {
158  return mySignalDialogCreation;
159  }
160 
161  protected slots:
162  virtual void dialogDestroyed();
163 
164  protected:
165  virtual void on_triggered();
166 
167  virtual void slot_commandActivated(const std::vector<DtUUID>& n, const DtSimTask& task, DtVrfTaskSetMenu* menu);
168 
169  protected:
171  };
172 }

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)