27 class DtDriverManager;
35 typedef std::set<DtUniqueID>
IdSet;
40 SelectionModeEntities = 1,
41 SelectionModeTerrain = 2
69 MaintainSelectionIfSelected
82 void performSelectionOperation(SelectionOperation op,
const IdSet& ids);
85 void setCurrentSelections(
const IdSet& selections );
91 void addToCurrentSelection(
const IdSet& adds );
96 void maintainCurrentSelectionIfSelected(
const IdSet& maintain );
99 void removeFromCurrentSelection(
const IdSet& removes );
103 void toggleFromCurrentSelection(
const IdSet& toggles );
106 void removeFromCurrentSelection(
110 SelectionMode selectionMode()
const;
111 void setSelectionMode( SelectionMode mode );
128 SelectionType selectionType()
const;
132 virtual bool propSelectionMajorityTransparent();
135 virtual void slot_onElementsRemoved(
139 virtual void backupCurrentSelection();
143 virtual bool restoreCurrentSelection();
145 bool selectionIsVertex(
const IdSet& selection );
154 virtual bool allItemsWantVertexSelection(
const IdSet&)
const;
166 boost::signal<void (
const IdSet& selected,
const IdSet& deselected,
167 SelectionType newType,
172 boost::signal<void (const DtUniqueID& id, const DtUniqueID& parentId)>
177 boost::signal<void (const DtUniqueID& id, const DtUniqueID& parentId)>
192 virtual void removeSelectableObjectTypeFromAllModes(
210 bool vertexSelectsParent );
221 void removeFromCurrentSelection(
DtUniqueID id );
224 void announceCurrentSelectionChanged(
const IdSet& selected,
227 void updateSelectionDisplay(
const IdSet& selected,
228 const IdSet& deselected );
230 void updateSelectionType();
235 void convertVertexIdsToParentIds(
const IdSet& in,
IdSet& out );
240 typedef boost::unordered_map<SelectionMode, ElementTypeSet>