VR-Forces Development_Version Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
vrfSelectionHandler.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 
13 #include <vrfGuiCore/vrfGuiCore.h>
16 
19 #include <vrvCore/DtUniqueID.h>
20 #include <vrvCore/DtSimState.h>
21 #include <vrvCore/DtEntityState.h>
23 #include <vrfutil/rwUUID.h>
24 
25 #include <vlpi/entityType.h>
26 #include <boost/signal.hpp>
27 
28 namespace makVrv
29 {
30  class DtDe;
31  class DtBaseStateView;
32  class DtSimEntry;
33  class DtChannel;
34 }
35 
36 class Dt3dBoundingVolume;
37 
38 namespace makVrf
39 {
43  {
44  public:
46  virtual ~DtVrfSelectionHandler();
47 
49  static DtVrfSelectionHandler& instance(makVrv::DtDe& de);
50 
51  public:
55  virtual void currentSelectionChanged(const makVrv::DtSelectionManager::IdSet& selected);
56  boost::signal<void (const makVrv::DtSelectionManager::IdSet& selected)> signal_currentSelectionChanged;
57 
59  virtual makVrv::DtSelectionManager::IdSet convertNamesToIds(const std::vector<DtUUID>&) const;
60  virtual makVrv::DtSelectionManager::IdSet convertNamesToIds(const std::vector<std::string>&) const;
61 
63  virtual std::vector<DtUUID> getSelectedNames() const;
64  virtual std::vector<DtUUID> getSelectedNames(const makVrv::DtSelectionManager::IdSet&) const;
65 
67  virtual std::vector<std::string> getSelectedNamesAsMarkingText() const;
68  virtual std::vector<std::string> getSelectedNamesAsMarkingText(const makVrv::DtSelectionManager::IdSet&) const;
69 
71  virtual std::vector<makVrv::DtSimEntry*> getSelectedEntries() const;
72  virtual std::vector<makVrv::DtSimEntry*> getSelectedEntries(const makVrv::DtSelectionManager::IdSet&) const;
73 
75  virtual void selectObjects(const std::vector<DtUUID>& names);
76 
78  virtual bool allObjectsAreVrfSimulated(const makVrv::DtSelectionManager::IdSet&) const;
79 
81  virtual bool objectIsVrfSimulated(makVrv::DtUniqueID) const;
82 
83  virtual const makVrv::DtStateView<makVrv::DtVrlinkSimulatedBaseState>* getVrlinkSimulatedState(makVrv::DtUniqueID id) const;
84 
87  virtual DtEntityType getEntityTypeFromUniqueID(makVrv::DtUniqueID id) const;
88 
93  virtual void selectItemsInScreenBox(makVrv::DtChannel& channel,
94  int minX, int minY, int maxX, int maxY, const makVrv::DtSelectionManager::IdSet& mergeWith = makVrv::DtSelectionManager::IdSet(),
95  bool requestTaskSets = true);
96 
98  virtual bool isWithinScreenBounds(makVrv::DtChannel&, const makVrv::DtUniqueID& id, const makVrv::DtVrlinkSimulatedBaseState*,
99  int minX, int minY, int maxX, int maxY) const;
100  virtual makVrv::DtUniqueID sceneObjectIdFromElementId( makVrv::DtChannel& channel, const makVrv::DtUniqueID& elementID ) const;
101 
103  virtual void setLastDatabaseLocation(const DtVector&);
104 
106  virtual const DtVector& lastDatabaseLocation() const;
107 
109  virtual void setAllowNonVrfItemsToBeManipulated(bool);
110  virtual bool allowNonVrfItemsToBeManipulated() const;
111 
115  virtual void zoomToExtents() const;
116 
118  virtual void zoomToExtents(const std::vector<makVrv::DtUniqueID>& ids) const;
119 
121  virtual void zoomToExtents(makVrv::DtUniqueID) const;
122 
124  virtual void centerOn(const std::vector<makVrv::DtUniqueID>& ids) const;
125 
127  virtual void centerOn(makVrv::DtUniqueID) const;
128 
130  virtual void zoomToBoundingVolume(const DtVector& geometricCenter, double radius) const;
131 
134  virtual void showInformationFor(makVrv::DtElementID);
135 
136  protected:
137 
138  virtual void slot_onCurrentSelectionChanged(
139  const makVrv::DtSelectionManager::IdSet& selected,
140  const makVrv::DtSelectionManager::IdSet& deselected);
141 
142  virtual void slot_onObjectEntryAdded(makVrv::DtSimObjectEntry&);
143 
146  virtual void slot_onSimStateAdded(makVrv::DtSimObjectEntry& entry);
147 
148  virtual void slot_onStateViewUpdated(makVrv::DtStateView<makVrv::DtVrlinkSimulatedBaseState>*);
149 
150  virtual void slot_deInitialized(makVrv::DtDe&);
151 
152  public:
153  boost::signal<void (const DtVector&)> signal_lastDatabaseLocationSet;
154  boost::signal<void (makVrv::DtElementID)> signal_showInformationFor;
155 
156  protected:
163  };
164 }

Document ID: Generated on Tue Mar 8 22:13:38 EST 2016 from SVN revision 162938
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)