The crash when opening saves on mac is definitely something to do with the threading, and i'd rather just test this first to see if it fixes it Copied from my mod almost entirely as-is, with the changes to HTTP.cpp included, also added locks into Download.cpp even though it is probably overkill
46 lines
1.1 KiB
C++
46 lines
1.1 KiB
C++
#ifndef PREVIEWCONTROLLER_H_
|
|
#define PREVIEWCONTROLLER_H_
|
|
|
|
#include "gui/preview/PreviewModel.h"
|
|
#include "gui/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, bool instant, ControllerCallback * callback);
|
|
PreviewController(int saveID, int saveDate, bool instant, ControllerCallback * callback);
|
|
void Exit();
|
|
void DoOpen();
|
|
void OpenInBrowser();
|
|
void Report(std::string message);
|
|
void ShowLogin();
|
|
bool GetDoOpen();
|
|
SaveInfo * GetSaveInfo();
|
|
PreviewView * GetView() { return previewView; }
|
|
void Update();
|
|
void FavouriteSave();
|
|
bool SubmitComment(std::string comment);
|
|
|
|
bool NextCommentPage();
|
|
bool PrevCommentPage();
|
|
|
|
virtual ~PreviewController();
|
|
};
|
|
|
|
#endif /* PREVIEWCONTROLLER_H_ */
|