summaryrefslogtreecommitdiff
path: root/src/preview/PreviewController.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/preview/PreviewController.h')
-rw-r--r--src/preview/PreviewController.h52
1 files changed, 52 insertions, 0 deletions
diff --git a/src/preview/PreviewController.h b/src/preview/PreviewController.h
new file mode 100644
index 0000000..c8c3f8e
--- /dev/null
+++ b/src/preview/PreviewController.h
@@ -0,0 +1,52 @@
+/*
+ * PreviewController.h
+ *
+ * Created on: Jan 21, 2012
+ * Author: Simon
+ */
+
+#ifndef PREVIEWCONTROLLER_H_
+#define PREVIEWCONTROLLER_H_
+
+#include "preview/PreviewModel.h"
+#include "preview/PreviewView.h"
+#include "Controller.h"
+#include "client/SaveInfo.h"
+#include "client/ClientListener.h"
+
+class LoginController;
+class PreviewModel;
+class PreviewView;
+class PreviewController: public ClientListener {
+ int saveId;
+ int saveDate;
+ PreviewModel * previewModel;
+ PreviewView * previewView;
+ LoginController * loginWindow;
+ ControllerCallback * callback;
+public:
+ virtual void NotifyAuthUserChanged(Client * sender);
+ inline int SaveID() { return saveId; };
+
+ bool HasExited;
+ PreviewController(int saveID, ControllerCallback * callback);
+ PreviewController(int saveID, int saveDate, ControllerCallback * callback);
+ void Exit();
+ void DoOpen();
+ void OpenInBrowser();
+ void Report(std::string message);
+ void ShowLogin();
+ bool GetDoOpen();
+ SaveInfo * GetSave();
+ PreviewView * GetView() { return previewView; }
+ void Update();
+ void FavouriteSave();
+ void SubmitComment(std::string comment);
+
+ void NextCommentPage();
+ void PrevCommentPage();
+
+ virtual ~PreviewController();
+};
+
+#endif /* PREVIEWCONTROLLER_H_ */