30 #include <QtGui/QTreeWidget>
31 #include <QtCore/QVariant>
33 #include <boost/function.hpp>
38 class DtGlobalIDHierarchyNode;
55 virtual bool isDestroyed()
const;
56 virtual QVariant data(
int iCol,
int iRole)
const;
65 bool isStealthObserver()
const;
67 void setStealthType(
const std::string& s)
70 DtEntityType t(s.c_str());
71 t.setExtra(t.extra() + 256);
72 myObserverStealthType = t.string();
73 t.setExtra(t.extra() + 1);
74 mySpecificStealthType = t.string();
77 virtual void setShowObjectConsoleWarningIcon(
bool,
bool refresh =
true);
78 virtual void setHasMessagesAwaiting(
bool,
bool refresh =
true);
79 virtual void setHasQuestionsAwaiting(
bool,
bool refresh =
true);
80 virtual void setSignalOnForceChange(
bool);
81 bool signalOnForceChange()
const;
90 mySortingFunctions[col] = f;
93 void removeSortingFunction(
int col)
95 DtSortingFunctionMap::iterator iter = mySortingFunctions.find(col);
97 if (iter != mySortingFunctions.end())
99 mySortingFunctions.erase(iter);
105 myDataFunctionMap[makeKey(col, role)] = func;
108 void removeDataFunction(
short col,
short role)
110 DtDataFunctionMap::iterator iter = myDataFunctionMap.find(makeKey(col, role));
112 if (iter != myDataFunctionMap.end())
114 myDataFunctionMap.erase(iter);
119 virtual void addNameFunction(
short col);
120 virtual void removeNameFunction(
short col);
122 virtual void addToolTipFunction(
short col);
123 virtual void removeToolTipFunction(
short col);
125 virtual void addIconFunction(
short col);
126 virtual void removeIconFunction(
short col);
128 virtual void addIconSizeHintFunction(
short col);
129 virtual void removeIconSizeHintFunction(
short col);
131 virtual void addIconAndGumballFunction(
short col);
132 virtual void removeIconAndGumballFunction(
short col);
134 virtual void addIconAndGumballSizeHintFunction(
short col);
135 virtual void removeIconAndGumballSizeHintFunction(
short col);
139 virtual bool hasGumball()
const;
150 virtual std::string iconKeyString()
const;
151 virtual std::string gumballKeyString()
const;
153 virtual bool needsIconUpdate(std::string* resultKey = 0)
const;
154 virtual bool needsGumballUpdate(std::string* resultKey = 0)
const;
166 int makeKey(
short col,
short role)
const
168 return (col << 16) | role;
172 typedef std::map<int, boost::function<QVariant (const DtVrfObjectListViewItem*)> >
DtDataFunctionMap;
173 typedef std::map<int, boost::function<bool (const DtVrfObjectListViewItem& rhs, const DtVrfObjectListViewItem& lhs)> >
DtSortingFunctionMap;