20 #include <vlutil/vlPerformanceStats.h>
23 #include <matrix/vlVector.h>
24 #include <matrix/geodeticCoord.h>
25 #include <vlpi/entityType.h>
31 class DtSimObjectEntry;
83 class DtVrfObjectManipulationEventProcessor;
104 virtual bool createObject(
const DtEntityType& entType,
int force,
108 virtual bool createObject(
const DtString& key,
const DtString& associatedData,
120 virtual bool canSetActivationTime()
const;
123 virtual bool canShowForces()
const;
126 virtual void setForce(
int);
130 virtual void monitorObjectRemoval(
bool);
134 virtual bool isDoubleClickSupportedForCurrentObject()
const;
137 virtual void setEventProcessingEnabled(
bool value );
140 virtual void clearEventProcessor();
143 virtual bool embarkationAllowed()
const;
144 virtual void setEmbarkationAllowed(
bool);
149 virtual bool canEmbark()
const;
152 virtual void setCanEmbark(
bool);
155 virtual void setDoNotClamp(
bool);
156 bool doNotClamp()
const;
159 virtual bool needsEmbarkOnCheck()
const;
162 virtual void setIgnoreNextLeftButtonRelease(
bool b);
163 virtual void setEditStartedByDoubleClick(
bool);
166 virtual void setCreationEndedWithDoubleClick(
bool creationEndedWithDoubleClick);
169 virtual bool isCreationEndedWithDoubleClick()
const;
173 virtual bool isObjectValidForCreation();
180 virtual DtUUID uuid()
const;
185 virtual void removeInterfaceContentMessage(
const std::string&);
188 return myContentMessages;
194 virtual std::list<DtSimInterfaceContent*> contentMessagesToList()
const;
196 virtual void sendContentMessages();
199 virtual VrfObjectEditFacadeList objectFacades()
const;
202 virtual void setAllowCreationOnMouseClick(
bool flag);
205 virtual void setLabel(
const std::string&);
206 virtual std::string label()
const;
209 virtual bool allowCreationOnMouseClick()
const;
216 virtual DtVector clampToGround(
const DtVector&,
int clampFlag = -1,
bool* foundClamp =
nullptr)
const;
217 virtual DtGeodeticCoord clampToGround(
const DtGeodeticCoord&,
int clampFlag = -1,
bool* foundClamp =
nullptr)
const;
220 virtual void setAttachObjectToMouse(
bool);
223 virtual bool attachObjectToMouse()
const;
226 virtual void setHeading(
double value);
227 virtual double heading()
const;
230 virtual void setPitch(
double value);
231 virtual double pitch()
const;
234 virtual void setLocation(
const DtVector& loc);
235 virtual void setLocation(
const DtVector& loc,
double altAboveGround);
241 virtual void deferredStop();
244 virtual int objectCount()
const;
247 virtual bool createVrfObject();
251 virtual bool modifyVrfObjects();
266 virtual void initializeEventProcessor();
269 virtual void setOverlay(
const std::string& name);
270 virtual std::string overlay()
const;
271 virtual std::string defaultOverlayForCreatingObject()
const;
274 virtual std::string getNextCreatingName(
bool includeCurrent =
false);
277 virtual void setAltitudeAboveGL(
double alt,
bool setInProcessor =
true );
280 virtual void setAltitudeAboveGLForAll(
double alt,
bool setInProcessor =
true );
283 virtual void setAltitudeAboveSL(
double alt,
bool setInProcessor =
true );
286 virtual void setAltitudeAboveSLForAll(
double alt,
bool setInProcessor =
true );
294 return myAltitudeClampType;
297 virtual void setCreating(
bool b);
308 virtual std::set<makVrv::DtUniqueID> elementIDs()
const;
310 virtual void setUserData(
const std::string& userData);
311 virtual const std::string& userData()
const;
313 virtual void setExtendedLabels(
const std::map<int, DtString>&);
314 virtual const std::map<int, DtString>& extendedLabels()
const;
316 virtual void setExtendedDataMap(
const std::map<std::string, std::string>& extendedData);
317 virtual void setExtendedDataMap(
const std::map<DtString, DtString>& extendedData);
318 virtual const std::map<std::string, std::string>& extendedDataMap()
const;
319 virtual void setExtendedData(
const std::string& key,
const std::string& value);
320 virtual void removeExtendedData(
const std::string& key);
321 virtual std::string extendedData(
const std::string& key)
const;
323 virtual void slot_onComplete();
324 virtual void slot_onPlace(
makVrv::DtUniqueID,
const DtVector&,
double altAboveGround);
325 virtual void slot_onEditComplete(
makVrv::DtUniqueID,
const DtVector&,
double altAboveGround);
326 virtual void slot_onLocationChanged(
const DtVector& location,
double altAboveGround );
327 virtual void slot_onAltitudeIsDragging(
bool);
332 virtual void setPublishObject(
bool);
333 virtual bool publishObject()
const;
336 virtual void setObjectName(
const std::string& name);
339 virtual void setUUIDForCreation(
const DtUUID&);
340 virtual const DtUUID& uuidForCreation()
const;
343 virtual bool isUniqueName()
const;
348 virtual double groundHeight(
const DtVector& localPosition, DtVector* localGround = 0,
349 const std::vector<makVrv::DtUniqueID>& ignore = std::vector<makVrv::DtUniqueID>())
const;
351 virtual void setAltitudeAllowed(
bool);
352 bool altitudeAllowed()
const;
355 bool pitchAllowed()
const;
357 virtual const std::string& objectName()
const;
361 virtual bool anchorMouseToOrigin()
const;
364 virtual bool anchorPositionIsMouse()
const;
367 virtual void setAnchorPosition(
const DtGeodeticCoord&);
370 virtual DtVector localLocation();
372 virtual DtVector convertGeocentricToGround(
const DtVector& geoc,
double& altitude)
const;
374 virtual void setShowPropertiesDialogBeforeCreate(
bool);
375 virtual bool showPropertiesDialogBeforeCreate()
const;
378 virtual bool keywordsContain(
const std::string&)
const;
379 virtual std::string keyword(
const std::string&)
const;
380 virtual std::string value(
const std::string&)
const;
381 virtual void addKeyword(
const std::string&);
382 virtual void removeKeyword(
const std::string&);
383 virtual bool keywordValue(
const std::string&,
double& value)
const;
390 virtual bool waitingToStop()
const;
395 return myEditingType;
404 virtual std::vector<makVrv::DtElementID> ignoreList()
const;
408 virtual void setOverrideIdsToIgnore(
const std::vector<makVrv::DtUniqueID>& overrideIgnore);
411 virtual const std::vector<makVrv::DtElementID>& unifiedIgnoreList()
const;
413 virtual void slot_onAltitudeChanged(
const DtVector&,
double);
416 virtual void cancel();
419 virtual void setFacadesVisible(
bool);
422 virtual bool noStyle()
const;
424 virtual void slot_onHeadingChanged(
double heading );
425 virtual void slot_onPitchChanged(
double heading );
428 virtual void setHeadingOffset(
double d);
431 virtual void setPitchOffset(
double d);
434 virtual void disconnectPlacement();
438 virtual void setGroundClampOnPlacement(
bool);
439 virtual bool groundClampOnPlacement()
const;
446 virtual void connectPlacement();
449 virtual DtVector centerOfMass()
const;
453 virtual DtVector sumOfAllLocations()
const;
456 virtual void updateOffsetsBasedOnMousePosition(
const DtVector& centerOfMass,
const DtGeodeticCoord&,
457 bool usImagePoints =
false);
460 virtual void setSignalOnMultiSelectionComplete(
bool);
463 virtual void setKeywords(
const std::string&);
467 virtual void setSelectionCount(
int);
469 virtual void parseKeywords(
const std::string&);
471 virtual bool warpMouseToOrigin()
const;
472 virtual void setWarpMouseToOrigin(
bool);
506 physicalLineHeight(0.), physicalLineWidth(0.), isClosedFigure(false) , isProjected(false), embarkId(0), useSlotIfAvailable(false), initialUUID(
DtUUID::nullUUID()) {};
509 entityType(omd.entityType)
510 , createdEntityType(omd.createdEntityType)
511 , objectName(omd.objectName)
513 , positions(omd.positions)
514 , heading(omd.heading)
516 , isProjected(omd.isProjected)
517 , isClosedFigure(omd.isClosedFigure)
518 , clamped(omd.clamped)
519 , isAggregated(omd.isAggregated)
520 , userData(omd.userData)
521 , isPublished(omd.isPublished)
522 , extendedData(omd.extendedData)
523 , extendedLabels(omd.extendedLabels)
524 , myOwnsContentMessages(true)
526 , appearance(omd.appearance)
527 , overlay(omd.overlay)
528 , projected(omd.projected)
529 , physicalLineHeight(omd.physicalLineHeight)
530 , physicalLineWidth(omd.physicalLineWidth)
531 , embarkId(omd.embarkId)
532 , useSlotIfAvailable(omd.useSlotIfAvailable)
533 , initialUUID(omd.initialUUID)
540 if (myOwnsContentMessages)
542 deleteContentMessages();
548 std::list<DtSimInterfaceContent*>::iterator iter = myContentMessages.begin();
549 while (iter != myContentMessages.end())
555 myContentMessages.clear();
556 myOwnsContentMessages =
false;
561 if (myOwnsContentMessages)
563 deleteContentMessages();
566 ContentMessages::const_iterator iter = messages.begin();
567 while (iter != messages.end())
569 myContentMessages.push_back(iter->second->clone());
576 if (myOwnsContentMessages)
578 deleteContentMessages();
581 std::list<DtSimInterfaceContent*>::const_iterator iter = messages.begin();
582 while (iter != messages.end())
584 myContentMessages.push_back((*iter)->clone());
591 myContentMessages.push_back(message.
clone());
633 boost::signals2::signal<void (DtVrfObjectManipulationHandlerBaseClass*)>
signal_stopped;
639 boost::signals2::signal<void (DtVrfObjectManipulationHandlerBaseClass*)>
signal_complete;
670 virtual void clearConnections();
671 virtual void slot_onPrincipalStateViewUpdated();
681 virtual void slot_onCancel(
bool escPressed);
683 virtual std::string stripNumbers(
const std::string& base)
const;
687 virtual void warpMouseToLocation(
makVrv::DtChannel* channel,
const DtVector& location )
const ;
691 virtual void initializeEdit();
694 virtual void initializeLocationChangeConnections();
698 virtual bool centerOn(
const makVrv::DtUniqueID&
id, DtVector* centerPos = 0,
const DtVector* centerHere = 0,
699 bool centerOnOnlyIfMousePositionIsOffWindow =
true)
const;
702 bool resetOrigin =
false);
706 virtual std::string defaultOverlayFor()
const;
709 virtual bool continueWithHandlerCancelOnLastObjectRemoval();
710 virtual bool isOkToStopEditing();
711 virtual void handlerDisabled();
714 const DtVector& thisGeocLocation,
const DtTaitBryan& thisGeocOrientation,
715 const DtVector& prGeocLocation,
const DtTaitBryan& prGeocOrientation);
719 const DtVector& thisGeocLocation,
const DtVector& prGeocLocation,
bool relativeOnly =
false);
723 const DtVector& thisGeocLocation,
const DtVector& prGeocLocation);
726 const DtVector& principalLocation,
const DtTaitBryan& principalOrientation);
727 virtual void calculateAnchor(
const DtVector& localAnchor);
730 virtual void initializeAltitudeAboveTerrainForEdit(
double curAlt,
const DtVector& curPos,
736 virtual bool clampOnPlacement()
const;
739 virtual bool clampAtClosestPolygonOnPlacement()
const;
742 virtual void updateOffsetsBasedOnMousePosition();
744 virtual bool setupIgnoreLists();
749 virtual void slot_elementsCreated(
const std::vector<makVrv::DtElementID>&);
839 template <
typename T>
Definition: vrfObjectManipulationHandlerBaseClass.h:61
UUID is a unique ID wrapper class.
Definition: uuid.h:59
bool myPublishObject
Definition: vrfObjectManipulationHandlerBaseClass.h:795
IntersectProperties
The IntersectProperties enum is a flag set that indicates the types of nodes to be considered for int...
Definition: DtIntersector.h:31
Equivalent to context except when determining anchor position. Anchor position will be the principal ...
Definition: vrfObjectManipulationHandlerBaseClass.h:48
boost::signals2::signal< void(DtVrfObjectFacadeInterface *)> signal_objectFacadeAboutToBeRemoved
Sent when object facade interface is about to be removed.
Definition: vrfObjectManipulationHandlerBaseClass.h:664
boost::signals2::signal< void(DtVrfObjectManipulationHandlerBaseClass *)> signal_restoreSelectionState
Sent when the handler has been notified that its attribute changes (show) requests have been made...
Definition: vrfObjectManipulationHandlerBaseClass.h:658
Manage the tick and mouse events when editing or placing a Vrf object.
Definition: vrfObjectManipulationEventProcessor.h:37
Definition: vrfObjectManipulationHandlerBaseClass.h:55
double myDeferStopFor
Definition: vrfObjectManipulationHandlerBaseClass.h:792
std::map< std::string, std::string > extendedData
Definition: vrfObjectManipulationHandlerBaseClass.h:613
Definition: vrfObjectManipulationHandlerBaseClass.h:45
int mySelectionCount
Definition: vrfObjectManipulationHandlerBaseClass.h:805
virtual ~ObjectManipulationData()
Definition: vrfObjectManipulationHandlerBaseClass.h:538
boost::signals2::signal< void(DtVrfObjectManipulationHandlerBaseClass *)> signal_multiSelectonCreationComplete
If flag is set to signal this, signals when the creation of all objects for a multi-select is complet...
Definition: vrfObjectManipulationHandlerBaseClass.h:501
boost::signals2::signal< void(DtVrfObjectManipulationHandlerBaseClass *)> signal_stopped
Sent when entity creation has stopped.
Definition: vrfObjectManipulationHandlerBaseClass.h:633
bool myOwnsEventProcessor
Definition: vrfObjectManipulationHandlerBaseClass.h:762
bool myOverlayHasBeenSet
Definition: vrfObjectManipulationHandlerBaseClass.h:816
Definition: vrfObjectManipulationHandlerBaseClass.h:62
DtReferenceEllipsoid * myReferenceForConversion
Definition: vrfObjectManipulationHandlerBaseClass.h:783
bool myGroundClampOnPlacement
Definition: vrfObjectManipulationHandlerBaseClass.h:793
DtVrfObjectManipulationEventProcessor * myEventProcessor
Definition: vrfObjectManipulationHandlerBaseClass.h:761
boost::signals2::signal< void(DtVrfObjectFacadeInterface *, DtSimObjectReference editStateView)> signal_preVisualization
Signal sent before any visualizers are created on the interface.
Definition: vrfObjectManipulationHandlerBaseClass.h:491
boost::signals2::signal< void(DtVrfObjectFacadeInterface *, bool)> signal_objectFacadeCreated
signal sent after the facade is created. If the boolean is true, this was created for an edit mode ...
Definition: vrfObjectManipulationHandlerBaseClass.h:495
std::vector< makVrv::DtElementID > myOverrideIdsToIgnore
Definition: vrfObjectManipulationHandlerBaseClass.h:827
DtRwNLengthStringVector is a named, readable/writable vector of strings of arbitrary length...
Definition: rwNLengthStringVector.h:28
std::vector< DtVector > positions
Definition: vrfObjectManipulationHandlerBaseClass.h:599
DtEntityType entityType
If you want content messages cloned and deleted use the set command.
Definition: vrfObjectManipulationHandlerBaseClass.h:595
Definition: vrfObjectManipulationHandlerBaseClass.h:57
std::string overlay
Definition: vrfObjectManipulationHandlerBaseClass.h:617
bool myMultiSelection
Definition: vrfObjectManipulationHandlerBaseClass.h:806
bool myShowPropertiesDialogBeforeCreate
Definition: vrfObjectManipulationHandlerBaseClass.h:788
DtVrfObjectManipulationHandlerCreator(makVrv::DtDe &de)
Definition: vrfObjectManipulationHandlerBaseClass.h:843
boost::signals2::signal< void(DtVrfObjectManipulationHandlerBaseClass *)> signal_eventProcessorRemoved
Sent when the event processor has been destroyed.
Definition: vrfObjectManipulationHandlerBaseClass.h:636
bool isAggregated
Definition: vrfObjectManipulationHandlerBaseClass.h:604
boost::signals2::signal< void(double)> signal_headingChanged
signal sent when the mouse changes the orientation of an object during creation/editing ...
Definition: vrfObjectManipulationHandlerBaseClass.h:645
bool myDoNotClamp
Definition: vrfObjectManipulationHandlerBaseClass.h:821
Contains makVrv:DtSelectionManager class.
Emits the signal_createObject from the makVrf::DtVrfObjectManipulationManager when an object is to be...
Definition: vrfObjectManipulationHandlerBaseClass.h:77
Emits the signal_createObject from the makVrf::DtVrfObjectManipulationManager when an object is to be...
Definition: vrfObjectManipulationHandlerBaseClass.h:78
boost::signals2::signal< void(double)> signal_pitchChanged
signal sent when the mouse changes the pitch of an object during creation/editing ...
Definition: vrfObjectManipulationHandlerBaseClass.h:648
bool myEmbarkInSlotIfAvailable
Definition: vrfObjectManipulationHandlerBaseClass.h:814
Definition: vrfObjectManipulationHandlerBaseClass.h:64
bool isProjected
Definition: vrfObjectManipulationHandlerBaseClass.h:603
DtEditingType
Definition: vrfObjectManipulationHandlerBaseClass.h:42
Default usage. This will create an object for either multiple occurances (single point) or once (mult...
Definition: vrfObjectManipulationHandlerBaseClass.h:76
std::map< int, DtString > extendedLabels
Definition: vrfObjectManipulationHandlerBaseClass.h:614
Definition: vrfObjectManipulationHandlerBaseClass.h:58
void deleteContentMessages()
Definition: vrfObjectManipulationHandlerBaseClass.h:546
std::vector< makVrv::DtUniqueID > myModelIds
Definition: vrfObjectManipulationHandlerBaseClass.h:825
const std::vector< std::string > & keywords() const
Definition: vrfObjectManipulationHandlerBaseClass.h:385
int myForce
Definition: vrfObjectManipulationHandlerBaseClass.h:754
std::string userData
Definition: vrfObjectManipulationHandlerBaseClass.h:605
std::vector< makVrv::DtElementID > myUnifiedIgnoreList
Definition: vrfObjectManipulationHandlerBaseClass.h:823
bool isPublished
Definition: vrfObjectManipulationHandlerBaseClass.h:606
double heading
Definition: vrfObjectManipulationHandlerBaseClass.h:600
#define DT_DLL_VRFGUICORE
Contains DLL export macros.
Definition: vrfGuiCore.h:25
VrfObjectEditFacadeList myObjectImages
Definition: vrfObjectManipulationHandlerBaseClass.h:782
static DtSimObjectReferenceTemplate nullReference()
bool myWarpMouseToOrigin
Definition: vrfObjectManipulationHandlerBaseClass.h:817
double physicalLineWidth
Definition: vrfObjectManipulationHandlerBaseClass.h:611
std::string myOverlay
Definition: vrfObjectManipulationHandlerBaseClass.h:759
makVrv::DtDe & myDe
Definition: vrfObjectManipulationHandlerBaseClass.h:857
std::map< int, DtString > myExtendedLabels
Definition: vrfObjectManipulationHandlerBaseClass.h:770
boost::signals2::signal< void(const DtVector &)> signal_placement
signal sent when the left mouse is pressed during creation/editing
Definition: vrfObjectManipulationHandlerBaseClass.h:654
double physicalLineHeight
Definition: vrfObjectManipulationHandlerBaseClass.h:610
Definition: vrfObjectManipulationHandlerBaseClass.h:47
std::map< std::string, DtSimInterfaceContent * > ContentMessages
Definition: vrfObjectManipulationHandlerBaseClass.h:92
makVrv::DtSignalConnectionManager myCreateConnections
Definition: vrfObjectManipulationHandlerBaseClass.h:812
DtGeodeticCoord myAnchorPosition
Definition: vrfObjectManipulationHandlerBaseClass.h:789
Definition: vrfObjectManipulationHandlerBaseClass.h:46
The abstract Channel Class.
Definition: DtChannel.h:35
Definition: modelSetEntry.h:34
std::string myKeyData
Definition: vrfObjectManipulationHandlerBaseClass.h:773
DtSimObjectReference myPrincipalStateView
Definition: vrfObjectManipulationHandlerBaseClass.h:800
double myTotalTimeElapsed
Definition: vrfObjectManipulationHandlerBaseClass.h:791
std::string myObjectName
Definition: vrfObjectManipulationHandlerBaseClass.h:758
boost::signals2::signal< void(double)> signal_altitudeChanged
signal sent when the mouse changes the altitude of an object during creation/editing ...
Definition: vrfObjectManipulationHandlerBaseClass.h:651
DtUUID myUUIDForCreation
Definition: vrfObjectManipulationHandlerBaseClass.h:808
bool projected
Definition: vrfObjectManipulationHandlerBaseClass.h:609
DtAltitudeClampType altitudeClampType() const
Definition: vrfObjectManipulationHandlerBaseClass.h:292
Definition: vrfObjectFacadeInterface.h:53
boost::signals2::signal< void()> signal_preObjectCreation
Signal sent before data is assigned to internal structures for object creation (local or on network) ...
Definition: vrfObjectManipulationHandlerBaseClass.h:475
Definition: vrfObjectManipulationHandlerBaseClass.h:75
Definition: vrfObjectManipulationHandlerBaseClass.h:44
boost::signals2::signal< void(bool)> signal_embarkationAllowedChanged
Signal emitted when the embarkation allowed state changes.
Definition: vrfObjectManipulationHandlerBaseClass.h:478
std::string objectName
In the case where the entity type is an object that has randomized elements, this is the entity type ...
Definition: vrfObjectManipulationHandlerBaseClass.h:597
unsigned int color
Definition: vrfObjectManipulationHandlerBaseClass.h:607
DtAltitudeClampType myAltitudeClampType
Definition: vrfObjectManipulationHandlerBaseClass.h:784
boost::signals2::signal< void(bool)> signal_attachObjectToMouse
Signal sent when attached object to mouse changes.
Definition: vrfObjectManipulationHandlerBaseClass.h:488
int force
Definition: vrfObjectManipulationHandlerBaseClass.h:598
Definition: vrfObjectManipulationHandlerBaseClass.h:88
bool myAltitudeIsDragging
Definition: vrfObjectManipulationHandlerBaseClass.h:763
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
When creating, keep the name in the edit box instead of creating a new, unique name. This is for local object creation only.
Definition: vrfObjectManipulationHandlerBaseClass.h:79
Definition: vrfObjectManipulationHandlerBaseClass.h:60
bool clamped
Definition: vrfObjectManipulationHandlerBaseClass.h:602
HandlerType
The type of handler this is.
Definition: vrfObjectManipulationHandlerBaseClass.h:52
boost::signals2::signal< void(const DtString &, const DtString &)> signal_createTerrainProp
signal sent when prop wants to be created
Definition: vrfObjectManipulationHandlerBaseClass.h:630
bool myCreationEndedWithDoubleClick
Definition: vrfObjectManipulationHandlerBaseClass.h:830
makVrv::DtSelectionManager::IdSet myEditingObjects
Definition: vrfObjectManipulationHandlerBaseClass.h:778
bool myCheckedEmbark
Definition: vrfObjectManipulationHandlerBaseClass.h:819
bool creating() const
Definition: vrfObjectManipulationHandlerBaseClass.h:299
Definition: vrfObjectManipulationHandlerBaseClass.h:63
ElementType
Definition: DtElementEntry.h:26
makVrv::DtUniqueID myEmbarkOnId
Definition: vrfObjectManipulationHandlerBaseClass.h:813
void addContentMessage(const DtSimInterfaceContent &message)
Definition: vrfObjectManipulationHandlerBaseClass.h:589
Definition: vrfObjectManipulationHandlerBaseClass.h:833
DtTimedSection * myDeferredStopTimer
Definition: vrfObjectManipulationHandlerBaseClass.h:790
boost::signals2::signal< void(const makVrv::DtUniqueID &)> signal_principalStateViewUpdated
Sent when principal state view is updated for editing.
Definition: vrfObjectManipulationHandlerBaseClass.h:661
boost::signals2::signal< void(DtVrfObjectManipulationHandlerBaseClass *)> signal_complete
Sent when entity creation has completed (right-click)
Definition: vrfObjectManipulationHandlerBaseClass.h:639
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
ContentMessages myContentMessages
Definition: vrfObjectManipulationHandlerBaseClass.h:802
std::vector< std::string > myKeywords
Definition: vrfObjectManipulationHandlerBaseClass.h:796
boost::signals2::signal< void(int)> signal_forceChanged
Sent when force changed.
Definition: vrfObjectManipulationHandlerBaseClass.h:667
boost::signals2::connection myObjectRemovalConnection
Definition: vrfObjectManipulationHandlerBaseClass.h:780
std::set< makVrv::DtUniqueID > myDIGuyIdsIgnored
Definition: vrfObjectManipulationHandlerBaseClass.h:824
bool myAltitudeAllowed
Definition: vrfObjectManipulationHandlerBaseClass.h:764
Definition: vrfObjectManipulationHandlerBaseClass.h:503
makVrv::DtDe & myDe
Definition: vrfObjectManipulationHandlerBaseClass.h:755
makVrv::DtChannel * myHiddenChannel
Definition: vrfObjectManipulationHandlerBaseClass.h:766
double pitch
Definition: vrfObjectManipulationHandlerBaseClass.h:601
Definition: vrfObjectManipulationHandlerBaseClass.h:59
Definition: vrfObjectManipulationHandlerBaseClass.h:67
bool myAllowCreationOnClick
Definition: vrfObjectManipulationHandlerBaseClass.h:757
Base class to provide boost signal/slot management.
bool myIgnoreFirstMouseClick
Definition: vrfObjectManipulationHandlerBaseClass.h:787
boost::signals2::signal< void(bool)> signal_altitudeAllowedChanged
signal sent when altitude allowed changes
Definition: vrfObjectManipulationHandlerBaseClass.h:624
boost::signals2::signal< void(const DtEntityType &, int)> signal_started
Signaled when entity creation has started.
Definition: vrfObjectManipulationHandlerBaseClass.h:498
bool myFacadesVisible
Definition: vrfObjectManipulationHandlerBaseClass.h:799
Definition: vrfObjectManipulationHandlerBaseClass.h:69
std::list< DtSimInterfaceContent * > myContentMessages
Definition: vrfObjectManipulationHandlerBaseClass.h:615
Definition: vrfObjectManipulationHandlerBaseClass.h:54
DtCreationSignalType mySignalCreation
Definition: vrfObjectManipulationHandlerBaseClass.h:774
bool isClosedFigure
Definition: vrfObjectManipulationHandlerBaseClass.h:612
std::vector< DtVrfObjectManipulationHandlerBaseClass * > myNotifyOnFinalFacade
Definition: vrfObjectManipulationHandlerBaseClass.h:828
boost::signals2::signal< void(bool, bool)> signal_showPropertiesDialog
There are some instances where a handler does not want to finish up when creating. In that case, this signal will be set and the create properties dialog for the object will be shown so the user can take action before creating the item. By default this is not the case, and, will only be valid during object creation. The second bool (if false) will hide the attach object to mouse check box.
Definition: vrfObjectManipulationHandlerBaseClass.h:485
const ContentMessages & contentMessages() const
Definition: vrfObjectManipulationHandlerBaseClass.h:186
bool myClearedProcessor
Definition: vrfObjectManipulationHandlerBaseClass.h:765
bool myOwnsContentMessages
Definition: vrfObjectManipulationHandlerBaseClass.h:616
Contains makVrv::DtUniqueID type.
bool mySignalOnMultiSelectionComplete
Definition: vrfObjectManipulationHandlerBaseClass.h:776
Definition: vrfObjectManipulationHandlerBaseClass.h:56
std::string myUserData
Definition: vrfObjectManipulationHandlerBaseClass.h:768
Definition: vrfObjectManipulationHandlerBaseClass.h:65
ObjectManipulationData(const ObjectManipulationData &omd)
Definition: vrfObjectManipulationHandlerBaseClass.h:508
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:76
Definition: simInterfaceContent.h:45
boost::signals2::signal< void(const ObjectManipulationData &)> signal_createObject
signal sent when object wants to be created
Definition: vrfObjectManipulationHandlerBaseClass.h:627
virtual DtVrfObjectManipulationHandlerBaseClass * create() const override
Definition: vrfObjectManipulationHandlerBaseClass.h:852
bool myOverlayChanged
Definition: vrfObjectManipulationHandlerBaseClass.h:786
bool myAttachObjectToMouse
Definition: vrfObjectManipulationHandlerBaseClass.h:753
Definition: vrfObjectManipulationHandlerBaseClass.h:840
bool myCreating
Definition: vrfObjectManipulationHandlerBaseClass.h:752
bool myShowingPropertiesDialog
Definition: vrfObjectManipulationHandlerBaseClass.h:810
std::vector< DtVrfObjectFacadeInterface * > VrfObjectEditFacadeList
Definition: vrfObjectManipulationHandlerBaseClass.h:91
virtual DtSimInterfaceContent * clone() const =0
bool myCanEmbark
Definition: vrfObjectManipulationHandlerBaseClass.h:820
makVrv::DtSignalConnectionManager myConnections
Definition: vrfObjectManipulationHandlerBaseClass.h:811
DtEditingType myEditingType
Definition: vrfObjectManipulationHandlerBaseClass.h:803
std::set< DtUniqueID > IdSet
Definition: DtSelectionManager.h:32
DtUUID initialUUID
Definition: vrfObjectManipulationHandlerBaseClass.h:620
DtEntityType createdEntityType
Definition: vrfObjectManipulationHandlerBaseClass.h:596
Definition: vrfObjectManipulationHandlerBaseClass.h:68
DtCreationSignalType
Option to supply to the createObject method.
Definition: vrfObjectManipulationHandlerBaseClass.h:73
void setContentMessages(const std::list< DtSimInterfaceContent * > &messages)
Definition: vrfObjectManipulationHandlerBaseClass.h:574
std::string myKey
Definition: vrfObjectManipulationHandlerBaseClass.h:772
bool mySignalManipulation
Definition: vrfObjectManipulationHandlerBaseClass.h:756
void setContentMessages(const ContentMessages &messages)
Definition: vrfObjectManipulationHandlerBaseClass.h:559
boost::signals2::signal< void(const DtVector &)> signal_locationChanged
signal sent when the mouse changes location during creation/editing
Definition: vrfObjectManipulationHandlerBaseClass.h:642
Creates the object immediately without waiting for a mouse click.
Definition: vrfObjectManipulationHandlerBaseClass.h:80
std::map< std::string, std::string > myExtendedData
Definition: vrfObjectManipulationHandlerBaseClass.h:769
int myCursorCount
Definition: vrfObjectManipulationHandlerBaseClass.h:798
unsigned int appearance
Definition: vrfObjectManipulationHandlerBaseClass.h:608
DtAltitudeClampType
Definition: vrfObjectFacadeInterface.h:43
ObjectManipulationData()
Definition: vrfObjectManipulationHandlerBaseClass.h:505
DtEditingType editingType() const
Definition: vrfObjectManipulationHandlerBaseClass.h:393
bool useSlotIfAvailable
Definition: vrfObjectManipulationHandlerBaseClass.h:619
virtual ~DtVrfObjectManipulationHandlerCreator()
Definition: vrfObjectManipulationHandlerBaseClass.h:848
Definition: vrfObjectManipulationHandlerBaseClass.h:66
makVrv::DtUniqueID embarkId
Definition: vrfObjectManipulationHandlerBaseClass.h:618