/* * StampsModel.cpp * * Created on: Mar 29, 2012 * Author: Simon */ #include "LocalBrowserModel.h" #include "LocalBrowserView.h" #include "LocalBrowserModelException.h" #include "client/Client.h" #include "client/SaveFile.h" LocalBrowserModel::LocalBrowserModel(): stamp(NULL), currentPage(1), stampToFront(1) { // TODO Auto-generated constructor stub //stampIDs = Client::Ref().GetStamps(); stampIDs = Client::Ref().GetStamps(0, 16); } std::vector LocalBrowserModel::GetSavesList() { return savesList; } void LocalBrowserModel::AddObserver(LocalBrowserView * observer) { observers.push_back(observer); observer->NotifySavesListChanged(this); observer->NotifyPageChanged(this); } void LocalBrowserModel::notifySavesListChanged() { for(int i = 0; i < observers.size(); i++) { observers[i]->NotifySavesListChanged(this); } } void LocalBrowserModel::notifyPageChanged() { for(int i = 0; i < observers.size(); i++) { observers[i]->NotifyPageChanged(this); } } SaveFile * LocalBrowserModel::GetSave() { return stamp; } void LocalBrowserModel::SetSave(SaveFile * newStamp) { if(stamp) delete stamp; stamp = new SaveFile(*newStamp); } bool LocalBrowserModel::GetMoveToFront() { return stampToFront; } void LocalBrowserModel::SetMoveToFront(bool move) { stampToFront = move; } void LocalBrowserModel::UpdateSavesList(int pageNumber) { std::vector tempSavesList = savesList; savesList.clear(); currentPage = pageNumber; notifyPageChanged(); notifySavesListChanged(); //notifyStampsListChanged(); /*for(int i = 0; i < tempSavesList.size(); i++) { delete tempSavesList[i]; }*/ stampIDs = Client::Ref().GetStamps((pageNumber-1)*20, 20); for(int i = 0; iNotifySelectedChanged(this); } } LocalBrowserModel::~LocalBrowserModel() { if(stamp) delete stamp; }