VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
menuPathSelectors.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2016 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
10 
11 #pragma once
12 
15 
16 
17 
18 #include <QtWidgets/QDialog>
19 #include <QtGui/QValidator>
20 
21 class QLabel;
22 class QPushButton;
23 class QListWidget;
24 class QTreeWidget;
25 class QTreeWidgetItem;
26 class QListWidgetItem;
27 class QAction;
28 class QRadioButton;
29 class QCheckBox;
31 class QLineEdit;
32 
33 namespace makVrf
34 {
35  class DtVrfTaskMenu;
36  class DtTaskMenu;
37  class DtVrfSetMenu;
38  class DtSetMenu;
39 
42  {
43  Q_OBJECT
44 
45  public:
46  DtMenuPathSelector(makVrv::DtDe& de, const std::string& scriptId,
47  QWidget* parent, const Qt::WindowFlags& f = 0);
48  virtual ~DtMenuPathSelector() override;
49 
51  virtual QString selectMenuPath(const QString& curPath = "");
52 
53  virtual void modifyScriptedTask(const DtScriptedTaskMetaData&) = 0;
54 
55  virtual void setScriptId(const std::string&);
56 
58  QString locationOfScript() const;
59 
61  virtual QAction* findActionWithScriptId(const QList<QAction*>&, QAction*& parent) const;
62 
63  protected:
64  virtual void populateMenu(QTreeWidgetItem* parent, QAction* actions, const DtConfigurableMenuAssembler& menuAssembler);
65 
66  virtual void addMenuAtPositionFromSelected(int);
67 
68  virtual QTreeWidgetItem* findMenuItem(QTreeWidgetItem* parent, const std::string& path) const;
69 
70  protected slots:
71  virtual void addBefore();
72  virtual void addAfter();
73 
74  virtual const DtConfigurableMenuAssembler& assembler() const = 0;
75  virtual QList<QAction*> actions() const = 0;
76  virtual const char* menuId() const = 0;
77 
78  public:
84  QRadioButton* myBefore;
85  QRadioButton* myAfter;
86 
87  protected:
89  std::string myScriptId;
90  };
91 
94  {
95  Q_OBJECT
96 
97  public:
98  DtTaskMenuPathSelector(makVrv::DtDe& de, const std::string& scriptId,
99  QWidget* parent, const Qt::WindowFlags& f = 0);
100  virtual ~DtTaskMenuPathSelector() override;
101 
102  virtual void modifyScriptedTask(const DtScriptedTaskMetaData&) override;
103 
104  protected:
105  virtual const DtConfigurableMenuAssembler& assembler() const override;
106  virtual QList<QAction*> actions() const override;
107  virtual const char* menuId() const override;
108 
109  public:
112  };
113 
116  {
117  Q_OBJECT
118 
119  public:
120  DtSetMenuPathSelector(makVrv::DtDe& de, const std::string& scriptId,
121  QWidget* parent, const Qt::WindowFlags& f = 0);
122  virtual ~DtSetMenuPathSelector() override;
123  virtual void modifyScriptedTask(const DtScriptedTaskMetaData&) override;
124 
125  protected:
126  virtual const DtConfigurableMenuAssembler& assembler() const override;
127  virtual QList<QAction*> actions() const override;
128  virtual const char* menuId() const override;
129 
130  public:
133  };
134 
137  {
138  Q_OBJECT
139 
140  public:
141  DtToolbarPathSelector(makVrv::DtDe& de, const std::string& toolbar,
142  QWidget* parent, const Qt::WindowFlags& f = 0);
143  virtual ~DtToolbarPathSelector() override;
144 
147  virtual std::string selectToolbarPath(const std::string& path);
148  virtual void setupFromMetaData(const DtScriptedTaskMetaData&);
149 
151  virtual QString locationOfScript() const;
152 
153  virtual QString titleForToolbarAction(const std::string&) const;
154 
155  virtual QListWidgetItem* listWidgetItemFor(const std::string& id) const;
156 
157  virtual QAction* findAction(const std::string&) const = 0;
158 
159  protected slots:
160  virtual void addBefore();
161  virtual void addAfter();
162  virtual void addEquivalentTo();
163  virtual void removeEquivalence();
164  virtual void itemSelectionChanged();
165 
166  public:
171  QListWidget* myToolbars;
172 
173  protected:
175  std::string myScriptId;
176  std::string myToolbarLocation;
178  QString myMenuText;
180  };
181 
184  {
185  Q_OBJECT
186 
187  public:
188  DtTaskToolbarPathSelector(makVrv::DtDe& de, QWidget* parent, const Qt::WindowFlags& f = 0);
189  virtual ~DtTaskToolbarPathSelector() override;
190  virtual QAction* findAction(const std::string&) const override;
191  };
192 
195  {
196  Q_OBJECT
197 
198  public:
199  DtSetToolbarPathSelector(makVrv::DtDe& de, QWidget* parent, const Qt::WindowFlags& f = 0);
200  virtual ~DtSetToolbarPathSelector() override;
201  virtual QAction* findAction(const std::string&) const override;
202  };
203 }
DtConfigurableMenuAssembler myMenuAssembler
Definition: menuPathSelectors.h:79
DtVrfSetMenu * mySetMenu
Definition: menuPathSelectors.h:131
makVrv::DtDe & myDe
Definition: menuPathSelectors.h:88
QRadioButton * myAfter
Definition: menuPathSelectors.h:85
QPushButton * myAddBefore
Definition: menuPathSelectors.h:80
#define DT_DLL_VRFGUICOREQT
Definition: vrfGuiCoreQt.h:26
Definition: setMenu.h:30
DtVrfTaskMenu * myTaskMenu
Definition: menuPathSelectors.h:110
QListWidgetItem * myToolbarItem
Definition: menuPathSelectors.h:179
std::string myScriptId
Definition: menuPathSelectors.h:175
QTreeWidget * myMenu
Definition: menuPathSelectors.h:82
QLineEdit * myMenuItem
Definition: menuPathSelectors.h:83
QPushButton * myAddAfter
Definition: menuPathSelectors.h:168
std::string myToolbarConfiguration
Definition: menuPathSelectors.h:177
QPushButton * myAddBefore
Definition: menuPathSelectors.h:167
Dialog that will allow the selection of a new menu path and creation of sub-menu paths.
Definition: menuPathSelectors.h:93
Dialog that will allow the selection of a new menu path and creation of sub-menu paths.
Definition: menuPathSelectors.h:41
QPushButton * myRemoveEquivalence
Definition: menuPathSelectors.h:170
Dialog that will allow the selection of a new toolbar path.
Definition: menuPathSelectors.h:194
Instance of the set menu.
Definition: setMenu.h:91
makVrv::DtDe & myDe
Definition: menuPathSelectors.h:174
QListWidget * myToolbars
Definition: menuPathSelectors.h:171
DtTaskMenu * myTaskMenuBuilder
Definition: menuPathSelectors.h:111
QPushButton * myIsEquivalentTo
Definition: menuPathSelectors.h:169
Container class that will create instances of the task menu which will configure itself for tasks...
Definition: taskMenu.h:33
std::string myScriptId
Definition: menuPathSelectors.h:89
QRadioButton * myBefore
Definition: menuPathSelectors.h:84
Instance of task menu that will know how to configure itself for tasks.
Definition: taskMenu.h:92
Dialog that will allow the selection of a new toolbar path.
Definition: menuPathSelectors.h:136
DtSetMenu * mySetMenuBuilder
Definition: menuPathSelectors.h:132
std::string myToolbarLocation
Definition: menuPathSelectors.h:176
Definition: translator.h:58
Dialog that will allow the selection of a new menu path and creation of sub-menu paths.
Definition: menuPathSelectors.h:115
QPushButton * myAddAfter
Definition: menuPathSelectors.h:81
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:76
class DtScriptedTaskMetaData
Definition: scriptedTaskMetaData.h:58
Dialog that will allow the selection of a new toolbar path.
Definition: menuPathSelectors.h:183
Used by menu classes to modify menu registrations in a menu.
Definition: configurableMenu.h:120
QString myMenuText
Definition: menuPathSelectors.h:178

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)