3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/client/gui/ViewRequest.h"
7#include "mc/client/gui/screens/controllers/ClientInstanceScreenController.h"
8#include "mc/deps/core/file/PathBuffer.h"
17namespace Core {
class Path; }
18namespace Json {
class Value; }
24 enum class PortfolioView : uchar {
30 using ImageMetaDataLoadorFunction = ::std::function<bool(::std::string&, ::Core::Path
const&)>;
35 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::PortfolioScreenManager>> mPortfolioScreenManager;
36 ::ll::TypedStorage<8, 24, ::std::vector<::Core::PathBuffer<::std::string>>> mScreenshots;
37 ::ll::TypedStorage<8, 24, ::std::vector<::PhotoRecord>> mPhotoRecords;
38 ::ll::TypedStorage<1, 1, ::PortfolioScreenController::PortfolioView> mCurrentView;
39 ::ll::TypedStorage<4, 4, int> mCurrentPage;
40 ::ll::TypedStorage<4, 4, int> mLastPage;
41 ::ll::TypedStorage<8, 16, ::std::weak_ptr<::ImageExportSubController>> mImageExportSubController;
42 ::ll::TypedStorage<8, 64, ::std::function<bool(::std::string&, ::Core::Path
const&)>> mImageMetaDataLoader;
47 PortfolioScreenController();
52 virtual ~PortfolioScreenController() ;
54 virtual void onOpen() ;
56 virtual void onTerminate() ;
58 virtual bool _isStillValid() const ;
60 virtual
void addStaticScreenVars(::Json::Value& globalVars) ;
66 MCAPI explicit PortfolioScreenController(::std::shared_ptr<::ClientInstanceScreenModel> model);
68 MCAPI
void _addPhotoPage(::Core::PathBuffer<::std::
string> const& photoPath);
70 MCAPI
void _buildPhotoRecords();
72 MCAPI
void _createPhotoItem(uint64 index);
74 MCAPI
void _deletePhoto(uint64 index);
76 MCAPI
int _getPickIndex(::UIPropertyBag& bag);
78 MCAPI ::ui::ViewRequest _handlePortfolioExport();
80 MCAPI
void _initScreenControllerProxy();
82 MCAPI
void _loadCaptionIfUnloaded(::PhotoRecord& record);
84 MCAPI
void _registerBindings();
86 MCAPI
void _registerEventHandlers();
88 MCAPI
void _saveCaptions(
bool forceSaveAll);
94 MCAPI
void* $ctor(::std::shared_ptr<::ClientInstanceScreenModel> model);
106 MCAPI
void $onOpen();
108 MCAPI
void $onTerminate();
110 MCFOLD
bool $_isStillValid() const;
112 MCAPI
void $addStaticScreenVars(::Json::Value& globalVars);
Definition ClientInstanceScreenController.h:5
Definition ClientInstanceScreenModel.h:5
Definition ImageExportSubController.h:5
Definition PortfolioScreenController.h:5
static MCAPI void ** $vftableForScreenController()
static MCAPI void ** $vftableForEnableNonOwnerReferences()
Definition PortfolioScreenManager.h:5
Definition UIPropertyBag.h:5
Definition PhotoRecord.h:5