VR-Forces 4.1 Class Documentation
DtSimulationCommandMenu.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2009 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
10 
11 #pragma once
12 
13 #include <vrvUtil/signalslib.h>
16 
18 
19 #include <QtGui/QMenu>
20 
21 #include <matrix/vlVector.h>
22 
23 class QEvent;
24 class DtSimCommand;
25 class DtSimTask;
26 class DtEntityType;
27 
28 namespace makVrv
29 {
30  class DtSimEntry;
31 }
32 
33 namespace makVrf
34 {
35  class DtVrfSimulationCommandAction;
36  class DtSimCommandObjectWrapper;
37  class DtVrfTaskSetAction;
38  class DtMenu;
39 
41  {
42  Q_OBJECT
43 
44  public:
45  DtVrfSimulationCommandMenu(makVrv::DtDe&, const QString& title, QWidget* parent);
46 
47  virtual ~DtVrfSimulationCommandMenu();
48 
49  boost::signal<void (DtSimCommand&)> signal_addCommand;
50 
51  void setEntitySet(const makVrv::DtSelectionManager::IdSet& i)
52  {
53  myEntitySet = i;
54  }
55 
56  const makVrv::DtSelectionManager::IdSet& entitySet() const
57  {
58  return myEntitySet;
59  }
60 
61  boost::signal<void (const DtEntityType&, std::string, int, const std::vector<DtVector>&, double, bool, bool)> signal_createObject;
62 
63  public:
64  virtual void slot_onCommandComplete(const DtSimCommandObjectWrapper&);
65  virtual void slot_onCommandActivated(const std::vector<std::string>&, const DtSimTask&);
66  virtual void slot_onCreateObject(const DtEntityType&, std::string, int, const std::vector<DtVector>&, double, bool, bool);
67 
68  protected:
69  virtual bool eventFilter(QObject *, QEvent *);
70  virtual void actionAdded(QEvent*);
71  virtual bool shouldAddAsPartOfMenu(const QList<QAction*>& acts, QAction* toMatch) const;
72 
73  protected:
74  virtual void slot_createTaskSetCommandDialog(int menuItemType, QWidget* parent, DtVrfTaskSetAction* forAction,
75  const std::vector<makVrv::DtSimEntry*>& data, bool partOfPlan);
76 
77  virtual void slot_createRadioCommandDialog(int menuItemType, QWidget* parent, DtVrfTaskSetAction* forAction,
78  const std::vector<makVrv::DtSimEntry*>& data, bool partOfPlan);
79 
80  protected:
83  std::vector<DtVrfSimulationCommandAction*> myConnections;
84  };
85 
87  {
88  public:
89 
92 
94  virtual ~DtSimulationCommandMenu();
95 
97  virtual QMenu* createMenu(makVrv::DtDe&, QWidget* parent);
98 
99  static DtSimulationCommandMenu& instance(makVrv::DtDe&);
100  static DtSimulationCommandMenu* menuInstance(makVrv::DtDe& de);
101 
102  virtual DtSimulationCommandMenu* newInstance();
103 
104  public:
106  virtual DtSubMenuConfiguration& menuConfiguration();
107 
109  virtual DtConfigurableMenuAssembler& menuAssembler();
110 
111  protected:
113  virtual void createMenuConfiguration(makVrv::DtDe& de);
114 
115  protected:
119  };
120 }

Document ID: Generated on Tue Jan 29 18:21:16 EST 2013 from SVN revision 123193
Copyright © 2005-2013 VT MÄK Inc. All Rights Reserved (www.mak.com)