34 #include <QtWidgets/QTreeWidget>
35 #include <QtCore/QVariant>
37 #include <boost/function.hpp>
42 class DtGlobalIDHierarchyNode;
47 class DtObjectVisibilityManager;
71 AddedToChildCountRole = Qt::UserRole + 1022
80 virtual bool isMatchingItem(
const DtVrfObjectState state)
const;
81 virtual bool isDestroyed()
const;
84 return myIsVrfTDLData;
89 return myIsEnvironmental;
94 return myIsSpotReport;
99 return myIsLaserDesignator;
104 return myIsAggregate;
107 virtual void setGrayIfHidden(
bool);
110 return myGrayIfHidden;
113 virtual QVariant data(
int iCol,
int iRole)
const;
114 virtual void clearIcon();
116 virtual void updateHiddenState(
bool iterateChildren =
false);
118 virtual void setStateView(DtVrfObjectState);
125 bool isStealthObserver()
const;
126 bool isInactive()
const;
128 virtual bool canBeAttachedTo()
const;
133 DtEntityType t(s.c_str());
134 t.setExtra(t.extra() + 256);
135 myObserverStealthType = t.string();
136 t.setExtra(t.extra() + 1);
137 mySpecificStealthType = t.string();
147 virtual void setShowObjectConsoleWarningIcon(
bool,
bool refresh =
true);
148 virtual void setHasMessagesAwaiting(
bool,
bool refresh =
true);
149 virtual void setHasQuestionsAwaiting(
bool,
bool refresh =
true);
150 virtual void setSignalOnForceChange(
bool);
151 virtual void setSignalOnActivatedStateChanged(
bool);
152 virtual void setSignalOnDamageStateChange(
bool);
154 virtual void checkTextFilter();
157 virtual void checkTextFilterUpToParent();
159 virtual void setShowGumballs(
bool b);
162 return myShowGumball;
165 virtual void setTextFilter(
const QString&);
171 virtual void setHidden(
bool, ShowHideFlags);
172 virtual bool isHidden()
const;
175 return (myShowHideFlags.find(f) != myShowHideFlags.end());
179 virtual bool parseNumber(
const QString&,
int& number, QString& name)
const;
181 virtual int force()
const;
188 virtual void setUUID(
const DtUUID&);
189 bool signalOnActivatedStateChanged()
const;
190 bool signalOnForceChange()
const;
191 bool signalOnDamageStateChange()
const;
195 return myMarkingTextWithoutNumber;
200 return myMarkingTextNumber;
205 return myHasMarkingTextNumber;
210 return myStateViewId;
218 virtual std::map<std::string, std::string> extendedData()
const;
227 mySortingFunctions[col] = f;
232 DtSortingFunctionMap::iterator iter = mySortingFunctions.find(col);
234 if (iter != mySortingFunctions.end())
236 mySortingFunctions.erase(iter);
240 virtual bool blockChildCountDisplay(
bool b);
244 myDataFunctionMap[makeKey(col, role)] = func;
249 DtDataFunctionMap::iterator iter = myDataFunctionMap.find(makeKey(col, role));
251 if (iter != myDataFunctionMap.end())
253 myDataFunctionMap.erase(iter);
257 virtual void setBaseIcon(QString);
258 virtual void setBaseIcon(
const QPixmap&);
264 virtual void setPrependToName(
const QString&);
267 return myPrependToName;
270 virtual void setPrependPixmap(
const QPixmap&);
273 return myPrependPixmap;
276 virtual void enableChildCount();
279 return myChildCountEnabled;
282 virtual void setDisplayChildCount(
bool);
285 return myDisplayChildCount;
288 virtual void addToChildCount(
int);
290 virtual void setAppendToName(
const QString&);
291 virtual QString appendToName()
const;
293 virtual void setAppendPixmap(
const QPixmap&);
296 return myAppendPixmap;
299 virtual void setCanBeOrganized(
bool);
302 return myCanBeOrganized;
305 virtual void setSignalOnDataUpdates(
bool);
308 return mySignalOnDataUpdates;
313 return myObjectVisibilityManager;
317 virtual void addNameFunction(
short col);
318 virtual void removeNameFunction(
short col);
320 virtual void addTextColorIfHiddenFunction(
short col);
321 virtual void removeTextColorIfHiddenFunction(
short col);
323 virtual void addToolTipFunction(
short col);
324 virtual void removeToolTipFunction(
short col);
326 virtual void addIconFunction(
short col);
327 virtual void removeIconFunction(
short col);
329 virtual void addIconSizeHintFunction(
short col);
330 virtual void removeIconSizeHintFunction(
short col);
332 virtual void addIconAndGumballFunction(
short col);
333 virtual void removeIconAndGumballFunction(
short col);
335 virtual void forceUpdate();
337 virtual void addIconAndGumballSizeHintFunction(
short col);
338 virtual void removeIconAndGumballSizeHintFunction(
short col);
342 virtual bool hasGumball()
const;
344 virtual QString markingText()
const;
349 virtual void setIsOrbatEnabled(
bool);
350 virtual bool isOrbatEnabled()
const;
353 virtual void setShowNotInOrbat(
bool);
354 virtual bool showNotInOrbat()
const;
357 virtual void setOrderByOrbatOrder(
bool);
358 virtual bool orderByOrbatOrder()
const;
360 virtual void setEditText(
const QString& s);
361 virtual const QString& editText()
const;
363 virtual void updateOrbatState();
364 virtual bool isOrbatViewOnly()
const;
365 virtual bool isCreated()
const;
366 virtual bool isInOrbatOnly()
const;
369 virtual void setDisplayType(
const DtEntityType&,
int force);
370 virtual void clearDisplayType();
374 return myObjectDataState;
378 virtual bool isInOrbatView()
const;
379 virtual void updateChildCount();
391 virtual void updateMarkingTextInformation();
393 virtual void resetBaseIcon(QString);
402 virtual std::string iconKeyString()
const;
403 virtual std::string gumballKeyString()
const;
405 virtual bool needsIconUpdate(std::string* resultKey = 0)
const;
406 virtual bool needsGumballUpdate(std::string* resultKey = 0)
const;
408 virtual int getDesignator(
const std::string& echelon)
const;
424 return (col << 16) | role;
429 virtual QPixmap adjustForHidden(
const QPixmap&)
const;
430 virtual QImage adjustForHidden(
const QImage&)
const;
437 typedef std::map<int, boost::function<QVariant (const DtObjectListViewItem*)> >
DtDataFunctionMap;
438 typedef std::map<int, boost::function<bool (const DtObjectListViewItem& rhs, const DtObjectListViewItem& lhs)> >
DtSortingFunctionMap;
478 bool myBlockChildCountDisplay =
false;
524 bool myHasMarkingTextNumber =
false;
527 int myMarkingTextNumber = 0;
530 bool myChildCountEnabled =
false;
531 bool myDisplayChildCount =
false;
532 int myChildCount = 0;
const QPixmap & baseIcon() const
Definition: objectListViewItem.h:259
UUID is a unique ID wrapper class.
Definition: uuid.h:59
makVrv::DtVrlinkSimulatedEntityState * entityState
Definition: objectListViewItem.h:451
DtVrfObjectDataState * objectDataState() const
Definition: objectListViewItem.h:372
Registered creator for this class.
Definition: objectListViewItem.h:539
virtual bool isHiddenBy(ShowHideFlags f) const
Definition: objectListViewItem.h:173
This is the protocol independent state of an entity. Created/ deleted by DtEntityStateObject's. DtSimEntry's point to this state.
Definition: DtEntityState.h:33
static bool theShowUUIDForBlankName
Show "Blank Name (UUID)" for blanke named items. Default is true. Set to false to show no name...
Definition: objectListViewItem.h:434
QString myMarkingTextWithoutNumber
Definition: objectListViewItem.h:526
bool myShowGumball
Definition: objectListViewItem.h:475
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
bool isAggregate() const
Definition: objectListViewItem.h:102
bool myIsOrbat
Definition: objectListViewItem.h:467
makVrv::DtSignalConnectionManager myIconConnections
Definition: objectListViewItem.h:482
QPixmap myBaseIcon
Definition: objectListViewItem.h:515
boost::function< void(DtObjectListViewItem *, std::string)> DataChangedNotifyFunction
Definition: objectListViewItem.h:220
boost::signals2::signal< void(DtObjectListViewItem *)> signal_statePropertiesChanged
Definition: objectListViewItem.h:386
bool myUseDisplayType
Definition: objectListViewItem.h:507
DtVrfObjectDataState * myObjectDataState
Definition: objectListViewItem.h:462
DtVrlinkSimulatedAggregateState * aggregateState
Definition: objectListViewItem.h:456
bool myLastActivated
Definition: objectListViewItem.h:476
makVrv::DtUniqueID myStateViewId
Definition: objectListViewItem.h:446
QString myMarkingText
Definition: objectListViewItem.h:525
void setStealthType(const std::string &s)
Definition: objectListViewItem.h:130
NotifyOnExtendedDataChangedMap myNotifyOnExtendedDataChangedMap
Definition: objectListViewItem.h:535
int myRightMargin
Definition: objectListViewItem.h:517
bool isSpotReport() const
Definition: objectListViewItem.h:92
int makeKey(short col, short role) const
Definition: objectListViewItem.h:422
Contains makVrv::DtStateView class.
DtVrfObjectState stateView() const
Definition: objectListViewItem.h:213
bool mySignalOnDataUpdates
Definition: objectListViewItem.h:522
std::string myIconString
Definition: objectListViewItem.h:500
DtObjectVisibilityManager & objectVisibilityManager() const
Definition: objectListViewItem.h:311
std::map< std::string, std::pair< DataChangedNotifyFunction, bool > > NotifyOnExtendedDataChangedMap
Definition: objectListViewItem.h:534
Contains the DtUUID class declaration.
bool myIsEnvironmental
Definition: objectListViewItem.h:470
boost::signals2::signal< void(DtObjectListViewItem *)> signal_markingTextFilterChanged
Definition: objectListViewItem.h:384
boost::signals2::signal< void(DtObjectListViewItem *, int, int)> signal_forceChanged
Definition: objectListViewItem.h:381
DtVrfTDLMessageDataState * vrfTDLDataState
Definition: objectListViewItem.h:453
const QPixmap & appendPixmap() const
Definition: objectListViewItem.h:294
std::map< int, boost::function< bool(const DtObjectListViewItem &rhs, const DtObjectListViewItem &lhs)> > DtSortingFunctionMap
Definition: objectListViewItem.h:438
bool grayIfHidden() const
Definition: objectListViewItem.h:108
bool myIsInOrbatView
Definition: objectListViewItem.h:491
boost::signals2::scoped_connection myStateViewUpdateConnection
Definition: objectListViewItem.h:484
bool myIsAggregate
Definition: objectListViewItem.h:469
bool mySignalOnDamageStateChanged
Definition: objectListViewItem.h:472
Note that the "protocol" keyword is used by by the TDL manager to allow users to filter out messages ...
Definition: vrfTDLMessageDataState.h:34
Definition: objectVisibilityManager.h:32
boost::signals2::signal< void(DtObjectListViewItem *, bool)> signal_damageStateChanged
Definition: objectListViewItem.h:387
bool hasMarkingTextNumber() const
Definition: objectListViewItem.h:203
DtVrlinkSimulatedEnvironmentProcess * environmentalState
Definition: objectListViewItem.h:457
std::string myStealthType
Definition: objectListViewItem.h:442
bool myGrayIfHidden
Definition: objectListViewItem.h:508
Definition: DtEntityState.h:65
int markingTextNumber() const
Definition: objectListViewItem.h:198
bool myIsOrbatEnabled
Definition: objectListViewItem.h:489
bool isLaserDesignator() const
Definition: objectListViewItem.h:97
DtSpotReportState * spotReportState
Definition: objectListViewItem.h:452
QPixmap myGumball
Definition: objectListViewItem.h:498
bool myHasQuestionsAwaiting
Definition: objectListViewItem.h:488
DtEntityType myDisplayType
Definition: objectListViewItem.h:505
States myLastState
Definition: objectListViewItem.h:461
QString myTextFilter
Definition: objectListViewItem.h:510
makVrv::DtDe & myDe
Definition: objectListViewItem.h:554
makVrv::DtVrlinkSimulatedBaseState * vrlinkState
Definition: objectListViewItem.h:450
DtDataFunctionMap myDataFunctionMap
Definition: objectListViewItem.h:479
bool canBeOrganized() const
Definition: objectListViewItem.h:300
const QString & markingTextWithoutNumber() const
Definition: objectListViewItem.h:193
bool myHasGumball
Definition: objectListViewItem.h:477
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
bool mySignalOnForceChange
Definition: objectListViewItem.h:471
Contains makVrv::DtVrlinkSimulatedEntityState class.
bool myIsDestroyed
Definition: objectListViewItem.h:463
bool myShowObjectConsoleWarningIcon
Definition: objectListViewItem.h:486
bool myIsLaserDesignator
Definition: objectListViewItem.h:468
boost::signals2::signal< void(DtObjectListViewItem *)> signal_destroyed
Definition: objectListViewItem.h:383
std::set< ShowHideFlags > myShowHideFlags
Definition: objectListViewItem.h:503
QPixmap myPixmap
Definition: objectListViewItem.h:499
const DtUUID & uuid() const
Definition: objectListViewItem.h:183
ShowHideFlags
Definition: objectListViewItem.h:60
bool myIsSimpleObjectDataState
Definition: objectListViewItem.h:474
std::map< std::string, std::string > myExtendedData
Definition: objectListViewItem.h:519
const QString & prependToName() const
Definition: objectListViewItem.h:265
QString myPrependToName
Definition: objectListViewItem.h:511
#define DT_DLL_VRFGUICOMMONQT
Definition: vrfGuiCommonQt.h:20
makVrv::DtSignalConnectionManager myOrbatConnections
Definition: objectListViewItem.h:483
QString myEditText
Definition: objectListViewItem.h:495
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
makVrv::DtDe & myDe
Definition: objectListViewItem.h:440
bool myUpdateForced
Definition: objectListViewItem.h:493
bool isTDLItem() const
Definition: objectListViewItem.h:82
Roles
Definition: objectListViewItem.h:69
QString myAppendToName
Definition: objectListViewItem.h:513
void addDataFunction(short col, short role, const boost::function< QVariant(const DtObjectListViewItem *)> &func)
Definition: objectListViewItem.h:242
bool myIsSpotReport
Definition: objectListViewItem.h:465
DtVrfObjectState myStateView
Definition: objectListViewItem.h:441
bool myIsEntity
Definition: objectListViewItem.h:464
bool myIsVrfTDLData
Definition: objectListViewItem.h:466
QPixmap myPrependPixmap
Definition: objectListViewItem.h:512
std::string myObserverStealthType
Definition: objectListViewItem.h:443
Base class to provide boost signal/slot management.
Data that is used for folders in the organized object list view.
Definition: simpleObjectDataState.h:18
std::map< int, boost::function< QVariant(const DtObjectListViewItem *)> > DtDataFunctionMap
Definition: objectListViewItem.h:437
bool myHasMessagesAwaiting
Definition: objectListViewItem.h:487
boost::signals2::signal< void(DtObjectListViewItem *)> signal_extendedDataChanged
Definition: objectListViewItem.h:385
bool myShowNotInOrbat
Definition: objectListViewItem.h:490
Definition: spotReportState.h:42
makVrv::DtUniqueID stateViewId() const
Definition: objectListViewItem.h:208
Definition: vrlinkSimulatedEnvironmentProcess.h:25
DtObjectVisibilityManager & myObjectVisibilityManager
Definition: objectListViewItem.h:528
bool myOrderByOrbatOrder
Definition: objectListViewItem.h:492
QPixmap myAppendPixmap
Definition: objectListViewItem.h:514
makVrv::DtSignalConnectionManager myConnections
Definition: objectListViewItem.h:481
void removeDataFunction(short col, short role)
Definition: objectListViewItem.h:247
bool displayChildCount() const
Definition: objectListViewItem.h:283
void clearStateView()
Definition: objectListViewItem.h:120
For performance reasons there are two kinds of aggregate state. The first kind is the kind that is se...
Definition: aggregateState.h:30
bool isEnvironmental() const
Definition: objectListViewItem.h:87
Definition: objectListViewItem.h:448
bool signalOnDataUpdates() const
Definition: objectListViewItem.h:306
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
int myDisplayForce
Definition: objectListViewItem.h:506
Definition: orbatState.h:23
DtSimpleObjectDataState * simpleObjectDataState
Definition: objectListViewItem.h:458
std::string mySpecificStealthType
Definition: objectListViewItem.h:444
bool myCanBeOrganized
Definition: objectListViewItem.h:521
This tree widget item can be used in any tree that wants to display an icon next to the name of an ob...
Definition: objectListViewItem.h:55
DtLaserDesignatorState * laserDesignatorState
Definition: objectListViewItem.h:455
DtOrbatState * orbatState
Definition: objectListViewItem.h:454
DtSortingFunctionMap mySortingFunctions
Definition: objectListViewItem.h:480
DtUUID myUUID
Definition: objectListViewItem.h:445
Definition: laserDesignatorState.h:26
bool mySignalOnActivatedStateChanged
Definition: objectListViewItem.h:473
boost::signals2::signal< void(DtObjectListViewItem *, bool)> signal_activateStateChanged
Definition: objectListViewItem.h:388
const QPixmap & prependPixmap() const
Definition: objectListViewItem.h:271
bool childCountEnabled() const
Definition: objectListViewItem.h:277
makVrv::DtStateView< makVrv::DtVrlinkSimulatedBaseState > * DtVrfObjectState
Definition: objectListViewItem.h:58
std::string myGumballString
Definition: objectListViewItem.h:501
bool showGumballs() const
Definition: objectListViewItem.h:160
void addSortingFunction(int col, const boost::function< bool(const DtObjectListViewItem &rhs, const DtObjectListViewItem &lhs)> &f)
Definition: objectListViewItem.h:225
void removeSortingFunction(int col)
Definition: objectListViewItem.h:230
const QString & textFilter() const
Definition: objectListViewItem.h:166
boost::signals2::signal< void(DtObjectListViewItem *)> signal_itemUpdated
Definition: objectListViewItem.h:382
QPixmap myIcon
Definition: objectListViewItem.h:497
Definition: vrfObjectDataState.h:87
double myLastTimeStatePropertiesUpdated
Definition: objectListViewItem.h:520