23 #include <boost/signal.hpp>
35 #define DtMultipleObjectEditorManipulationHandlerType DtEntityType(300, 300, 300, 300, 300, 300, 300)
39 class DtVrfObjectManipulationHandlerBaseClass;
40 class DtVrfEditManagerEventProcessor;
55 AllowLocalObjects = 0x00000001,
56 AllowPublishedObjects = 0x00000002,
57 AllowAll = AllowLocalObjects | AllowPublishedObjects
69 bool creatingObject()
const;
76 virtual void setAlwaysCreateLocal(
bool);
77 virtual bool alwaysCreateLocal()
const;
85 virtual void removeObjectManipulationHandler(
const DtEntityType&);
108 virtual std::vector<DtVector> convertToLocal(
const std::vector<DtVector>& geocentric)
const;
111 virtual bool isEditingOrCreating()
const;
114 virtual bool isBoxObject(
const DtEntityType&,
const std::string& keywords)
const;
128 virtual bool isCreatingProp()
const;
132 virtual bool isDestroyingProp()
const;
133 virtual void setIsDestroyingProp(
bool);
149 virtual void slot_onCreateTerrainProp(
const DtString& propType,
const DtString& propModelDef);
153 virtual void cleanup();
164 virtual void mapEntityTypeToVertexEditingType(
const DtEntityType& from,
const DtEntityType& to);
165 virtual DtEntityType mapToVertexEditingType(
const DtEntityType& from)
const;
166 virtual void removeToVertexEditingType(
const DtEntityType& from);
177 const std::string& keywords =
"");
180 virtual void setLocation(
const DtVector& loc);
183 virtual void createTerrainProp(
const DtString& propType,
const DtString& propModelDef);
203 boost::signal<void (const DtVrfObjectManipulationHandlerBaseClass::ObjectManipulationData&)>
signal_createObject;
220 virtual void setAllowEditing(
bool b);
223 virtual bool allowEditing()
const;
224 virtual bool allowLocalObjectsEditing()
const;
225 virtual bool allowPublishedObjectsEditing()
const;
247 virtual void setEditStartedByDoubleClick(
bool);
250 virtual void deleteSelected();
262 virtual void addVertexBeforeSelected();
269 virtual void addVertexAfterSelected();
273 const DtVector& dbVtxLocation )
const;
286 ProcessEnvStateFunction* processor );
289 virtual void setWaitTimeAfterComplete(
double);
290 virtual double waitTimeAfterComplete()
const;
293 virtual void setLocalWaitTimeAfterComplete(
double);
294 virtual double localWaitTimeAfterComplete()
const;
325 virtual void sessionStatusChanged(
int);
329 virtual void slot_onTick();
331 virtual void slot_onAttributesChanged(
362 typedef boost::unordered_map<makVrv::DtUniqueID, bool>
EditableMap;
365 typedef boost::unordered_map<int, makVrv::DtElementEntry::ElementType>
KindToTypeMap;
368 typedef boost::unordered_map<makVrv::DtElementEntry::ElementType, DtVrfObjectManipulationHandlerCreatorInterface*>
TypeCreatorMap;