VR-Forces 4.1.1 Class Documentation
DtVrfContextMenuManager.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2008 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 /******************************************************************************
6 ** $RCSfile: DtVrfContextMenuManager.h,v $ $Revision: 1.3 $ $State: Exp $
7 ******************************************************************************/
8 
11 
13 
14 #pragma once
15 
16 #include <vrvUtil/signalslib.h>
17 
19 
22 #include <vrvCoreQt/DtMenu.h>
23 
24 #include <QtCore/QObject>
25 
26 namespace makVrv
27 {
28  class DtDe;
29  class DtMenuConfiguration;
30  class DtQtMenuAssembler;
31 }
32 
33 namespace makVrf
34 {
35  class DtVrfContextMenuAssembler;
36  class DtVrfContextMenuConfiguration;
37 
41  {
42  public:
43 
45 
46  virtual ~DtVrfRightClickContextMenu();
47 
49  virtual QMenu* createMenu(makVrv::DtDe&, QWidget* parent);
50 
51  };
52 
54  {
55  Q_OBJECT
56 
57  public:
59 
61 
62  protected:
64  };
65 
67  {
68  public:
71 
73  virtual ~DtVrfContextMenuManager();
74 
76  virtual void setEnabled(bool);
77  bool enabled() const;
78 
79  static DtVrfContextMenuManager& instance(makVrv::DtDe&);
80 
81  boost::signal<void (makVrv::DtQtMenuAssembler& menuAssembler,
85 
86  //Signal sent when a right click happens on a VRF object that does not account for the object type. Connect to this
87  //to create right click context menus for your specialized VRF object types
88  boost::signal<void (makVrv::DtQtMenuAssembler& menuAssembler,
91 
92  protected:
93  virtual void requestSelectionContextMenu(const QPoint& p);
94  virtual void requestTerrainContextMenu(const QPoint& p);
95 
96  protected:
97  virtual void createTerrainContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus);
98 
100  virtual void createLocalContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
102 
103  protected:
104  virtual void createEntityContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
106  virtual void createPropContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
108  virtual void createSingleEntityContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
110  virtual void createSingleVertexContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
112  virtual void createMultipleEntityContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
114 
115  protected:
116  virtual void createAggregateContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
118  virtual void createSingleAggregateContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
120  virtual void createMultipleAggregateContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
122 
123  protected:
124  virtual void createEnvironmentalContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
126  virtual void createIntervisibilityContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
128  virtual void createSingleEnvironmentalContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
130  virtual void createMultipleEnvironmentalContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
132 
133  protected:
134  virtual void createMixedContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
136 
137  protected:
138  virtual void addPlanActions(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
140  virtual void addStealthAttachActions(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
142  virtual void addEmbarkationActions(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
144  virtual void addObjectSettingsActions(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
146 
147  protected:
149  bool myEnabled;
150  };
151 
154  {
155  public:
158 
160  virtual makVrv::DtContextMenuManager* create( makVrv::DtDe& de );
161  };
162 }

Document ID: Generated on Mon Apr 8 19:24:01 EDT 2013 from SVN revision 125877
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)