VR-Forces 4.7 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
vrfContextMenuManager.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
10 
11 #pragma once
12 
13 #include <vrvUtil/signalslib.h>
14 
16 
19 #include <vrvCore/DtMenuPath.h>
20 #include <vrvCoreQt/DtMenu.h>
22 #include <vrvCore/DtMenuPath.h>
25 
26 #include <QtCore/QObject>
27 
28 namespace makVrv
29 {
30  class DtDe;
31  class DtMenuConfiguration;
32  class DtQtMenuAssembler;
33 }
34 
35 namespace makVrf
36 {
38  {
39  public:
41  virtual ~DtVrfContextMenuMenuManager();
42  virtual void clear();
43  };
44 
46  {
47  public:
50 
52 
53  virtual void convertMainMenusToItems();
54  virtual bool hasItems() const;
55  };
56 
58  {
59  public:
61  virtual ~DtVrfContextMenuAssembler();
62 
63  virtual void assembleMenuPath( const makVrv::DtMenuPath& menuPath, const makVrv::DtMenuConfiguration& configuration );
64 
65  virtual void registerMenu( makVrv::DtMenu* menuBuilder );
66 
67  virtual void registerMenu( makVrv::DtMenuItem* builder);
68 
69  virtual void assembleMenu( const makVrv::DtMenuPath& menuPath );
70 
71  virtual QMenuBar* menuBar();
72 
74  virtual makVrv::DtMenuManager& menuManager();
75 
76  protected:
80  };
81 
85  {
86  public:
87 
89 
90  virtual ~DtVrfRightClickContextMenu();
91 
93  virtual QMenu* createMenu(makVrv::DtDe&, QWidget* parent);
94 
95  };
96 
102  {
103  Q_OBJECT
104 
105  public:
108 
110  virtual ~DtVrfContextMenuManager();
111 
113  virtual void setEnabled(bool);
114  bool enabled() const;
115 
116  static DtVrfContextMenuManager& instance(makVrv::DtDe&);
117 
121  virtual QMenu* rightClickContextMenuFor(makVrv::DtSelectionManager::IdSet idSet, makVrv::DtSelectionManager::SelectionType, std::string& context,
122  bool signalMenuCreation = true);
123 
124  protected:
125  virtual void requestSelectionContextMenu(const QPoint& p);
126  virtual void requestTerrainContextMenu(const QPoint& p);
127 
131  virtual void requestObserverViewsContextMenu(const QPoint& p);
132  virtual void createGeneralContextMenu(const std::string& context, const QPoint& p);
133 
134  virtual std::string createGeneralContextMenu(const std::string& context, DtVrfContextMenuAssembler& menuAssembler,
136 
137  protected slots:
138  virtual void menuDestroyed();
139 
140  protected:
142  virtual std::string createLocalContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
144 
145  protected:
146  virtual std::string createEntityContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
148  virtual std::string createSpotReportContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
150  virtual std::string createTDLMessageContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
152  virtual std::string createLaserDesignatorContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
154  virtual std::string createPropContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
156  virtual std::string createSingleEntityContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
158  virtual std::string createMultipleEntityContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
160 
161  protected:
162  virtual std::string createAggregateContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
164  virtual std::string createSingleAggregateContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
166  virtual std::string createMultipleAggregateContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
168 
169  protected:
170  virtual std::string createEnvironmentalContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
172  virtual std::string createIntervisibilityContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
174  virtual std::string createSingleEnvironmentalContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
176  virtual std::string createMultipleEnvironmentalContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
178 
179  virtual std::string environmentalRightClickKeyword(makVrv::DtUniqueID id) const;
180 
181  protected:
182  virtual std::string createMixedContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
184 
185  protected:
186  virtual void addObjectSettingsActions(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
189 
190  virtual void addTopLevelRightClickScriptedTasksSets(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
192 
193  protected:
194  bool myEnabled;
196  };
197 
200  {
201  public:
204 
206  virtual makVrv::DtContextMenuManager* create( makVrv::DtDe& de );
207  };
208 }

Document ID: Generated on Fri Apr 26 21:53:14 EDT 2019 from SVN revision 197883
Copyright © 2005-2019 VT MAK. All Rights Reserved (www.mak.com)