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);
146 virtual void slot_onCreateTerrainProp(
const DtString& propType,
const DtString& propModelDef);
150 virtual void cleanup();
161 virtual void mapEntityTypeToVertexEditingType(
const DtEntityType& from,
const DtEntityType& to);
162 virtual DtEntityType mapToVertexEditingType(
const DtEntityType& from)
const;
163 virtual void removeToVertexEditingType(
const DtEntityType& from);
174 const std::string& keywords =
"");
177 virtual void setLocation(
const DtVector& loc);
180 virtual void createTerrainProp(
const DtString& propType,
const DtString& propModelDef);
197 boost::signal<void (const DtVrfObjectManipulationHandlerBaseClass::ObjectManipulationData&)>
signal_createObject;
212 virtual void setAllowEditing(
bool b);
215 virtual bool allowEditing()
const;
216 virtual bool allowLocalObjectsEditing()
const;
217 virtual bool allowPublishedObjectsEditing()
const;
237 virtual void setEditStartedByDoubleClick(
bool);
240 virtual void deleteSelected();
252 virtual void addVertexBeforeSelected();
259 virtual void addVertexAfterSelected();
263 const DtVector& dbVtxLocation )
const;
279 virtual void setWaitTimeAfterComplete(
double);
280 virtual double waitTimeAfterComplete()
const;
283 virtual void setLocalWaitTimeAfterComplete(
double);
284 virtual double localWaitTimeAfterComplete()
const;
315 virtual void sessionStatusChanged(
int);
319 virtual void slot_onTick();
321 virtual void slot_onAttributesChanged(
352 typedef boost::unordered_map<makVrv::DtUniqueID, bool>
EditableMap;
355 typedef boost::unordered_map<int, makVrv::DtElementEntry::ElementType>
KindToTypeMap;
358 typedef boost::unordered_map<makVrv::DtElementEntry::ElementType, DtVrfObjectManipulationHandlerCreatorInterface*>
TypeCreatorMap;