VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
setMenu.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2014 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
10 
11 #pragma once
12 
13 #if !defined(Q_MOC_RUN)
17 #include <vrvCoreQt/DtToolbar.h>
19 #endif
20 
21 class QMenuBar;
22 
23 namespace makVrf
24 {
25  class DtVrfTaskSetMenu;
26 
31  {
32  Q_OBJECT
33 
34  public:
35 
37  DtSetMenu(makVrv::DtDe&, const std::string& menuIdName = DtSetMenuId);
38 
40  virtual ~DtSetMenu() override;
41 
43  virtual QMenu* createMenu(makVrv::DtDe&, QWidget* parent) override;
44 
45  static DtSetMenu& instance(makVrv::DtDe&);
46 
47 
51  static DtSetMenu* menuInstance(makVrv::DtDe&);
52 
53  virtual DtSetMenu* newInstance();
54 
59  virtual void giveBackSetMenu(DtVrfTaskSetMenu*);
60  virtual DtVrfTaskSetMenu* createSetMenu(QWidget* widgetOwner, QMenuBar* menuOwner = nullptr,
63 
64  bool hasPrecreatedMenus() const
65  {
66  return (myPrecreatedMenus.size() != 0);
67  }
68 
69  protected:
70  virtual int supportedScriptType(int d) const override;
71  virtual const char* supportsToolbarType() const override;
72 
73  protected slots:
74  virtual void precreatedMenuDeleted();
75 
76  protected:
77  std::vector<DtVrfTaskSetMenu*> myPrecreatedMenus;
78  };
79 
82  {
83  public:
85 
86  protected:
87  virtual QMenu* createMenu(makVrv::DtDe& de, QWidget* parent) override;
88  };
89 
92  {
93  public:
95  DtVrfSetMenu(const std::string& className, const QString& title, QWidget* parent, makVrv::DtDe&, int flags = 0,
97 
99  virtual ~DtVrfSetMenu() override;
100 
101  virtual void recreateMenu() override;
102 
103  virtual MenuType menuType() const override {
104  return SetMenu;
105  }
106 
108  static void SetOnlyCreateMenuWhenScriptedTasksLoaded(bool);
109 
110  protected:
111  virtual void postRecreateMenu();
112 
113  protected:
114  virtual const char* supportedToolbar() const override;
115  virtual const char* supportedMenu() const override;
116  virtual const DtSubMenuConfiguration& defaultMenuConfiguration() const override;
117  virtual const makVrv::DtQtMenuAssembler::MenuBuilderMap& defaultMenuBuilderMap() const override;
118  virtual const makVrv::DtQtMenuAssembler::MenuItemBuilderMap& defaultMenuItemBuilderMap() const override;
119  virtual DtScriptedTaskConfigurableMenu* mainMenuInstance() override;
120  virtual void renameIfDuplicate(QAction* act) override;
121 
122  protected:
123  boost::signals2::scoped_connection myRecreateMenuConnection;
124  };
125 }
Definition: scriptedTaskConfigurableMenu.h:49
Definition: vrfTaskSetMenu.h:50
virtual MenuType menuType() const override
Returns the type of menu it is. This is not set but returned by the subclass. See enums above...
Definition: setMenu.h:103
boost::unordered_map< std::string, DtMenuItem * > MenuItemBuilderMap
Definition: DtQtMenuAssembler.h:31
Class used in right click menu. Returns previously created instance of DtTaskMenu Menu...
Definition: setMenu.h:81
Definition: setMenu.h:30
const char DtSetMenuId[]
Defined for vrfGuiCoreQt/DtSetMenu.h.
Definition: vrfMenuIds.h:509
Subclass for additional functionality needed by VRF.
Definition: subMenuConfiguration.h:73
std::vector< DtVrfTaskSetMenu * > myPrecreatedMenus
Definition: setMenu.h:77
Instance of the set menu.
Definition: setMenu.h:91
Container class that will create instances of scripted task configurable menu.
Definition: scriptedTaskConfigurableMenu.h:38
boost::unordered_map< std::string, DtMenu * > MenuBuilderMap
Definition: DtQtMenuAssembler.h:30
Contains makVrv::DtToolbar class declaration.
bool hasPrecreatedMenus() const
Definition: setMenu.h:64
boost::signals2::scoped_connection myRecreateMenuConnection
Definition: setMenu.h:123
MenuType
Definition: vrfTaskSetMenu.h:55
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
#define DT_DLL_VRFGUITASKSETQT
Definition: vrfGuiTaskSetQt.h:22

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)