VR-Forces 4.3.1 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
taskMenu.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 
15 #include <vrvCoreQt/DtToolbar.h>
20 
21 class QEvent;
23 
24 namespace makVrf
25 {
27  {
28  public:
29  typedef std::set<std::string> Mappings;
30  typedef std::map<std::string, Mappings> EquivalenceMappings;
31 
34 
36  virtual ~DtTaskToolbar();
37 
39  virtual QToolBar* createToolbar(makVrv::DtDe&, QWidget* parent);
40 
41  virtual void removeEquivalenceMappings();
42  virtual void addEquivalenceMapping(const std::string& toolbar, const std::string& equivalentTo);
43  virtual void removeEquivalenceMapping(const std::string& toolbar, const std::string& equivalentTo);
44  virtual const EquivalenceMappings& equivalenceMappings() const
45  {
46  return myEquivalenceMappings;
47  }
48 
49  protected:
51  };
52 
58  {
59  public:
61  {
62  RecreateNone = 0,
63  RecreateOnScenarioLoad = 0x00000001,
64  RecreateOnScriptedTaskChange = 0x00000002,
65  RecreateToolbars = 0x00000004,
66  };
67 
68  typedef std::map<std::string, DtScriptedTaskMetaData> ScriptedTasks;
69 
71  DtTaskMenu(makVrv::DtDe&, const std::string& menuIdName = DtTaskMenuId);
72 
74  virtual ~DtTaskMenu();
75 
77  virtual QMenu* createMenu(makVrv::DtDe&, QWidget* parent);
78 
79  static DtTaskMenu& instance(makVrv::DtDe&);
80 
84  static DtTaskMenu* menuInstance(makVrv::DtDe&);
85 
86  virtual DtTaskMenu* newInstance();
87 
89  virtual void setEditMode(bool);
90  virtual bool editMode() const;
91 
93  virtual void setRecreateFlags(RecreateFlags);
94 
95  virtual void addScriptedTask(const DtScriptedTaskMetaData&, bool signal = true);
96 
99  bool addToolbarMenuItems = true);
100 
103  virtual void setScriptedTasks(const ScriptedTasks&, bool signal = true);
104  virtual const ScriptedTasks& scriptedTasks() const;
105 
107  boost::signal<void (DtSubMenuConfiguration&)> signal_preCreateConfiguration;
108 
110  boost::signal<void ()> signal_recreateMenu;
111 
112  protected:
113  virtual void clearScriptedTasks();
114  virtual void scriptedTaskAboutToBeRemoved(std::string id);
115  virtual void scriptedTaskAdded(std::string id);
116  virtual void receivedScriptedTasks();
117 
118  virtual void removeAllScriptedTasks(bool signal = true);
119  virtual void removeScriptedTask(const std::string& id, bool signal = true);
120 
123  virtual std::string addScriptedTaskMenuLocation(const std::string& scriptedTaskId, const std::string& potentialPath,
124  const QString& menuName, const QString& extMenuName, const QString& toolTip, DtSubMenuConfiguration& configuration,
125  DtConfigurableMenuAssembler&, bool showInMenu = true, bool addToolbarMenuItems = true);
126 
127  virtual std::string addScriptedTaskToolbarLocation(const std::string& scriptedTaskId, makVrv::DtToolbarConfiguration& configuration);
128 
129  protected:
134  };
135 
138  {
139  public:
141 
142  protected:
143  virtual QMenu* createMenu( makVrv::DtDe& de, QWidget* parent );
144  };
145 
147 
150  {
151  public:
153  DtVrfTaskMenu(const std::string& className, const QString& title, QWidget* parent, makVrv::DtDe&,
155 
157  virtual ~DtVrfTaskMenu();
158 
163  virtual void setupMenu(const makVrv::DtMenuConfiguration& initialCreateMenuConfiguration = makVrv::DtMenuConfiguration(),
164  const makVrv::DtToolbarConfiguration& initialCreateToolbarConfiguration = makVrv::DtToolbarConfiguration(),
165  bool useGlobalMenuManager = false, bool recreateToolbars = false);
166 
168  virtual void recreateMenu();
169 
172  virtual void setTaskMenuProxy(DtTaskMenu*);
173  virtual DtTaskMenu* taskMenuProxy();
174 
175  protected:
178  };
179 }

Document ID: Generated on Wed Jul 29 00:55:00 EDT 2015 from SVN revision 155257
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)