summaryrefslogtreecommitdiff
path: root/src/localbrowser
diff options
context:
space:
mode:
authorjacob1 <jfu614@gmail.com>2012-12-18 17:20:52 (GMT)
committer jacob1 <jfu614@gmail.com>2012-12-18 17:20:52 (GMT)
commitc06afff0a572c34ea4da8b87670e21c67b9c06b7 (patch)
tree95a251e1c2127a33f528a2194f451bfa5bfd30f1 /src/localbrowser
parent672c5ee9135fab6329f789c902f278329869b561 (diff)
downloadpowder-c06afff0a572c34ea4da8b87670e21c67b9c06b7.zip
powder-c06afff0a572c34ea4da8b87670e21c67b9c06b7.tar.gz
selecting a stamp moves it to the front of the list again (unless you hold ctrl)
attempted to do MVC right?
Diffstat (limited to 'src/localbrowser')
-rw-r--r--src/localbrowser/LocalBrowserController.cpp10
-rw-r--r--src/localbrowser/LocalBrowserController.h3
-rw-r--r--src/localbrowser/LocalBrowserModel.cpp13
-rw-r--r--src/localbrowser/LocalBrowserModel.h3
-rw-r--r--src/localbrowser/LocalBrowserView.cpp6
5 files changed, 32 insertions, 3 deletions
diff --git a/src/localbrowser/LocalBrowserController.cpp b/src/localbrowser/LocalBrowserController.cpp
index e932e72..4719bf1 100644
--- a/src/localbrowser/LocalBrowserController.cpp
+++ b/src/localbrowser/LocalBrowserController.cpp
@@ -152,6 +152,16 @@ void LocalBrowserController::Selected(std::string saveName, bool selected)
browserModel->DeselectSave(saveName);
}
+bool LocalBrowserController::GetMoveToFront()
+{
+ return browserModel->GetMoveToFront();
+}
+
+void LocalBrowserController::SetMoveToFront(bool move)
+{
+ browserModel->SetMoveToFront(move);
+}
+
void LocalBrowserController::Exit()
{
if(ui::Engine::Ref().GetWindow() == browserView)
diff --git a/src/localbrowser/LocalBrowserController.h b/src/localbrowser/LocalBrowserController.h
index efa9c93..236ac07 100644
--- a/src/localbrowser/LocalBrowserController.h
+++ b/src/localbrowser/LocalBrowserController.h
@@ -31,7 +31,8 @@ public:
void rescanStampsC();
void RefreshSavesList();
void OpenSave(SaveFile * stamp);
- void SetStamp();
+ bool GetMoveToFront();
+ void SetMoveToFront(bool move);
void NextPage();
void PrevPage();
void Update();
diff --git a/src/localbrowser/LocalBrowserModel.cpp b/src/localbrowser/LocalBrowserModel.cpp
index 9e869cc..42f1a65 100644
--- a/src/localbrowser/LocalBrowserModel.cpp
+++ b/src/localbrowser/LocalBrowserModel.cpp
@@ -13,7 +13,8 @@
LocalBrowserModel::LocalBrowserModel():
stamp(NULL),
- currentPage(1)
+ currentPage(1),
+ stampToFront(1)
{
// TODO Auto-generated constructor stub
//stampIDs = Client::Ref().GetStamps();
@@ -61,6 +62,16 @@ void LocalBrowserModel::SetSave(SaveFile * newStamp)
stamp = new SaveFile(*newStamp);
}
+bool LocalBrowserModel::GetMoveToFront()
+{
+ return stampToFront;
+}
+
+void LocalBrowserModel::SetMoveToFront(bool move)
+{
+ stampToFront = move;
+}
+
void LocalBrowserModel::UpdateSavesList(int pageNumber)
{
std::vector<SaveFile*> tempSavesList = savesList;
diff --git a/src/localbrowser/LocalBrowserModel.h b/src/localbrowser/LocalBrowserModel.h
index c2a6f9b..af88509 100644
--- a/src/localbrowser/LocalBrowserModel.h
+++ b/src/localbrowser/LocalBrowserModel.h
@@ -22,6 +22,7 @@ class LocalBrowserModel {
std::vector<SaveFile*> savesList;
std::vector<LocalBrowserView*> observers;
int currentPage;
+ bool stampToFront;
void notifySavesListChanged();
void notifyPageChanged();
void notifySelectedChanged();
@@ -35,6 +36,8 @@ public:
void RescanStamps();
SaveFile * GetSave();
void SetSave(SaveFile * newStamp);
+ bool GetMoveToFront();
+ void SetMoveToFront(bool move);
std::vector<std::string> GetSelected() { return selected; }
void ClearSelected() { selected.clear(); notifySelectedChanged(); }
void SelectSave(std::string stampID);
diff --git a/src/localbrowser/LocalBrowserView.cpp b/src/localbrowser/LocalBrowserView.cpp
index a6efc4c..aa75925 100644
--- a/src/localbrowser/LocalBrowserView.cpp
+++ b/src/localbrowser/LocalBrowserView.cpp
@@ -210,8 +210,12 @@ void LocalBrowserView::OnMouseWheel(int x, int y, int d)
}
void LocalBrowserView::OnKeyPress(int key, Uint16 character, bool shift, bool ctrl, bool alt)
{
- if(key==KEY_ESCAPE)
+ if(key == KEY_ESCAPE)
c->Exit();
+ if (key == KEY_CTRL)
+ c->SetMoveToFront(false);
+ else
+ c->SetMoveToFront(true);
}
LocalBrowserView::~LocalBrowserView() {