Changeset 7866 in orxonox.OLD for branches/gui/src/lib/event/event_handler.cc
- Timestamp:
- May 26, 2006, 1:11:10 PM (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/gui/src/lib/event/event_handler.cc
r7756 r7866 171 171 unsubscribe(EventListener* el, elState state) function 172 172 */ 173 void EventHandler::unsubscribe( elState state, int eventType)173 void EventHandler::unsubscribe(EventListener* el, elState state, int eventType) 174 174 { 175 175 PRINTF(4)("Unsubscribing event type nr: %i\n", eventType); 176 176 if (state == ES_ALL) 177 177 for (unsigned int i = 0; i < ES_NUMBER; i++) 178 this->listeners[i][eventType].clear(); 179 else 180 this->listeners[state][eventType].clear(); 181 } 182 183 184 /** 185 * unsubscribe all events from a specific listener 178 { 179 std::vector<EventListener*>::iterator listener = 180 std::find(this->listeners[i][eventType].begin(), 181 this->listeners[i][eventType].end(), 182 el); 183 if (listener != this->listeners[i][eventType].end()) 184 this->listeners[i][eventType].erase(listener); 185 } 186 else 187 { 188 std::vector<EventListener*>::iterator listener = 189 std::find(this->listeners[state][eventType].begin(), 190 this->listeners[state][eventType].end(), 191 el); 192 if (listener != this->listeners[state][eventType].end()) 193 this->listeners[state][eventType].erase(listener); 194 } 195 } 196 197 198 /** 199 * @brief unsubscribe all events from a specific listener 186 200 * @param el: the listener that wants to unsubscribe itself 187 201 * @param state: the state in which the events shall be unsubscribed 188 189 */ 202 */ 190 203 void EventHandler::unsubscribe(EventListener* el, elState state) 191 204 {
Note: See TracChangeset
for help on using the changeset viewer.