////////////////////////////////////// // Created by Pontus Fransson 2014 // ////////////////////////////////////// #include "EventButtonCollection.h" #include "EventHandler.h" using namespace Oyster::Event; EventButtonCollection::EventButtonCollection(EventCollectionState state) : collectionState(state) { } EventButtonCollection::~EventButtonCollection() { for(int i = 0; i < (int)EventHandler::Instance().collections.size(); i++) { if(EventHandler::Instance().collections.at(i) == this) { EventHandler::Instance().collections.erase(EventHandler::Instance().collections.begin() + i); break; } } int size = buttons.size(); for(int i = 0; i < size; i++) { delete buttons[i]; buttons[i] = NULL; } } void EventButtonCollection::Update(MouseInput& input) { if(this->collectionState == EventCollectionState_Enabled) { for(int i = 0; i < (int)buttons.size(); i++) { buttons[i]->Update(input); } } } void EventButtonCollection::RenderTexture() { if(this->collectionState == EventCollectionState_Enabled) { for(int i = 0; i < (int)buttons.size(); i++) { buttons[i]->RenderTexture(); } } } void EventButtonCollection::RenderText() { if(this->collectionState == EventCollectionState_Enabled) { for(int i = 0; i < (int)buttons.size(); i++) { buttons[i]->RenderText(); } } } EventCollectionState EventButtonCollection::GetState() const { return collectionState; } void EventButtonCollection::SetState(const EventCollectionState state) { collectionState = state; } void EventButtonCollection::Clear() { int size = buttons.size(); for(int i = 0; i < size; i++) { delete buttons[i]; buttons[i] = NULL; } buttons.clear(); collectionState = EventCollectionState_Enabled; }