35 #include <QtWidgets/QTreeWidget>
36 #include <QtCore/QVariant>
38 #include <boost/function.hpp>
43 class DtGlobalIDHierarchyNode;
68 virtual bool isMatchingItem(
const DtVrfObjectState state)
const;
69 virtual bool isDestroyed()
const;
70 bool isTDLItem()
const
72 return myIsVrfTDLData;
75 bool isSpotReport()
const
77 return myIsSpotReport;
80 bool isLaserDesignator()
const
82 return myIsLaserDesignator;
85 bool isAggregate()
const
90 virtual QVariant data(
int iCol,
int iRole)
const;
91 virtual void clearIcon();
93 virtual void updateHiddenState(
bool iterateChildren =
false);
95 virtual void setStateView(DtVrfObjectState);
102 bool isStealthObserver()
const;
103 bool isInactive()
const;
105 virtual bool canBeAttachedTo()
const;
107 void setStealthType(
const std::string& s)
110 DtEntityType t(s.c_str());
111 t.setExtra(t.extra() + 256);
112 myObserverStealthType = t.string();
113 t.setExtra(t.extra() + 1);
114 mySpecificStealthType = t.string();
124 virtual void setShowObjectConsoleWarningIcon(
bool,
bool refresh =
true);
125 virtual void setHasMessagesAwaiting(
bool,
bool refresh =
true);
126 virtual void setHasQuestionsAwaiting(
bool,
bool refresh =
true);
127 virtual void setSignalOnForceChange(
bool);
129 virtual void checkTextFilter();
132 virtual void checkTextFilterUpToParent();
134 virtual void setShowGumballs(
bool b);
135 bool showGumballs()
const
137 return myShowGumball;
140 virtual void setTextFilter(
const QString&);
141 const QString& textFilter()
const
146 virtual void setHidden(
bool, ShowHideFlags);
147 virtual bool isHidden()
const;
150 return (myShowHideFlags.find(f) != myShowHideFlags.end());
155 virtual int force()
const;
162 virtual void setUUID(
const DtUUID&);
163 bool signalOnForceChange()
const;
172 mySortingFunctions[col] = f;
175 void removeSortingFunction(
int col)
177 DtSortingFunctionMap::iterator iter = mySortingFunctions.find(col);
179 if (iter != mySortingFunctions.end())
181 mySortingFunctions.erase(iter);
187 myDataFunctionMap[makeKey(col, role)] = func;
190 void removeDataFunction(
short col,
short role)
192 DtDataFunctionMap::iterator iter = myDataFunctionMap.find(makeKey(col, role));
194 if (iter != myDataFunctionMap.end())
196 myDataFunctionMap.erase(iter);
201 virtual void addNameFunction(
short col);
202 virtual void removeNameFunction(
short col);
204 virtual void addToolTipFunction(
short col);
205 virtual void removeToolTipFunction(
short col);
207 virtual void addIconFunction(
short col);
208 virtual void removeIconFunction(
short col);
210 virtual void addIconSizeHintFunction(
short col);
211 virtual void removeIconSizeHintFunction(
short col);
213 virtual void addIconAndGumballFunction(
short col);
214 virtual void removeIconAndGumballFunction(
short col);
216 virtual void forceUpdate();
218 virtual void addIconAndGumballSizeHintFunction(
short col);
219 virtual void removeIconAndGumballSizeHintFunction(
short col);
223 virtual bool hasGumball()
const;
225 virtual QString markingText()
const;
230 virtual void setIsOrbatEnabled(
bool);
231 virtual bool isOrbatEnabled()
const;
234 virtual void setShowNotInOrbat(
bool);
235 virtual bool showNotInOrbat()
const;
238 virtual void setOrderByOrbatOrder(
bool);
239 virtual bool orderByOrbatOrder()
const;
241 virtual void setEditText(
const QString& s);
242 virtual const QString& editText()
const;
244 virtual void updateOrbatState();
245 virtual bool isOrbatViewOnly()
const;
246 virtual bool isCreated()
const;
247 virtual bool isInOrbatOnly()
const;
250 virtual void setDisplayType(
const DtEntityType&,
int force);
251 virtual void clearDisplayType();
255 return myObjectDataState;
259 virtual bool isInOrbatView()
const;
271 virtual std::string iconKeyString()
const;
272 virtual std::string gumballKeyString()
const;
274 virtual bool needsIconUpdate(std::string* resultKey = 0)
const;
275 virtual bool needsGumballUpdate(std::string* resultKey = 0)
const;
277 virtual int getDesignator(
const std::string& echelon)
const;
290 int makeKey(
short col,
short role)
const
292 return (col << 16) | role;
298 typedef std::map<int, boost::function<QVariant (const DtVrfObjectListViewItem*)> >
DtDataFunctionMap;
299 typedef std::map<int, boost::function<bool (const DtVrfObjectListViewItem& rhs, const DtVrfObjectListViewItem& lhs)> >
DtSortingFunctionMap;