diff options
Diffstat (limited to 'Swiften/Roster/TreeWidgetItem.h')
-rw-r--r-- | Swiften/Roster/TreeWidgetItem.h | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/Swiften/Roster/TreeWidgetItem.h b/Swiften/Roster/TreeWidgetItem.h new file mode 100644 index 0000000..5a96a41 --- /dev/null +++ b/Swiften/Roster/TreeWidgetItem.h @@ -0,0 +1,30 @@ +#ifndef SWIFTEN_TreeWidgetItem_H +#define SWIFTEN_TreeWidgetItem_H + +#include "Swiften/Base/String.h" +#include "Swiften/Roster/UserRosterAction.h" + +#include <boost/signal.hpp> +#include <boost/shared_ptr.hpp> + +namespace Swift { + +class TreeWidgetItem { + public: + virtual ~TreeWidgetItem() {} + virtual void setText(const String& text) = 0; + virtual void setExpanded(bool b) = 0; + virtual void setTextColor(unsigned long color) = 0; + virtual void setBackgroundColor(unsigned long color) = 0; + boost::signal<void (boost::shared_ptr<UserRosterAction>)> onUserAction; + virtual void show() = 0; + virtual void hide() = 0; + void performUserAction(boost::shared_ptr<UserRosterAction> action) { + action->setTreeWidgetItem(this); + onUserAction(action); + } +}; + +} +#endif + |