LeviLamina
Loading...
Searching...
No Matches
EduShareLinkScreenController.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/gui/screens/controllers/EduShareLinkItem.h"
7#include "mc/client/gui/screens/controllers/EduShareMethodType.h"
8#include "mc/client/gui/screens/controllers/EduShareUriType.h"
9#include "mc/client/gui/screens/controllers/MainMenuScreenController.h"
10#include "mc/options/EduSharedUriResource.h"
11
12// auto generated forward declare list
13// clang-format off
15struct LibraryItem;
16namespace Json { class Value; }
17// clang-format on
18
20public:
21 // EduShareLinkScreenController inner types declare
22 // clang-format off
24 // clang-format on
25
26 // EduShareLinkScreenController inner types define
27 enum class UriResourceValidationStatus : int {};
28
29 enum class ScreenState : int {};
30
32
33public:
34 // member variables
35 // NOLINTBEGIN
36 ::ll::TypedStorage<1, 4, ::EduShareLinkScreenController::EduShareLinkCapabilities> mCapabilities;
37 ::ll::TypedStorage<8, 32, ::std::string> mSourceScreen;
38 ::ll::TypedStorage<8, 32, ::std::string> mSourcePrefix;
39 ::ll::TypedStorage<4, 4, ::EduShareLinkScreenController::ScreenState> mScreenState;
40 ::ll::TypedStorage<8, 104, ::EduShareLinkItem> mItem;
41 ::ll::TypedStorage<8, 72, ::std::optional<::EduSharedUriResource>> mOriginalAdditionalUriResource;
42 ::ll::TypedStorage<8, 72, ::std::optional<::EduSharedUriResource>> mAdditionalUriResource;
43 ::ll::TypedStorage<8, 64, ::EduSharedUriResource> mEditAdditionalUriResource;
44 ::ll::TypedStorage<4, 4, ::EduShareLinkScreenController::UriResourceValidationStatus> mUriResourceValidationStatus;
45 ::ll::TypedStorage<8, 32, ::std::string> mAdditionalUriResourceUriErrorMessage;
46 // NOLINTEND
47
48public:
49 // prevent constructor by default
50 EduShareLinkScreenController();
51
52public:
53 // virtual functions
54 // NOLINTBEGIN
55 virtual void addStaticScreenVars(::Json::Value& globalVars) /*override*/;
56
57 virtual ~EduShareLinkScreenController() /*override*/;
58 // NOLINTEND
59
60public:
61 // member functions
62 // NOLINTBEGIN
63 MCAPI EduShareLinkScreenController(
64 ::std::shared_ptr<::MainMenuScreenModel> model,
65 ::LibraryItem const& item,
66 ::std::optional<::EduSharedUriResource> resource
67 );
68
69 MCAPI ::std::string _appendAdditionalResources(::std::string const& url);
70
71 MCAPI void _clearAdditionalUriResource();
72
73 MCAPI void _closeActiveScreen();
74
75 MCAPI ::std::string _getResourceAddedText() const;
76
77 MCAPI ::std::string _getShareButtonText() const;
78
79 MCAPI ::std::string _getTeamsAdvancedShareTitle() const;
80
81 MCAPI ::std::string _getTeamsBodyText() const;
82
83 MCAPI void _openScreen(::EduShareLinkScreenController::ScreenState state);
84
85 MCAPI void _registerAddResourcesHandlers();
86
87 MCAPI void _registerShareDialogHandlers(::std::string const& copyUri);
88
89 MCAPI void _registerShareTeamsHandlers();
90
91 MCAPI void _registerSimpleShareMenuHandlers();
92
93 MCAPI void _screenTTS(::std::string const& title, ::std::string const& contents, ::std::string const& extra);
94
95 MCAPI void
96 _sendNotification(::EduShareUriType shareType, ::EduShareMethodType methodType, ::std::string const& toastMessage);
97 // NOLINTEND
98
99public:
100 // constructor thunks
101 // NOLINTBEGIN
102 MCAPI void* $ctor(
103 ::std::shared_ptr<::MainMenuScreenModel> model,
104 ::LibraryItem const& item,
105 ::std::optional<::EduSharedUriResource> resource
106 );
107 // NOLINTEND
108
109public:
110 // destructor thunk
111 // NOLINTBEGIN
112 MCAPI void $dtor();
113 // NOLINTEND
114
115public:
116 // virtual function thunks
117 // NOLINTBEGIN
118 MCAPI void $addStaticScreenVars(::Json::Value& globalVars);
119 // NOLINTEND
120
121public:
122 // vftables
123 // NOLINTBEGIN
125
126 MCNAPI static void** $vftableForScreenController();
127 // NOLINTEND
128};
Definition EduShareLinkScreenController.h:5
static MCAPI void ** $vftableForEnableNonOwnerReferences()
static MCAPI void ** $vftableForScreenController()
Definition Value.h:16
Definition MainMenuScreenController.h:5
Definition MainMenuScreenModel.h:5
Definition EduShareLinkScreenController.h:17
Definition LibraryItem.h:5