31 #include <QtWidgets/QTreeWidget>
32 #include <QtCore/QVariant>
34 #include <boost/function.hpp>
39 class DtGlobalIDHierarchyNode;
56 virtual bool isDestroyed()
const;
57 virtual QVariant data(
int iCol,
int iRole)
const;
58 virtual void clearIcon();
67 bool isStealthObserver()
const;
68 bool isInactive()
const;
70 void setStealthType(
const std::string& s)
73 DtEntityType t(s.c_str());
74 t.setExtra(t.extra() + 256);
75 myObserverStealthType = t.string();
76 t.setExtra(t.extra() + 1);
77 mySpecificStealthType = t.string();
82 virtual void setShowObjectConsoleWarningIcon(
bool,
bool refresh =
true);
83 virtual void setHasMessagesAwaiting(
bool,
bool refresh =
true);
84 virtual void setHasQuestionsAwaiting(
bool,
bool refresh =
true);
85 virtual void setSignalOnForceChange(
bool);
94 bool signalOnForceChange()
const;
103 mySortingFunctions[col] = f;
106 void removeSortingFunction(
int col)
108 DtSortingFunctionMap::iterator iter = mySortingFunctions.find(col);
110 if (iter != mySortingFunctions.end())
112 mySortingFunctions.erase(iter);
118 myDataFunctionMap[makeKey(col, role)] = func;
121 void removeDataFunction(
short col,
short role)
123 DtDataFunctionMap::iterator iter = myDataFunctionMap.find(makeKey(col, role));
125 if (iter != myDataFunctionMap.end())
127 myDataFunctionMap.erase(iter);
132 virtual void addNameFunction(
short col);
133 virtual void removeNameFunction(
short col);
135 virtual void addToolTipFunction(
short col);
136 virtual void removeToolTipFunction(
short col);
138 virtual void addIconFunction(
short col);
139 virtual void removeIconFunction(
short col);
141 virtual void addIconSizeHintFunction(
short col);
142 virtual void removeIconSizeHintFunction(
short col);
144 virtual void addIconAndGumballFunction(
short col);
145 virtual void removeIconAndGumballFunction(
short col);
147 virtual void addIconAndGumballSizeHintFunction(
short col);
148 virtual void removeIconAndGumballSizeHintFunction(
short col);
152 virtual bool hasGumball()
const;
154 virtual QString markingText()
const;
165 virtual std::string iconKeyString()
const;
166 virtual std::string gumballKeyString()
const;
168 virtual bool needsIconUpdate(std::string* resultKey = 0)
const;
169 virtual bool needsGumballUpdate(std::string* resultKey = 0)
const;
181 int makeKey(
short col,
short role)
const
183 return (col << 16) | role;
187 typedef std::map<int, boost::function<QVariant (const DtVrfObjectListViewItem*)> >
DtDataFunctionMap;
188 typedef std::map<int, boost::function<bool (const DtVrfObjectListViewItem& rhs, const DtVrfObjectListViewItem& lhs)> >
DtSortingFunctionMap;