diff options
Diffstat (limited to 'Swift/Controllers')
| -rw-r--r-- | Swift/Controllers/Roster/Roster.cpp | 9 | ||||
| -rw-r--r-- | Swift/Controllers/Roster/Roster.h | 6 | 
2 files changed, 12 insertions, 3 deletions
| diff --git a/Swift/Controllers/Roster/Roster.cpp b/Swift/Controllers/Roster/Roster.cpp index 44cf03d..4dbc453 100644 --- a/Swift/Controllers/Roster/Roster.cpp +++ b/Swift/Controllers/Roster/Roster.cpp @@ -199,3 +199,9 @@ void Roster::applyOnAllItems(const RosterItemOperation& operation) { -void Roster::removeFilter(RosterFilter *filter) { +void Roster::addFilter(RosterFilter* filter) { +	filters_.push_back(filter); +	filterAll(); +	onFilterAdded(filter); +} + +void Roster::removeFilter(RosterFilter* filter) {  	for (unsigned int i = 0; i < filters_.size(); i++) { @@ -207,2 +213,3 @@ void Roster::removeFilter(RosterFilter *filter) {  	filterAll(); +	onFilterRemoved(filter);  } diff --git a/Swift/Controllers/Roster/Roster.h b/Swift/Controllers/Roster/Roster.h index b60eafa..9956cb9 100644 --- a/Swift/Controllers/Roster/Roster.h +++ b/Swift/Controllers/Roster/Roster.h @@ -40,4 +40,4 @@ class Roster {  		void applyOnItem(const RosterItemOperation& operation, const JID& jid); -		void addFilter(RosterFilter *filter) {filters_.push_back(filter);filterAll();} -		void removeFilter(RosterFilter *filter); +		void addFilter(RosterFilter* filter); +		void removeFilter(RosterFilter* filter);  		GroupRosterItem* getRoot(); @@ -48,2 +48,4 @@ class Roster {  		boost::signal<void (JID&)> onVCardUpdateRequested; +		boost::signal<void (RosterFilter* filter)> onFilterAdded; +		boost::signal<void (RosterFilter* filter)> onFilterRemoved;  		GroupRosterItem* getGroup(const std::string& groupName); | 
 Swift
 Swift