3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/client/gui/DirtyFlag.h"
7#include "mc/client/gui/screens/controllers/MainMenuScreenController.h"
16namespace Json {
class Value; }
23 enum class ItemType : uchar {
28 enum class OptionalFeature : uchar {
31 FindWorldsAndFeedbackButtons = 4,
35 enum class ScreenType : uchar {
40 enum class ErrorType : uchar {
42 LibraryConnection = 1,
49 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::librarySearch::TelemetryData>> mSearchTelemetryData;
50 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::LibraryCollection>> mLibraryCollection;
51 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::LibrarySearchBarScreenController>> mSearchBarSubController;
52 ::ll::TypedStorage<8, 32, ::std::string> mLibraryTitle;
53 ::ll::TypedStorage<8, 32, ::std::string> mLibraryIcon;
54 ::ll::TypedStorage<8, 32, ::std::string> mLibraryPageDescription;
55 ::ll::TypedStorage<8, 32, ::std::string> mCategoryTitle;
56 ::ll::TypedStorage<1, 1, ::LibraryScreenController::ItemType> mItemType;
57 ::ll::TypedStorage<1, 1, ::LibraryScreenController::OptionalFeature> mOptionalFeatures;
58 ::ll::TypedStorage<1, 1, ::LibraryScreenController::ScreenType> mScreenType;
59 ::ll::TypedStorage<1, 1, ::LibraryScreenController::ErrorType> mCurrentError;
60 ::ll::TypedStorage<1, 1, bool> mFetchComplete;
61 ::ll::TypedStorage<1, 1, bool> mShowingWelcome;
66 LibraryScreenController();
71 virtual ~LibraryScreenController() ;
73 virtual void addStaticScreenVars(::Json::Value& globalVars) ;
75 virtual void onOpen() ;
77 virtual void onInit() ;
79 virtual ::ui::DirtyFlag tick() ;
85 MCAPI LibraryScreenController(
86 ::std::shared_ptr<::MainMenuScreenModel> model,
87 ::std::shared_ptr<::LibraryCollection> collection,
88 ::LibraryScreenController::OptionalFeature optionalFeatures
91 MCAPI LibraryScreenController(
92 ::std::shared_ptr<::MainMenuScreenModel> model,
93 ::std::shared_ptr<::LibraryCollection> collection,
94 ::std::string
const& title,
95 ::std::string
const& icon,
96 ::std::string
const& pageDescription,
97 ::LibraryScreenController::OptionalFeature optionalFeatures
100 MCAPI LibraryScreenController(
101 ::std::shared_ptr<::MainMenuScreenModel> model,
102 ::std::shared_ptr<::LibraryCollection> collection,
103 ::std::string
const& title,
104 ::std::string
const& icon,
105 ::std::string
const& pageDescription,
106 ::std::string
const& categoryTitle,
107 ::LibraryScreenController::OptionalFeature optionalFeatures
110 MCAPI
void _fireEventLibrarySearch();
112 MCAPI ::LibraryItem* _getItem(::UIPropertyBag& bag)
const;
114 MCAPI
void _handleFetchErrors();
116 MCAPI
void _initialize();
118 MCAPI
void _initializeLibraryCollection(::std::shared_ptr<::LibraryCollection> libraryCollection);
120 MCAPI
void _registerBindings();
122 MCAPI
void _registerEventHandlers();
124 MCAPI
bool isSearchResultScreen()
const;
131 ::std::shared_ptr<::MainMenuScreenModel> model,
132 ::std::shared_ptr<::LibraryCollection> collection,
133 ::LibraryScreenController::OptionalFeature optionalFeatures
137 ::std::shared_ptr<::MainMenuScreenModel> model,
138 ::std::shared_ptr<::LibraryCollection> collection,
139 ::std::string
const& title,
140 ::std::string
const& icon,
141 ::std::string
const& pageDescription,
142 ::LibraryScreenController::OptionalFeature optionalFeatures
146 ::std::shared_ptr<::MainMenuScreenModel> model,
147 ::std::shared_ptr<::LibraryCollection> collection,
148 ::std::string
const& title,
149 ::std::string
const& icon,
150 ::std::string
const& pageDescription,
151 ::std::string
const& categoryTitle,
152 ::LibraryScreenController::OptionalFeature optionalFeatures
165 MCAPI
void $addStaticScreenVars(::Json::Value& globalVars);
167 MCAPI
void $onOpen();
169 MCAPI
void $onInit();
171 MCAPI ::ui::DirtyFlag $tick();
Definition LibraryCollection.h:5
Definition LibraryItem.h:5
Definition LibraryScreenController.h:5
static MCAPI void ** $vftableForEnableNonOwnerReferences()
static MCAPI void ** $vftableForScreenController()
Definition LibrarySearchBarScreenController.h:5
Definition MainMenuScreenController.h:5
Definition MainMenuScreenModel.h:5
Definition UIPropertyBag.h:5
Definition TelemetryData.h:7