summaryrefslogtreecommitdiff
path: root/src/preview/PreviewController.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/preview/PreviewController.cpp')
-rw-r--r--src/preview/PreviewController.cpp33
1 files changed, 32 insertions, 1 deletions
diff --git a/src/preview/PreviewController.cpp b/src/preview/PreviewController.cpp
index ef5da4e..db3cdee 100644
--- a/src/preview/PreviewController.cpp
+++ b/src/preview/PreviewController.cpp
@@ -8,8 +8,11 @@
#include "PreviewController.h"
#include "PreviewView.h"
#include "PreviewModel.h"
+#include "Controller.h"
-PreviewController::PreviewController(int saveID) {
+PreviewController::PreviewController(int saveID, ControllerCallback * callback):
+ HasExited(false)
+{
// TODO Auto-generated constructor stub
previewModel = new PreviewModel();
previewView = new PreviewView();
@@ -17,6 +20,34 @@ PreviewController::PreviewController(int saveID) {
previewView->AttachController(this);
previewModel->UpdateSave(saveID, 0);
+
+ this->callback = callback;
+}
+
+Save * PreviewController::GetSave()
+{
+ return previewModel->GetSave();
+}
+
+bool PreviewController::GetDoOpen()
+{
+ return previewModel->GetDoOpen();
+}
+
+void PreviewController::DoOpen()
+{
+ previewModel->SetDoOpen(true);
+}
+
+void PreviewController::Exit()
+{
+ if(ui::Engine::Ref().GetWindow() == previewView)
+ {
+ ui::Engine::Ref().CloseWindow();
+ }
+ if(callback)
+ callback->ControllerExit();
+ HasExited = true;
}
PreviewController::~PreviewController() {