LeviLamina
Loading...
Searching...
No Matches
InviteScreenController.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/gui/DirtyFlag.h"
7#include "mc/client/gui/screens/controllers/MinecraftScreenController.h"
8#include "mc/client/network/realms/World.h"
9#include "mc/client/social/PlatformUserProfileData.h"
10#include "mc/deps/core/threading/TaskGroup.h"
11#include "mc/deps/core/utility/NonOwnerPointer.h"
12
13// auto generated forward declare list
14// clang-format off
16namespace Json { class Value; }
17namespace Parties { class PartySystem; }
18namespace Social { struct XboxLiveUserProfileData; }
19// clang-format on
20
22public:
23 // InviteScreenController inner types declare
24 // clang-format off
28 // clang-format on
29
30 // InviteScreenController inner types define
32 public:
33 // member variables
34 // NOLINTBEGIN
35 ::ll::TypedStorage<8, 8, ::Social::XboxLiveUserProfileData const*> mUserProfileData;
36 ::ll::TypedStorage<1, 1, bool> mToggleState;
37 // NOLINTEND
38 };
39
41 public:
42 // member variables
43 // NOLINTBEGIN
44 ::ll::TypedStorage<8, 192, ::Social::PlatformUserProfileData> mUserProfileData;
45 ::ll::TypedStorage<1, 1, bool> mToggleState;
46 // NOLINTEND
47 };
48
49 struct LinkedUserEntryData {
50 public:
51 // member variables
52 // NOLINTBEGIN
53 ::ll::TypedStorage<8, 8, ::Social::XboxLiveUserProfileData const*> mXboxUserProfileData;
54 ::ll::TypedStorage<8, 192, ::Social::PlatformUserProfileData> mPlatformUserProfileData;
55 ::ll::TypedStorage<1, 1, bool> mToggleState;
56 // NOLINTEND
57 };
58
59public:
60 // member variables
61 // NOLINTBEGIN
62 ::ll::TypedStorage<8, 24, ::std::vector<::InviteScreenController::XboxLiveUserEntryData>> mXboxLiveEntries;
63 ::ll::TypedStorage<8, 24, ::std::vector<::InviteScreenController::PlatformUserEntryData>> mPlatformEntries;
64 ::ll::TypedStorage<8, 24, ::std::vector<::InviteScreenController::LinkedUserEntryData>> mLinkedEntries;
65 ::ll::TypedStorage<8, 16, ::std::shared_ptr<bool>> mDataRequestExistenceTracker;
66 ::ll::TypedStorage<4, 4, int> mSelectedXboxCount;
67 ::ll::TypedStorage<4, 4, int> mSelectedPlatformCount;
68 ::ll::TypedStorage<4, 4, int> mSelectedLinkedAccountCount;
69 ::ll::TypedStorage<4, 4, uint> mXboxOnlineOffset;
70 ::ll::TypedStorage<4, 4, uint> mPlatformOnlineOffset;
71 ::ll::TypedStorage<4, 4, uint> mLinkedAccountOnlineOffset;
72 ::ll::TypedStorage<4, 24, ::std::array<uint, 6>> mEntryPages;
73 ::ll::TypedStorage<1, 1, bool> mDirty;
74 ::ll::TypedStorage<1, 1, bool> mInRealm;
75 ::ll::TypedStorage<1, 1, bool> mCanManageRealmMembers;
76 ::ll::TypedStorage<8, 720, ::Realms::World> mCurrentRealm;
77 ::ll::TypedStorage<1, 1, bool> mDataRefresh;
78 ::ll::TypedStorage<1, 1, bool> mIsLoadingFriends;
79 ::ll::TypedStorage<4, 4, int> mNumFriendsToLoad;
80 ::ll::TypedStorage<1, 1, bool> mShowLinkedAccounts;
81 ::ll::TypedStorage<1, 1, bool> mShowPlatformInvites;
82 ::ll::TypedStorage<1, 1, bool> mUsePagination;
83 ::ll::TypedStorage<1, 1, bool> mMakePartyInvite;
84 ::ll::TypedStorage<4, 4, uint> mEntriesPerPage;
85 ::ll::TypedStorage<8, 24, ::Bedrock::NonOwnerPointer<::Parties::PartySystem>> mPartySystem;
86 ::ll::TypedStorage<8, 336, ::TaskGroup> mTaskGroup;
87 // NOLINTEND
88
89public:
90 // prevent constructor by default
91 InviteScreenController();
92
93public:
94 // virtual functions
95 // NOLINTBEGIN
96 virtual ~InviteScreenController() /*override*/ = default;
97
98 virtual void queueTitleNarration() /*override*/;
99
100 virtual ::ui::DirtyFlag tick() /*override*/;
101
102 virtual void addStaticScreenVars(::Json::Value& globalVars) /*override*/;
103
104 virtual ::std::string _getButtonADescription() /*override*/;
105
106 virtual ::std::string _getButtonXDescription() /*override*/;
107
108 virtual ::std::string _getButtonYDescription() /*override*/;
109 // NOLINTEND
110
111public:
112 // member functions
113 // NOLINTBEGIN
114 MCAPI InviteScreenController(
115 ::std::shared_ptr<::MinecraftScreenModel> model,
116 ::Bedrock::NonOwnerPointer<::Parties::PartySystem> partySystem
117 );
118
119 MCAPI ::std::string _getHoverText(::Social::XboxLiveUserProfileData const* xboxUserProfileData) const;
120
121 MCAPI ::std::string _getLinkedAccountFirstDisplayName(int const collectionIndex) const;
122
123 MCAPI ::std::string _getLinkedAccountFriendTitleName(int const collectionIndex) const;
124
125 MCAPI ::std::string _getPlatformDisplayName(int const collectionIndex) const;
126
127 MCAPI ::std::string _getPlatformFriendTitleName(int const collectionIndex) const;
128
129 MCAPI ::std::string _getXboxFriendTitleName(int const collectionIndex) const;
130
131 MCAPI ::std::string _getXboxLiveDisplayName(::Social::XboxLiveUserProfileData const* xboxUserProfileData) const;
132
133 MCAPI void _refreshXboxLiveFriendsData();
134
135 MCAPI void _sortDataList();
136 // NOLINTEND
137
138public:
139 // constructor thunks
140 // NOLINTBEGIN
141 MCAPI void* $ctor(
142 ::std::shared_ptr<::MinecraftScreenModel> model,
143 ::Bedrock::NonOwnerPointer<::Parties::PartySystem> partySystem
144 );
145 // NOLINTEND
146
147public:
148 // virtual function thunks
149 // NOLINTBEGIN
150 MCAPI void $queueTitleNarration();
151
152 MCAPI ::ui::DirtyFlag $tick();
153
154 MCAPI void $addStaticScreenVars(::Json::Value& globalVars);
155
156 MCFOLD ::std::string $_getButtonADescription();
157
158 MCAPI ::std::string $_getButtonXDescription();
159
160 MCAPI ::std::string $_getButtonYDescription();
161 // NOLINTEND
162};
Definition InviteScreenController.h:5
Definition Value.h:16
Definition MinecraftScreenController.h:5
Definition MinecraftScreenModel.h:5
Definition PartySystem.h:7
Definition InviteScreenController.h:19
Definition InviteScreenController.h:17
Definition InviteScreenController.h:15
Definition XboxLiveUserProfileData.h:7