VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
vrfTaskSetToolbarItem.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2012 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
10 
11 #pragma once
12 
14 #include <vrvCoreQt/DtMenuItem.h>
16 #include <set>
17 
18 class QAction;
19 
20 namespace makVrf
21 {
22  class DtVrfTaskSetAction;
23 
28  {
29  Q_OBJECT
30 
31  public:
32  //CTOR
33  DtVrfTaskSetToolbarItem(const std::string& toolbarId, const std::string& taskSetItemId, makVrv::DtDe& de);
35 
36  //DTOR`
37  virtual ~DtVrfTaskSetToolbarItem() override;
38 
40  virtual QAction* createAction(makVrv::DtDe&, QWidget* parent) override;
41  virtual QAction* createAction(makVrv::DtDe&, DtVrfTaskSetAction* toolbarAction, QWidget* parent);
42 
43  QAction* action() const
44  {
45  return myAction;
46  }
47 
48  virtual QAction* toolbarAction() const;
49 
50  virtual std::set<QAction*> activatedActions() const;
51 
53  virtual void on_triggered() override;
54 
55  virtual int actionType() const;
56 
57  virtual void clearAssociatedActions();
58 
59  protected:
61  virtual void setupToolbarItem(DtVrfTaskSetAction*);
62 
63  virtual void actionChanged(DtVrfTaskSetAction*);
64 
65  virtual std::set<std::string> findEquivalences(const std::string& vrfTaskSetId, std::set<std::string>& reverseEquivalence) const;
66  virtual void initializeAction(const std::string& vrfTaskSetId, bool equivalentOnly = false);
67 
68  const std::string& taskSetItemId() const
69  {
70  return myTaskSetItemId;
71  }
72 
73  protected slots:
75  virtual void actionChanged();
76 
78  virtual void toolbarActionDestroyed();
79 
81  virtual void actionDestroyed();
82 
83  protected:
84  std::string myTaskSetItemId;
86  std::set<QAction*> myToolbarActions;
87  std::set<QAction*> myIconActions;
89  };
90 
91  typedef DtVrfTaskSetToolbarItem* (*DtVrfTaskSetToolbarItemCreatorFcn)(
92  const std::string& toolbarId, const std::string& taskSetItemId, makVrv::DtDe& de);
93 
96  {
97  public:
99  virtual ~DtVrfTaskSetToolbarItemFactory() override;
100 
102  static DtVrfTaskSetToolbarItemFactory& instance(makVrv::DtDe& de);
103 
105  static void registerInstance(makVrv::DtDe&, DtVrfTaskSetToolbarItemFactory*);
106 
107  virtual void addCreator(int taskSetId, DtVrfTaskSetToolbarItemCreatorFcn f);
108 
109  virtual DtVrfTaskSetToolbarItem* create(int taskSetId,
110  const std::string& toolbarId, const std::string& taskSetItemId, makVrv::DtDe& de);
111 
112  protected:
113 
114  std::map<int, DtVrfTaskSetToolbarItemCreatorFcn> myCreators;
115  };
116 }
Builder for menu items.
Definition: DtMenuItem.h:23
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
This class will encapsulate a toolbar item for a task/set menu item. Since those menu items now hide ...
Definition: vrfTaskSetToolbarItem.h:27
std::map< int, DtVrfTaskSetToolbarItemCreatorFcn > myCreators
Definition: vrfTaskSetToolbarItem.h:114
Contains makVrv::DtVirtualBaseClass class.
DtVrfTaskSetToolbarItem *(* DtVrfTaskSetToolbarItemCreatorFcn)(const std::string &toolbarId, const std::string &taskSetItemId, makVrv::DtDe &de)
Definition: vrfTaskSetToolbarItem.h:91
QAction * action() const
Definition: vrfTaskSetToolbarItem.h:43
const std::string & taskSetItemId() const
Definition: vrfTaskSetToolbarItem.h:68
std::set< QAction * > myToolbarActions
Definition: vrfTaskSetToolbarItem.h:86
std::string myTaskSetItemId
Definition: vrfTaskSetToolbarItem.h:84
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
Contains makVrf::DtTaskSetMenu, makVrf::DtVrfTaskSetAction, and makVrf::DtTaskSetMenuItem class...
Definition: vrfTaskSetAction.h:108
std::set< QAction * > myIconActions
Definition: vrfTaskSetToolbarItem.h:87
Factory class for DtVrfTaskSetToolbarItem.
Definition: vrfTaskSetToolbarItem.h:95
#define DT_DLL_VRFGUITASKSETQT
Definition: vrfGuiTaskSetQt.h:22
QAction * myAction
Definition: vrfTaskSetToolbarItem.h:88
makVrv::DtDe & myDe
Definition: vrfTaskSetToolbarItem.h:85

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)