34 #include <QtWidgets/QTreeWidget>
35 #include <QtCore/QVariant>
37 #include <boost/function.hpp>
42 class DtGlobalIDHierarchyNode;
66 virtual bool isMatchingItem(
const DtVrfObjectState state)
const;
67 virtual bool isDestroyed()
const;
68 bool isTDLItem()
const
70 return myIsVrfTDLData;
73 bool isSpotReport()
const
75 return myIsSpotReport;
78 bool isAggregate()
const
83 virtual QVariant data(
int iCol,
int iRole)
const;
84 virtual void clearIcon();
86 virtual void updateHiddenState(
bool iterateChildren =
false);
88 virtual void setStateView(DtVrfObjectState);
95 bool isStealthObserver()
const;
96 bool isInactive()
const;
98 virtual bool canBeAttachedTo()
const;
100 void setStealthType(
const std::string& s)
103 DtEntityType t(s.c_str());
104 t.setExtra(t.extra() + 256);
105 myObserverStealthType = t.string();
106 t.setExtra(t.extra() + 1);
107 mySpecificStealthType = t.string();
117 virtual void setShowObjectConsoleWarningIcon(
bool,
bool refresh =
true);
118 virtual void setHasMessagesAwaiting(
bool,
bool refresh =
true);
119 virtual void setHasQuestionsAwaiting(
bool,
bool refresh =
true);
120 virtual void setSignalOnForceChange(
bool);
122 virtual void setHidden(
bool, ShowHideFlags);
123 virtual bool isHidden()
const;
127 virtual int force()
const;
134 virtual void setUUID(
const DtUUID&);
135 bool signalOnForceChange()
const;
144 mySortingFunctions[col] = f;
147 void removeSortingFunction(
int col)
149 DtSortingFunctionMap::iterator iter = mySortingFunctions.find(col);
151 if (iter != mySortingFunctions.end())
153 mySortingFunctions.erase(iter);
159 myDataFunctionMap[makeKey(col, role)] = func;
162 void removeDataFunction(
short col,
short role)
164 DtDataFunctionMap::iterator iter = myDataFunctionMap.find(makeKey(col, role));
166 if (iter != myDataFunctionMap.end())
168 myDataFunctionMap.erase(iter);
173 virtual void addNameFunction(
short col);
174 virtual void removeNameFunction(
short col);
176 virtual void addToolTipFunction(
short col);
177 virtual void removeToolTipFunction(
short col);
179 virtual void addIconFunction(
short col);
180 virtual void removeIconFunction(
short col);
182 virtual void addIconSizeHintFunction(
short col);
183 virtual void removeIconSizeHintFunction(
short col);
185 virtual void addIconAndGumballFunction(
short col);
186 virtual void removeIconAndGumballFunction(
short col);
188 virtual void forceUpdate();
190 virtual void addIconAndGumballSizeHintFunction(
short col);
191 virtual void removeIconAndGumballSizeHintFunction(
short col);
195 virtual bool hasGumball()
const;
197 virtual QString markingText()
const;
202 virtual void setIsOrbatEnabled(
bool);
203 virtual bool isOrbatEnabled()
const;
206 virtual void setShowNotInOrbat(
bool);
207 virtual bool showNotInOrbat()
const;
210 virtual void setOrderByOrbatOrder(
bool);
211 virtual bool orderByOrbatOrder()
const;
213 virtual void setEditText(
const QString& s);
214 virtual const QString& editText()
const;
216 virtual void updateOrbatState();
217 virtual bool isOrbatViewOnly()
const;
218 virtual bool isCreated()
const;
219 virtual bool isInOrbatOnly()
const;
222 virtual void setDisplayType(
const DtEntityType&,
int force);
223 virtual void clearDisplayType();
227 return myObjectDataState;
231 virtual bool isInOrbatView()
const;
242 virtual std::string iconKeyString()
const;
243 virtual std::string gumballKeyString()
const;
245 virtual bool needsIconUpdate(std::string* resultKey = 0)
const;
246 virtual bool needsGumballUpdate(std::string* resultKey = 0)
const;
248 virtual int getDesignator(
const std::string& echelon)
const;
261 int makeKey(
short col,
short role)
const
263 return (col << 16) | role;
269 typedef std::map<int, boost::function<QVariant (const DtVrfObjectListViewItem*)> >
DtDataFunctionMap;
270 typedef std::map<int, boost::function<bool (const DtVrfObjectListViewItem& rhs, const DtVrfObjectListViewItem& lhs)> >
DtSortingFunctionMap;