24 #include <matrix/geodeticCoord.h>
33 class DtCopyObjectCreator;
35 class DtVrfObjectManipulationEventProcessor;
42 typedef std::map<std::string, DtPasteInformation>
DtPasteData;
59 virtual void clearPasteData();
67 return (myObjectsCopying.size() == 0);
72 return myObjectsCopying.size();
77 return ((myPasteData.size() != 0) && !pasting());
85 virtual void cancelPaste();
99 virtual void copyOperationPending(
DtCopyObject*,
const std::string&);
105 virtual DtCopyObject* createCopyObject(
int type)
const = 0;
119 return (myObjectsPasting.size() != 0);
123 virtual void setPreserveOffsets(
bool);
124 virtual bool preserveOffsets()
const;
136 return myEventProcessor != 0;
143 myMaximumToProcessInPastePass = i;
148 return myMaximumToProcessInPastePass;
152 virtual void cleanup();
155 virtual DtCopyObject* createObjectFromPasteData(
int type,
const std::string& buffer)
const;
158 virtual void queueObjectsToPaste();
161 virtual void slot_onPaste();
165 return myObjectsPasting;
168 virtual void setPasteData(
const std::string& name,
int type,
const std::string& pasteBuffer);
173 virtual void registerName(
const DtString&);
174 virtual bool nameIsRegistered(
const DtString&)
const;
189 virtual void cleanupEventProcessor();
193 virtual void slot_onLocationChanged(
const DtVector&,
double);
196 virtual void pasteOperationPending(
DtCopyObject*,
const std::string&);
211 boost::signals2::signal<void (DtCopyObject*, const std::string&)>
signal_copied;
bool pasting() const
Returns true if currently pasting.
Definition: vrfCopyPasteHandler.h:134
boost::signals2::signal< void(DtCopyObject *, const std::string &)> signal_copyOperationPending
Definition: vrfCopyPasteHandler.h:213
int numCopying() const
Definition: vrfCopyPasteHandler.h:70
Manage the tick and mouse events when editing or placing a Vrf object.
Definition: vrfObjectManipulationEventProcessor.h:35
virtual bool canCopy() const
Definition: vrfCopyPasteHandler.h:65
boost::signals2::signal< void()> signal_pasteComplete
Definition: vrfCopyPasteHandler.h:216
std::map< DtCopyObject *, int > DtObjectsCopying
Definition: vrfCopyPasteHandler.h:43
DtVrfObjectManipulationEventProcessor * myEventProcessor
Definition: vrfCopyPasteHandler.h:231
boost::signals2::signal< void(DtCopyObject *)> signal_pasted
Definition: vrfCopyPasteHandler.h:217
std::vector< DtCopyObject * > DtObjectsDeleting
Definition: vrfCopyPasteHandler.h:44
bool hasObjectsToPaste() const
Definition: vrfCopyPasteHandler.h:117
DtGeodeticCoord myOrigin
Definition: vrfCopyPasteHandler.h:235
bool myQueueing
Definition: vrfCopyPasteHandler.h:234
const DtPasteData & pasteData() const
Returns the paste data currently in paste buffer.
Definition: vrfCopyPasteHandler.h:53
DtObjectsPasting myObjectsBeingPasted
Definition: vrfCopyPasteHandler.h:228
const DtObjectsPasting & objectsPasting() const
Definition: vrfCopyPasteHandler.h:163
boost::signals2::signal< void()> signal_stopped
Definition: vrfCopyPasteHandler.h:209
DtObjectsDeleting myToDelete
Definition: vrfCopyPasteHandler.h:230
int pasteFlags() const
Definition: vrfCopyPasteHandler.h:112
bool myPreserveOffsets
Definition: vrfCopyPasteHandler.h:238
#define DT_DLL_VRFGUICORE
Contains DLL export macros.
Definition: vrfGuiCore.h:25
DtElementEntry holds the non-simulation-specific data about an element, including its element type an...
Definition: DtElementEntry.h:22
std::map< std::string, DtPasteInformation > DtPasteData
Definition: vrfCopyPasteHandler.h:42
void setMaximumToProcessInPastePass(int i)
Maximum number of objects to try and paste in a single pass. This is to try and prevent network messa...
Definition: vrfCopyPasteHandler.h:141
boost::signals2::signal< void(DtCopyObject *)> signal_copyCancelled
Definition: vrfCopyPasteHandler.h:210
int maximumToProcessInPastePass() const
Definition: vrfCopyPasteHandler.h:146
int myPasteFlags
Definition: vrfCopyPasteHandler.h:233
Contains makVrv::DtSimEntry class.
DtPasteData myPasteData
Buffer is a map of object name to data.
Definition: vrfCopyPasteHandler.h:225
makVrv::DtDe & myDe
Definition: vrfCopyPasteHandler.h:222
Definition: copyObject.h:145
Definition: copyObject.h:124
void setPasteFlags(int f)
Definition: vrfCopyPasteHandler.h:107
DtObjectsPasting myObjectsPasting
Definition: vrfCopyPasteHandler.h:227
boost::signals2::signal< void()> signal_copyComplete
Definition: vrfCopyPasteHandler.h:212
boost::signals2::signal< void(DtCopyObject *)> signal_pasteCancelled
Definition: vrfCopyPasteHandler.h:218
std::vector< DtCopyObject * > DtObjectsPasting
Definition: vrfCopyPasteHandler.h:45
DtObjectsCopying myObjectsCopying
Definition: vrfCopyPasteHandler.h:226
boost::signals2::signal< void(bool)> signal_hasPasteData
Emitted when state of whether or not can paste has changed.
Definition: vrfCopyPasteHandler.h:208
std::pair< std::string, int > DtPasteInformation
Definition: vrfCopyPasteHandler.h:41
virtual bool canPaste() const
Definition: vrfCopyPasteHandler.h:75
DtReferenceEllipsoid myReferenceEllipsoid
Definition: vrfCopyPasteHandler.h:236
std::set< DtString > myRegisteredNames
Definition: vrfCopyPasteHandler.h:240
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::signals2::signal< void(DtCopyObject *, const std::string &)> signal_pasteOperationPending
Definition: vrfCopyPasteHandler.h:219
DtObjectsPasting myObjectsToPaste
Definition: vrfCopyPasteHandler.h:229
int myMaximumToProcessInPastePass
Definition: vrfCopyPasteHandler.h:232
boost::signals2::signal< void(DtCopyObject *, const std::string &)> signal_copied
Definition: vrfCopyPasteHandler.h:211
boost::signals2::signal< void()> signal_pasting
Definition: vrfCopyPasteHandler.h:215
Contains makVrv::DtElementEntry class.
The Master DtVrfCopyPasteManagerHandler.
Definition: vrfCopyPasteHandler.h:38