36 #define DtMultipleObjectEditorManipulationHandlerType DtEntityType(300, 300, 300, 300, 300, 300, 300)
40 class DtVrfObjectManipulationHandlerBaseClass;
41 class DtVrfEditManagerEventProcessor;
62 AllowLocalObjects = 0x00000001,
63 AllowPublishedObjects = 0x00000002,
64 AllowAll = AllowLocalObjects | AllowPublishedObjects
76 bool creatingObject()
const;
83 virtual void setAlwaysCreateLocal(
bool);
84 virtual bool alwaysCreateLocal()
const;
92 virtual void removeObjectManipulationHandler(
const DtEntityType&);
111 virtual bool isEditable(
const makVrv::DtUniqueID&,
const std::string& keywordsToCheck =
"")
const;
118 virtual std::vector<DtVector> convertToLocal(
const std::vector<DtVector>& geocentric)
const;
121 virtual bool isEditingOrCreating()
const;
123 virtual bool isBoxObject(
const DtEntityType&,
const std::string& keywords)
const;
138 virtual bool isCreatingProp()
const;
142 virtual bool isDestroyingProp()
const;
143 virtual void setIsDestroyingProp(
bool);
162 virtual void slot_onCreateTerrainProp(
const DtString& propType,
const DtString& propModelDef);
166 virtual void cleanup();
177 virtual void mapEntityTypeToVertexEditingType(
const DtEntityType& from,
const DtEntityType& to);
178 virtual DtEntityType mapToVertexEditingType(
const DtEntityType& from)
const;
179 virtual void removeToVertexEditingType(
const DtEntityType& from);
190 const std::string& keywords =
"");
193 virtual void setLocation(
const DtVector& loc);
196 virtual void createTerrainProp(
const DtString& propType,
const DtString& propModelDef);
216 boost::signals2::signal<void (const DtVrfObjectManipulationHandlerBaseClass::ObjectManipulationData&)>
signal_createObject;
233 virtual void setAllowEditing(
bool b);
236 virtual bool allowEditing()
const;
237 virtual bool allowLocalObjectsEditing()
const;
238 virtual bool allowPublishedObjectsEditing()
const;
260 virtual void setEditStartedByDoubleClick(
bool);
263 virtual void setCreationEndedWithDoubleClick(
bool creationEndedWithDoubleClick);
267 virtual bool isDoubleClickSupportedForCurrentObject()
const;
270 virtual bool isCurrentObjectValidForCreation();
273 virtual void deleteSelected();
285 virtual void addVertexBeforeSelected();
292 virtual void addVertexAfterSelected();
296 const DtVector& dbVtxLocation )
const;
309 ProcessEnvStateFunction* processor );
312 virtual void setWaitTimeAfterComplete(
double);
313 virtual double waitTimeAfterComplete()
const;
316 virtual void setLocalWaitTimeAfterComplete(
double);
317 virtual double localWaitTimeAfterComplete()
const;
351 virtual void sessionStatusChanged(
int);
355 virtual void slot_onTick();
357 virtual void slot_onAttributesChanged(
388 typedef boost::unordered_map<makVrv::DtUniqueID, bool>
EditableMap;
391 typedef boost::unordered_map<int, makVrv::DtElementEntry::ElementType>
KindToTypeMap;
394 typedef boost::unordered_map<makVrv::DtElementEntry::ElementType, DtVrfObjectManipulationHandlerCreatorInterface*>
TypeCreatorMap;
AllowEditingOf myAllowEditingOf
Definition: vrfObjectManipulationManager.h:402
bool myAlwaysCreateLocal
Definition: vrfObjectManipulationManager.h:381
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
boost::signals2::signal< void(makVrv::DtElementID)> signal_unhandledEdit
Definition: vrfObjectManipulationManager.h:225
boost::signals2::signal< void(const makVrv::DtUniqueID &, DtEditingType)> signal_editingObject
Definition: vrfObjectManipulationManager.h:328
TypeCreatorMap myTypeCreators
Definition: vrfObjectManipulationManager.h:395
boost::signals2::signal< void(const makVrv::DtUniqueID &, DtEditingType)> signal_editingTerrainProp
Definition: vrfObjectManipulationManager.h:330
makVrv::DtDe & myDe
Definition: vrfObjectManipulationManager.h:376
boost::signals2::signal< void()> signal_editStopped
Definition: vrfObjectManipulationManager.h:335
double myWaitTimeAfterComplete
Definition: vrfObjectManipulationManager.h:397
boost::unordered_map< int, makVrv::DtElementEntry::ElementType > KindToTypeMap
Definition: vrfObjectManipulationManager.h:391
Contains makVrv:DtSelectionManager class.
Definition: vrfObjectManipulationManager.h:408
KindToTypeMap myKindToTypeMap
Definition: vrfObjectManipulationManager.h:392
makVrv::DtSelectionManager::IdSet myRemainingSavedSelections
Definition: vrfObjectManipulationManager.h:384
bool myIsDestroyingProp
Definition: vrfObjectManipulationManager.h:405
DtEditingType
Definition: vrfObjectManipulationHandlerBaseClass.h:42
DtVrfEditManagerEventProcessor * myEventProcessor
Definition: vrfObjectManipulationManager.h:380
VertexEditingTypeMap myVertexEditingTypeMap
Definition: vrfObjectManipulationManager.h:378
boost::signals2::signal< void()> signal_eventProcessorRemoved
Definition: vrfObjectManipulationManager.h:227
#define DT_DLL_VRFGUICORE
Contains DLL export macros.
Definition: vrfGuiCore.h:25
The Master Scenario Settings Dialog.
Definition: vrfObjectManipulationManager.h:50
The abstract Channel Class.
Definition: DtChannel.h:35
boost::signals2::signal< void(const makVrv::DtSelectionManager::IdSet &, DtEditingType)> signal_editingTerrainProps
Definition: vrfObjectManipulationManager.h:333
boost::signals2::signal< void()> signal_selectionRestored
Signal when the selection has been restored to what it was before creation.
Definition: vrfObjectManipulationManager.h:206
makVrv::DtSelectionManager::IdSet mySavedSelectionState
Definition: vrfObjectManipulationManager.h:383
DtOrderedEntityTypeList< DtEntityType * > VertexEditingTypeMap
Definition: vrfObjectManipulationManager.h:54
boost::unordered_map< makVrv::DtElementEntry::ElementType, DtVrfObjectManipulationHandlerCreatorInterface * > TypeCreatorMap
Definition: vrfObjectManipulationManager.h:394
Contains makVrv::DtVirtualBaseClass class.
makVrv::DtSelectionManager::IdSet myObjectsEditing
Definition: vrfObjectManipulationManager.h:385
boost::signals2::signal< void()> signal_editingNotAllowed
Definition: vrfObjectManipulationManager.h:336
makVrv::DtSignalConnectionManager myAnnouncerSignals
Definition: vrfObjectManipulationManager.h:404
Definition: vrfObjectFacadeInterface.h:53
Definition: vrfObjectManipulationHandlerBaseClass.h:75
Definition: vrfObjectManipulationHandlerBaseClass.h:44
Definition: vrfObjectManipulationHandlerBaseClass.h:90
boost::signals2::signal< void(bool &)> signal_deleteSelected
Signal to delete the selected objects. Set handled to true if delete is handled.
Definition: vrfObjectManipulationManager.h:203
std::vector< EntryAttributes > EntryAttributesList
Define the type used to signal changes to one or more attributes for one or more elements.
Definition: DtElementAttributeManager.h:45
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
boost::unordered_map< makVrv::DtUniqueID, bool > EditableMap
Definition: vrfObjectManipulationManager.h:388
boost::signals2::signal< void(DtEntityType, DtEditingType)> signal_editingObjectByEntityType
Definition: vrfObjectManipulationManager.h:329
VrfObjectManipulationCreators myManipulationHandlers
Definition: vrfObjectManipulationManager.h:377
ElementType
Definition: DtElementEntry.h:26
Definition: vrfObjectManipulationHandlerBaseClass.h:827
boost::signals2::signal< void(DtVrfObjectFacadeInterface *)> signal_objectFacadeAboutToBeRemoved
Definition: vrfObjectManipulationManager.h:222
AllowEditingOf allowEditingOf() const
Definition: vrfObjectManipulationManager.h:240
boost::signals2::signal< void(const makVrv::DtSelectionManager::IdSet &, DtEditingType)> signal_editingObjects
Definition: vrfObjectManipulationManager.h:332
boost::signals2::signal< void(int, DtEnvironmentStateView *, DtVector &)> signal_aboutToAddPoint
About to add the point at the given index for the given state view. Point is in world coordinates...
Definition: vrfObjectManipulationManager.h:212
Definition: vrfObjectManipulationHandlerBaseClass.h:492
DtOrderedEntityTypeList< DtVrfObjectManipulationHandlerCreatorInterface * > VrfObjectManipulationCreators
Definition: vrfObjectManipulationManager.h:53
boost::signals2::signal< void(const DtVrfObjectManipulationHandlerBaseClass::ObjectManipulationData &)> signal_createObject
Definition: vrfObjectManipulationManager.h:216
AllowEditingOf
Definition: vrfObjectManipulationManager.h:59
Base class to provide boost signal/slot management.
boost::signals2::signal< void()> signal_creatingTerrainProp
Definition: vrfObjectManipulationManager.h:218
boost::signals2::signal< void()> signal_stopped
Definition: vrfObjectManipulationManager.h:214
makVrv::DtSelectionManager::IdSet myVisibleObjects
Definition: vrfObjectManipulationManager.h:386
boost::signals2::signal< void(const DtEntityType &, int, makVrf::DtCreationSignalType)> signal_creatingObject
Definition: vrfObjectManipulationManager.h:215
Contains makVrv::DtUniqueID type.
Contains the DtElementAttributeManager class declaration.
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:70
boost::function< void(DtEnvironmentStateView *)> ProcessEnvStateFunction
Definition: vrfObjectManipulationManager.h:55
std::vector< DtVrfObjectManipulationHandlerBaseClass * > myHandlersToBeCleanedUp
Definition: vrfObjectManipulationManager.h:400
double myLocalWaitTimeAfterComplete
Definition: vrfObjectManipulationManager.h:398
EditableMap myEditableMap
Definition: vrfObjectManipulationManager.h:389
std::set< DtUniqueID > IdSet
Definition: DtSelectionManager.h:32
DtCreationSignalType
Option to supply to the createObject method.
Definition: vrfObjectManipulationHandlerBaseClass.h:73
boost::signals2::signal< void(const DtString &, const DtString &)> signal_createTerrainProp
Definition: vrfObjectManipulationManager.h:219
Listen for double-click events on behalf of the DtVrfEditManager and initiate the edit process...
Definition: vrfEditManagerEventProcessor.h:35
Contains makVrv::DtElementEntry class.
boost::signals2::signal< void(DtVrfObjectFacadeInterface *, bool)> signal_objectFacadeCreated
Definition: vrfObjectManipulationManager.h:221
boost::signals2::signal< void(int, DtEnvironmentStateView *, DtVector)> signal_aboutToDeletePoint
About to delete the point for the given state view at the given index.
Definition: vrfObjectManipulationManager.h:209
DtVrfObjectManipulationHandlerBaseClass * myCurrentObjectManipulationHandler
Definition: vrfObjectManipulationManager.h:379