VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
createObjectAction.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2012 MaK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 
8 
9 #pragma once
10 
11 #if !defined(Q_MOC_RUN)
16 
17 #include <vrvCoreQt/DtMenuItem.h>
18 #endif
19 
20 #include <QtWidgets/QAction>
21 
22 
26 namespace makVrv
27 {
28  class DtMenuPath;
29  class DtDe;
30 }
31 
32 namespace makVrf
33 {
34  class DtVrfBackendState;
35 
37  {
38  Q_OBJECT
39 
40  public:
41 
44  (
45  makVrv::DtDe& de,
46  const std::string& path,
47  const QString& title,
48  const DtEntityMapperKey& o,
49  const std::string& keywords = "",
50  const std::string& menuIcon = "",
51  const std::string& toolTip = ""
52  );
53 
55  virtual ~DtCreateObjectAction() override;
56 
57  virtual DtEntityMapperKey objectType() const;
58  virtual int forceType() const;
59  virtual const std::string& keywords() const;
60  virtual const std::string& menuIcon() const;
61  virtual const std::string& toolTip() const;
62 
65  virtual void setSignalOnCreate(DtCreationSignalType creationSignal);
66  virtual DtCreationSignalType signalOnCreate() const;
67  virtual void on_triggered() override;
68 
70  virtual void on_aboutToShow() override;
71 
72  virtual QAction* createAction(makVrv::DtDe&, QWidget* parent) override;
73 
74  virtual int forceFromKey(const DtEntityMapperKey& key) const;
75 
76  protected:
77 
80  virtual void setIconFromTick(makVrv::DtDe* de, QAction* act);
81 
82  virtual void slot_defaultIconListChanged();
83 
84  signals:
85  void createObject(const DtEntityMapperKey&, int force, const std::string&);
86 
87  private:
88 
91 
93  DtCreateObjectAction& operator=(const DtCreateObjectAction& orig);
94 
95  protected:
99  QString myTitle;
101  std::string myKeywords;
102  std::string myToolTip;
103  std::string myMenuIcon;
105  };
106 
114  {
115  public:
117  (
118  makVrv::DtDe& de,
119  const std::string& path,
120  const QString& title,
121  const DtEntityMapperKey& o,
122  const std::string& keywords = "",
123  const std::string& menuIcon = "",
124  const std::string& toolTip = ""
125  );
126 
128  virtual ~DtSimulationBasedCreateObjectAction() override;
129 
130  void setStartCreateActionOnTrigger(bool);
131  bool startCreateActionOnTrigger() const;
132 
133  protected:
134  virtual QAction* createAction(makVrv::DtDe&, QWidget* parent) override;
135  virtual void on_triggered() override;
136 
137  virtual void enableAction();
138  virtual void slot_backendUpdated(const DtVrfBackendState&, int changedFlags);
139 
140  protected:
142  };
143 
147  {
148  public:
150  {
151  };
152 
154  {
155  };
156 
157  virtual DtCreateObjectAction* create(makVrv::DtDe&, const std::string& menuId, const QString& menuName, const DtEntityMapperKey& key,
158  const std::string& keywords = "", const std::string& menuIcon = "", const std::string& toolTip = "");
159  };
160 }
Definition: vrfBackendState.h:65
Builder for menu items.
Definition: DtMenuItem.h:23
Definition: entityMapperKey.h:19
Definition: createObjectAction.h:36
bool myStartCreateActionOnTrigger
Definition: createObjectAction.h:141
#define DT_DLL_VRFGUICOREQT
Definition: vrfGuiCoreQt.h:26
makVrv::DtSignalConnectionManager myConnections
Definition: createObjectAction.h:97
std::string myMenuIcon
Definition: createObjectAction.h:103
DtCreationSignalType mySignalOnCreate
Definition: createObjectAction.h:100
makVrv::DtDe & myDe
Definition: createObjectAction.h:96
QAction * myAction
Definition: createObjectAction.h:104
DtCreateObjectActionCreator()
Definition: createObjectAction.h:149
std::string myKeywords
Definition: createObjectAction.h:101
An object action that will enable/disable itself given the scenario loaded state. Use if you want to ...
Definition: createObjectAction.h:113
std::string myToolTip
Definition: createObjectAction.h:102
QString myTitle
Definition: createObjectAction.h:99
DtEntityMapperKey myObjectType
Definition: createObjectAction.h:98
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
Creator used to register with the DtCreateMenu to create types of object actions. Override this creat...
Definition: createObjectAction.h:146
Base class to provide boost signal/slot management.
virtual ~DtCreateObjectActionCreator()
Definition: createObjectAction.h:153
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
DtCreationSignalType
Option to supply to the createObject method.
Definition: vrfObjectManipulationHandlerBaseClass.h:73

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)