10 #include <vrvUtil/signalslib.h>
12 #include <vrvUtil/DtVirtualBaseClass.h>
13 #include <vrvUtil/DtSignalConnectionManager.h>
14 #include <vrvCore/DtElementAttributes.h>
15 #include <vrvCore/DtElementData.h>
16 #include <vrvCore/DtUniqueID.h>
18 #include <vrvCore/DtKeyMapManager.h>
23 #include <boost/archive/xml_iarchive.hpp>
24 #include <boost/archive/xml_oarchive.hpp>
25 #include <boost/serialization/access.hpp>
26 #include <boost/serialization/nvp.hpp>
27 #include <boost/serialization/list.hpp>
28 #include <boost/serialization/map.hpp>
29 #include <boost/serialization/vector.hpp>
30 #include <boost/serialization/string.hpp>
32 #include <vlutil/vlSmartPointers.h>
44 (makVrv::DtKeyMapManager::FunctionCategory)(makVrv::DtKeyMapManager::UserDefined + 52);
66 virtual void createSelectionGroup(
const std::string&);
71 virtual void createSelectionGroupFromCurrentSelection(
const std::string& groupName,
bool select =
false);
74 virtual void clearSelectionGroup(
const std::string&);
77 virtual void removeSelectionGroup(
const std::string&);
80 virtual bool hasSelectionGroup(
const std::string&)
const;
84 virtual void renameSelectionGroup(
const std::string& from,
const std::string& to);
87 virtual void addItemToSelectionGroup(
const std::string&,
const std::string& name);
90 virtual bool atLeastOneItemNotInSelectionGroup(
const std::string&,
const GroupItems& names)
const;
91 virtual bool atLeastOneItemNotInSelectionGroup(
const std::string&,
const std::vector<std::string>& names)
const;
94 virtual bool anyItemsInSelectionGroup(
const std::string&,
const GroupItems& names)
const;
95 virtual bool anyItemsInSelectionGroup(
const std::string&,
const std::vector<std::string>& names)
const;
98 virtual void addItemsToSelectionGroup(
const std::string&,
const GroupItems& names);
99 virtual void addItemsToSelectionGroup(
const std::string&,
const std::vector<std::string>& names);
102 virtual bool itemInAnySelectionGroup(
const std::string&)
const;
105 virtual void removeItemFromSelectionGroup(
const std::string&,
const std::string& name);
108 virtual void removeItemsFromSelectionGroup(
const std::string&,
const GroupItems& names);
109 virtual void removeItemsFromSelectionGroup(
const std::string&,
const std::vector<std::string>& names);
115 virtual bool load(
const std::string&);
118 virtual bool save(
const std::string&);
121 virtual void removeAll();
124 virtual GroupItems itemsInSelectionGroup(
const std::string&)
const;
127 virtual bool itemIsInSelectionGroup(
const std::string& group,
const std::string& item)
const;
131 virtual void selectItemsInSelectionGroup(
const std::string&);
134 virtual const std::string& selectedSelectionGroup()
const;
138 virtual void slot_elementAttributeChangeRequested(
139 makVrv::DtUniqueID
id, makVrv::DtUniqueID parentId, DtBoost::shared_ptr<const makVrv::DtElementAttribute> atr );
143 virtual void addNamesToInternalMaps(
const GroupItems&);
146 virtual void removeNamesFromInternalMaps(
const GroupItems&);
149 virtual void renameItemInAllSelectionGroups(
const std::string& from,
const std::string& to);
152 virtual void slot_onAttributesChanged(
const makVrv::DtElementData::EntryAttributesList& signalList);
155 virtual void handleAttribute(makVrv::DtUniqueID
id,
const makVrv::DtElementAttribute* atr);
158 virtual void processCreateSelectionGroup(
DtSimMessage*);
162 virtual bool canRenameSelectionGroup(
const std::string&)
const;
204 friend class boost::serialization::access;
209 template<
class Archive>
210 void serialize(Archive & ar,
const unsigned int version)
212 ar & BOOST_SERIALIZATION_NVP(mySelectionGroups);
242 virtual void setForce(
int)
246 virtual bool isValid(
const makVrv::DtVrlinkSimulatedBaseState*)
const;