13 #include <vrvUtil/signalslib.h>
17 #include <vrvCoreQt/DtContextMenuManager.h>
18 #include <vrvCore/DtSelectionManager.h>
19 #include <vrvCore/DtMenuPath.h>
20 #include <vrvCoreQt/DtMenu.h>
22 #include <QtCore/QObject>
27 class DtMenuConfiguration;
33 class DtVrfContextMenuAssembler;
34 class DtVrfContextMenuConfiguration;
47 virtual QMenu* createMenu(makVrv::DtDe&,
QWidget* parent);
74 virtual void setEnabled(
bool);
80 virtual void requestSelectionContextMenu(
const QPoint& p);
81 virtual void requestTerrainContextMenu(
const QPoint& p);
84 virtual std::string createTerrainContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus);
87 virtual std::string createLocalContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
88 const makVrv::DtSelectionManager::IdSet&);
91 virtual std::string createEntityContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
92 const makVrv::DtSelectionManager::IdSet&);
93 virtual std::string createPropContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
94 const makVrv::DtSelectionManager::IdSet&);
95 virtual std::string createSingleEntityContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
96 const makVrv::DtSelectionManager::IdSet&);
97 virtual std::string createMultipleEntityContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
98 const makVrv::DtSelectionManager::IdSet&);
101 virtual std::string createAggregateContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
102 const makVrv::DtSelectionManager::IdSet&);
103 virtual std::string createSingleAggregateContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
104 const makVrv::DtSelectionManager::IdSet&);
105 virtual std::string createMultipleAggregateContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
106 const makVrv::DtSelectionManager::IdSet&);
109 virtual std::string createEnvironmentalContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
110 const makVrv::DtSelectionManager::IdSet&);
111 virtual std::string createIntervisibilityContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
112 const makVrv::DtSelectionManager::IdSet&);
113 virtual std::string createSingleEnvironmentalContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
114 const makVrv::DtSelectionManager::IdSet&);
115 virtual std::string createMultipleEnvironmentalContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
116 const makVrv::DtSelectionManager::IdSet&);
119 virtual std::string createMixedContextMenu(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
120 const makVrv::DtSelectionManager::IdSet&);
123 virtual void addObjectSettingsActions(DtVrfContextMenuAssembler&, makVrv::DtMenuConfiguration& menus,
124 const makVrv::DtSelectionManager::IdSet&,
const makVrv::DtMenuPath& beforePath = makVrv::DtMenuPath::empty());
139 virtual makVrv::DtContextMenuManager* create( makVrv::DtDe& de );