17 #include <QtCore/QString>
27 class DtSharedSettingsManager;
32 class DtVrfStateViewCollectionManager;
33 class DtVrfSelectionFilter;
41 DisableRename = 0x00000001,
42 DisableSelection = 0x00000002,
43 DisableMove = 0x00000004,
44 IsPersistent = 0x00000008,
45 DisplayIcon = 0x00000010,
46 CanUnlockOverlay = 0x00000020
49 typedef boost::function<void (const makVrv::DtStateView<makVrv::DtVrlinkSimulatedBaseState>*)>
OverlayChecker;
52 OrganizedCategory() : rank(-1), filter(0), putOnOverlayBar(true), parentIdentifier(-1), identifier(0) {};
66 static const int AllVisible = 2;
67 static const int SomeVisible = 1;
68 static const int AllHidden = 0;
81 virtual void setOrganizedOverlayAvailable(
const std::string& layerName,
bool b);
82 virtual bool alwaysAvailable(
const std::string& layerName)
const;
86 virtual void setOverlayLayerVisible(
const std::string& name,
bool);
89 virtual void slot_onElementAttributesChanged(
93 virtual int overlayVisibilityState(
const std::string&);
100 virtual void setCanRenameOverlay(
const std::string&,
bool);
101 virtual bool canRenameOverlay(
const std::string&);
103 virtual void setCanSelectOverlay(
const std::string&,
bool);
104 virtual bool canSelectOverlay(
const std::string&);
106 virtual void setCanMoveFromOverlay(
const std::string&,
bool);
107 virtual bool canMoveFromOverlay(
const std::string&);
109 virtual void setDisplayIcon(
const std::string&,
bool);
110 virtual bool displayIcon(
const std::string&);
112 virtual void setIsPersistentOverlay(
const std::string&,
bool);
113 virtual bool isPersistentOverlay(
const std::string&);
115 virtual void setCanUnlockOverlay(
const std::string&,
bool);
116 virtual bool canUnlockOverlay(
const std::string&);
118 virtual DtFilename iconFilename(
const std::string&)
const;
119 virtual DtString organizedCategoryName(
int identifier)
const;
121 virtual void deleteOverlay(
const std::string& name);
123 virtual bool allObjectOnOverlayAreVrfSimulated(
const std::string&)
const;
126 virtual void renameVrfOverlay(
const std::string& oldName,
const std::string& newName);
128 virtual void renameOverlay(
const std::string& oldName,
const std::string& newName);
131 virtual void hideOverlay(
const std::string& overlay);
133 virtual bool overlayHidden(
const std::string&)
const;
134 virtual bool putOnOverlayBar(
const std::string&)
const;
137 virtual void showOverlay(
const std::string& overlay);
139 virtual void setOverlayLocked(
const std::string& overlayName,
bool flag);
142 virtual void setOverlayDefaultHidden(
const std::string& layer,
bool);
143 virtual bool overlayDefaultHidden(
const std::string&)
const;
145 static QString organizeByCategoryOverlayName();
150 virtual int organizedCategoryToIdentifier(
const DtString& cat)
const;
155 virtual void addParentLayersIfDoNotExist(
int parentIdentifier);
157 virtual void addOverlay(
const std::string&);
172 bool putOnOverlayBar =
true,
int parentCategory = -1,
OverlayChecker = 0);
175 virtual void setAllowOnMoreThanOneLayer(
int type,
bool allow);
178 virtual void setAllowOnMoreThanOneLayer(
const std::string& type,
bool allow);
181 virtual void setOrganizedCategoryIcon(
const DtString& category,
const DtString& icon);
182 virtual void setOrganizedCategoryDisplayName(
const DtString& category,
const DtString& title);
184 virtual void setOrganizedCategoryIcon(
int identifier,
const DtString& icon);
185 virtual void setOrganizedCategoryDisplayName(
int identifier,
const DtString& title);
187 virtual void removeOrganizedCategory(
const DtString& category);
188 virtual void clearOrganizedCategories();
189 virtual bool isOrganizedLayer(
const std::string&)
const;
192 virtual std::string layerName(
const std::string&)
const;
195 virtual void renameTacticalGraphicOverlay(
const makVrv::DtUniqueID&
id,
const std::string& newName);
198 virtual int position(
const std::string&)
const;
208 virtual int numberOfOrganizedCategories()
const;
211 virtual std::string displayName(
const std::string& layer)
const;
216 virtual void setOverlayVisible(
const std::string& overlayName,
bool flag )
override;
227 virtual void initialize();
229 virtual void slot_organizeOverlaysByCategoryChanged(
bool);
231 virtual void setFlag(
const std::string& s,
OverlayFlags,
bool);
232 virtual bool testFlag(
const std::string& s,
OverlayFlags)
const;
237 virtual void notifyLayerVisibilityChanged();
249 virtual void updateParentOverlayVisibilityStateOf(
const std::string& overlayLayer,
int newState);
280 typedef std::map<std::string, MemberInfo>
Members;
289 typedef std::map<std::string, std::map<makVrv::DtUniqueID, boost::signals2::scoped_connection>>
CheckConnections;
300 typedef std::pair<TGChange, TGChange>
TGPair;
303 int myOrganizedCategoryIdentifier = 0;
This is the protocol independent state of an entity. Created/ deleted by DtEntityStateObject's. DtSimEntry's point to this state.
Definition: DtEntityState.h:33
Members myMembers
Definition: vrfTacticalGraphicOverlayManager.h:281
class DtVrfSelectionFilter
Definition: vrfSelectionFilters.h:32
std::map< int, OrganizedCategory > OrganizedCategories
Definition: vrfTacticalGraphicOverlayManager.h:268
static DtString theOrganizedOverlayMarker
Definition: vrfTacticalGraphicOverlayManager.h:252
boost::signalslib::connection myVisibilityChangedConnection
Definition: vrfTacticalGraphicOverlayManager.h:283
std::string myStealthType
Definition: vrfTacticalGraphicOverlayManager.h:257
std::map< std::string, std::map< makVrv::DtUniqueID, boost::signals2::scoped_connection > > CheckConnections
Definition: vrfTacticalGraphicOverlayManager.h:289
OrganizedCategories myOrganizedCategories
Definition: vrfTacticalGraphicOverlayManager.h:269
VisibilityFilters myVisibilityFilters
Definition: vrfTacticalGraphicOverlayManager.h:266
Definition: vrfTacticalGraphicOverlayManager.h:50
std::map< makVrv::DtUniqueID, bool > visibilityMap
Definition: vrfTacticalGraphicOverlayManager.h:277
int numVisible
Definition: vrfTacticalGraphicOverlayManager.h:276
Definition: vrfTacticalGraphicOverlayManager.h:271
The shared settings manager, is the global object responsible for managing any shared settings object...
Definition: DtSharedSettingsManager.h:42
boost::signals2::signal< void()> signal_organizedCategoriesInitialized
Definition: vrfTacticalGraphicOverlayManager.h:223
#define DT_DLL_VRFGUICORE
Contains DLL export macros.
Definition: vrfGuiCore.h:25
DtUniqueID DtElementID
The ElementID is a specific type of unique ID used to represent VR-Vantage uniquely defined elements...
Definition: DtUniqueID.h:23
bool putOnOverlayBar
Definition: vrfTacticalGraphicOverlayManager.h:59
std::map< std::string, int > OverlayFlagsMap
Definition: vrfTacticalGraphicOverlayManager.h:260
DtString displayName
Definition: vrfTacticalGraphicOverlayManager.h:57
std::map< std::string, MemberInfo > Members
Definition: vrfTacticalGraphicOverlayManager.h:280
std::set< std::string > myAlwaysAvailable
Definition: vrfTacticalGraphicOverlayManager.h:287
std::map< makVrv::DtUniqueID, TGPair > myToChangeList
Definition: vrfTacticalGraphicOverlayManager.h:302
DtString icon
Definition: vrfTacticalGraphicOverlayManager.h:58
CheckConnections myCheckConnections
Definition: vrfTacticalGraphicOverlayManager.h:290
makVrv::DtSharedSettingsManager * mySettingsManager
Definition: vrfTacticalGraphicOverlayManager.h:258
std::set< std::string > myAllowGlobalIdOnMoreThanOneLayer
Definition: vrfTacticalGraphicOverlayManager.h:256
Override tactical graphic manager to support aggregate/entities on palette.
Definition: vrfTacticalGraphicOverlayManager.h:36
bool myOrganizeOverlaysByCategory
Definition: vrfTacticalGraphicOverlayManager.h:285
std::vector< EntryAttributes > EntryAttributesList
Define the type used to signal changes to one or more attributes for one or more elements.
Definition: DtElementAttributeManager.h:44
boost::signals2::signal< void(const std::string &, int)> signal_overlayVisibilityStateChanged
Definition: vrfTacticalGraphicOverlayManager.h:221
Contains makVrv::DtVrlinkSimulatedEntityState class.
OverlayFlags
Definition: vrfTacticalGraphicOverlayManager.h:39
std::string val
Definition: vrfTacticalGraphicOverlayManager.h:297
OverlayFlagsMap myOverlayFlags
Definition: vrfTacticalGraphicOverlayManager.h:261
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
Definition: vrfTacticalGraphicOverlayManager.h:292
OverlayChecker overlayChecker
Definition: vrfTacticalGraphicOverlayManager.h:60
OrganizedCategory()
Definition: vrfTacticalGraphicOverlayManager.h:52
std::map< std::string, int > myLayerVisibilityChanged
Definition: vrfTacticalGraphicOverlayManager.h:284
DtVrfSelectionFilter * filter
Definition: vrfTacticalGraphicOverlayManager.h:55
boost::function< void(const makVrv::DtStateView< makVrv::DtVrlinkSimulatedBaseState > *)> OverlayChecker
Definition: vrfTacticalGraphicOverlayManager.h:49
std::vector< DtElementEntry * > ElementList
Type definition for a vector of DtElementEntry pointers.
Definition: DtElementData.h:47
boost::signals2::signal< void(const std::string &, bool)> signal_overlayHidden
Definition: vrfTacticalGraphicOverlayManager.h:219
Base class to provide boost signal/slot management.
int identifier
Definition: vrfTacticalGraphicOverlayManager.h:62
boost::signals2::signal< void(const std::string &, bool)> signal_overlayLocked
Definition: vrfTacticalGraphicOverlayManager.h:220
std::set< int > myAllowOnMoreThanOneLayer
Definition: vrfTacticalGraphicOverlayManager.h:255
std::set< std::string > myOverlaysHidden
Definition: vrfTacticalGraphicOverlayManager.h:263
boost::signals2::signal< void(const std::string &, int)> signal_flagsChanged
Definition: vrfTacticalGraphicOverlayManager.h:218
std::map< std::string, DtVrfSelectionFilter * > VisibilityFilters
Definition: vrfTacticalGraphicOverlayManager.h:265
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:72
DtTacticalGraphicOverlayManager objects hold the state (visible or not) of tactical graphics overlays...
Definition: DtTacticalGraphicOverlayManager.h:33
std::pair< TGChange, TGChange > TGPair
Definition: vrfTacticalGraphicOverlayManager.h:300
TGChange()
Definition: vrfTacticalGraphicOverlayManager.h:294
int rank
Definition: vrfTacticalGraphicOverlayManager.h:56
std::set< int > children
Definition: vrfTacticalGraphicOverlayManager.h:63
Contains makVrv::DtTacticalGraphicOverlayManager class.
int parentIdentifier
Definition: vrfTacticalGraphicOverlayManager.h:61
boost::signals2::signal< void(const std::string &, bool)> signal_defaultHiddenChanged
Definition: vrfTacticalGraphicOverlayManager.h:222
boost::signals2::signal< void(const makVrv::DtElementID, bool &canBeOnMoreThanOneLayer)> signal_canBeOnMoreThanOneLayer
Definition: vrfTacticalGraphicOverlayManager.h:224