28 #include <QtGui/QTreeWidget>
29 #include <QtCore/QVariant>
31 #include <boost/function.hpp>
36 class DtGlobalIDHierarchyNode;
53 virtual bool isDestroyed()
const;
54 virtual QVariant data(
int iCol,
int iRole)
const;
70 mySortingFunctions[col] = f;
73 void removeSortingFunction(
int col)
75 DtSortingFunctionMap::iterator iter = mySortingFunctions.find(col);
77 if (iter != mySortingFunctions.end())
79 mySortingFunctions.erase(iter);
85 myDataFunctionMap[makeKey(col, role)] = func;
88 void removeDataFunction(
short col,
short role)
90 DtDataFunctionMap::iterator iter = myDataFunctionMap.find(makeKey(col, role));
92 if (iter != myDataFunctionMap.end())
94 myDataFunctionMap.erase(iter);
99 virtual void addNameFunction(
short col);
100 virtual void removeNameFunction(
short col);
102 virtual void addToolTipFunction(
short col);
103 virtual void removeToolTipFunction(
short col);
105 virtual void addIconFunction(
short col);
106 virtual void removeIconFunction(
short col);
108 virtual void addIconSizeHintFunction(
short col);
109 virtual void removeIconSizeHintFunction(
short col);
117 virtual void slot_onStateViewUpdated(
const DtVrfObjectState s);
118 virtual void setLastState(
const DtVrfObjectState s);
119 virtual bool statesAreEqual(
const DtVrfObjectState s)
const;
120 virtual bool objectDataStatesAreEqual(
const DtVrfObjectState s)
const;
127 int makeKey(
short col,
short role)
const
129 return (col << 16) | role;
133 typedef std::map<int, boost::function<QVariant (const DtVrfObjectListViewItem*)> >
DtDataFunctionMap;
134 typedef std::map<int, boost::function<bool (const DtVrfObjectListViewItem& rhs, const DtVrfObjectListViewItem& lhs)> >
DtSortingFunctionMap;