3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/client/gui/GameEventNotification.h"
7#include "mc/client/gui/SceneType.h"
8#include "mc/client/gui/screens/AbstractScene.h"
9#include "mc/client/renderer/screen/EyeRenderingModeBit.h"
10#include "mc/deps/core/utility/NonOwnerPointer.h"
11#include "mc/deps/input/InputMode.h"
12#include "mc/deps/input/TextboxTextUpdateReason.h"
13#include "mc/deps/input/enums/ButtonState.h"
14#include "mc/deps/input/enums/DirectionId.h"
15#include "mc/deps/input/enums/FocusImpact.h"
16#include "mc/deps/input/enums/RawInputType.h"
28struct PointerLocationEventData;
32namespace OreUI {
struct ISceneDebugDataProvider; }
33namespace OreUI {
struct ViewDebugSettings; }
34namespace OreUI::Experimental::Detail {
struct ICommandProvider; }
35namespace OreUI::Experimental::Detail {
struct IQueryProvider; }
65 virtual void setScreenSetupCleanup(::std::unique_ptr<::AbstractScreenSetupCleanupStrategy> screenSetupCleanup);
71 virtual void onSetKeyboardHeight(
float keyboardHeight) ;
73 virtual void onInternetUpdate() ;
75 virtual void onFocusGained() ;
77 virtual void onFocusLost() ;
79 virtual void terminate() ;
81 virtual void onCreation() ;
83 virtual void onLeave() ;
85 virtual void onGameEventNotification(::ui::GameEventNotification notification) ;
87 virtual void leaveScreen() ;
89 virtual void preFrameTick() ;
91 virtual void tick(
int nTick,
int maxTick) ;
95 virtual void applyInput(
float a) ;
105 virtual void handleInputModeChanged(::InputMode) ;
107 virtual void handleButtonPress(uint buttonId, ::FocusImpact focusImpact) ;
109 virtual void handleButtonRelease(uint buttonId, ::FocusImpact focusImpact) ;
112 handleRawInputEvent(
int id, ::RawInputType keyType, ::ButtonState state,
bool allowRemapping) ;
114 virtual bool handlePointerLocation(
115 ::PointerLocationEventData
const& pointerLocationData,
116 ::FocusImpact focusImpact
119 virtual void handlePointerPressed(
bool pressed) ;
121 virtual void handleDirection(::DirectionId directionId,
float x,
float y, ::FocusImpact focusImpact) ;
124 handleTextChar(::std::string
const& inputUtf8,
bool keepImePosition, ::FocusImpact focusImpact) ;
126 virtual void handleCaretLocation(
int caretLocation, ::FocusImpact focusImpact) ;
131 virtual void setTextboxText(::std::string
const& text, ::TextboxTextUpdateReason) ;
133 virtual void onKeyboardDismissed() ;
135 virtual void handleLicenseChanged() ;
137 virtual bool renderGameBehind() const ;
139 virtual
bool absorbsInput() const ;
141 virtual
bool closeOnPlayerHurt() const ;
143 virtual
bool useCustomPocketToast() const ;
145 virtual
bool isModal() const ;
147 virtual
bool isEditorMode() const ;
149 virtual
bool isShowingMenu() const ;
151 virtual
bool shouldStealMouse() const ;
153 virtual
bool screenIsNotFlushable() const ;
155 virtual
bool alwaysAcceptsInput() const ;
157 virtual
bool screenDrawsLast() const ;
159 virtual
bool isPlayScreen() const ;
161 virtual
bool renderOnlyWhenTopMost() const ;
163 virtual
bool lowFreqRendering() const ;
165 virtual
bool ignoreAsTop() const ;
167 virtual
bool shouldBeSkippedInAutomation() const ;
169 virtual ::
std::vector<::RectangleArea> getInputAreas() const ;
171 virtual
int getWidth() ;
173 virtual
int getHeight() ;
175 virtual
void reload() ;
177 virtual ::EyeRenderingModeBit getEyeRenderingMode() const ;
179 virtual ::ui::SceneType getSceneType() const ;
181 virtual ::
std::
string getRawScreenName() const ;
183 virtual ::
std::
string getRoute() const ;
185 virtual ::
std::
string getScreenTelemetryName() const ;
187 virtual
void addEventProperties(::
std::unordered_map<::
std::
string, ::
std::
string>&) const ;
189 virtual
int getScreenVersion() const ;
191 virtual
void processBufferedTextCharEvents(::
std::vector<::
TextCharEventData> const& bufferedEvents) ;
193 virtual
bool getShouldSendEvents() ;
195 virtual
void setShouldSendEvents(
bool sendEvents) ;
197 virtual
bool getWantsTextOnly() ;
199 virtual
void setWantsTextOnly(
bool textOnly) ;
201 virtual
void onDelete(::
CachedScenes& cache, ::TaskGroup& taskGroup) ;
203 virtual
bool isGamepadCursorEnabled() const ;
205 virtual
bool isGamepadDeflectionModeEnabled() const ;
207 virtual ::glm::vec2 const& getGamepadCursorPosition() const ;
209 virtual
void cleanInputComponents() ;
213 virtual
bool canBePushed() const ;
215 virtual
bool canBePopped() const ;
217 virtual
bool canBeTransitioned() const ;
220 onScreenExit(
bool isPopping,
bool doScreenTransitions, ::
std::shared_ptr<::
AbstractScene> pushedScene) ;
222 virtual
void onScreenEntrance(
bool isRevisiting,
bool doScreenTransitions) ;
224 virtual
bool isEntering() const ;
226 virtual
bool isExiting() const ;
228 virtual
void schedulePop() ;
230 virtual
bool isTerminating() const ;
232 virtual
bool loadScreenImmediately() const ;
234 virtual
bool forceUpdateActiveSceneStackWhenPushed() const ;
236 virtual
bool hasFinishedLoading() const ;
238 virtual
void sendScreenEvent(::
std::
string const&, ::
std::
string const&) ;
240 virtual
void setDebugSettings(::OreUI::ViewDebugSettings const&) const ;
242 virtual
void setScreenState(::
std::vector<::
std::pair<::
std::string_view, ::
std::string_view>> const&) ;
244 virtual ::Bedrock::NonOwnerPointer<::OreUI::ISceneDebugDataProvider const> getDebugDataProvider() const
247 virtual ::Bedrock::NonOwnerPointer<::OreUI::Experimental::Detail::IQueryProvider const> getQueryProvider() const
250 virtual ::Bedrock::NonOwnerPointer<::OreUI::Experimental::Detail::ICommandProvider const> getCommandProvider() const
259 ::RectangleArea const& a,
310 MCNAPI
void $tick(
int nTick,
int maxTick);
333 MCNAPI
void $handleDirection(::DirectionId directionId,
float x,
float y, ::FocusImpact focusImpact);
335 MCNAPI
void $handleTextChar(::
std::
string const& inputUtf8,
bool keepImePosition, ::FocusImpact focusImpact);
455 MCNAPI ::Bedrock::NonOwnerPointer<::OreUI::Experimental::Detail::IQueryProvider const>
$getQueryProvider() const;
457 MCNAPI ::Bedrock::NonOwnerPointer<::OreUI::Experimental::Detail::ICommandProvider const>
Definition AbstractScene.h:5
Definition BaseScreen.h:5
MCAPI void $sendScreenEvent(::std::string const &, ::std::string const &)
MCAPI bool $loadScreenImmediately() const
MCAPI bool $getWantsTextOnly()
MCAPI void $processBufferedTextCharEvents(::std::vector<::TextCharEventData > const &bufferedEvents)
MCAPI bool $isModal() const
MCAPI ::Bedrock::NonOwnerPointer<::OreUI::Experimental::Detail::IQueryProvider const > $getQueryProvider() const
MCAPI bool $isGamepadDeflectionModeEnabled() const
MCAPI void $setSize(::ScreenSizeData const &screenSizeData)
MCAPI void $onSetKeyboardHeight(float keyboardHeight)
MCAPI bool $hasFinishedLoading() const
MCAPI void $onKeyboardDismissed()
MCAPI int $getScreenVersion() const
MCAPI void $setScreenState(::std::vector<::std::pair<::std::string_view, ::std::string_view > > const &)
MCAPI void $handleCaretLocation(int caretLocation, ::FocusImpact focusImpact)
MCAPI void $setShouldSendEvents(bool sendEvents)
MCAPI void $preRenderUpdate(::ScreenContext &screenContext)
MCAPI void $handleTouchPadTouch(::TouchPadTouchEventData const &touchEventData, ::FocusImpact focusImpact)
MCAPI void $prepareFrame(::ScreenContext &screenContext)
MCAPI bool $isEntering() const
MCAPI void $onGameEventNotification(::ui::GameEventNotification notification)
MCAPI void $addEventProperties(::std::unordered_map<::std::string, ::std::string > &) const
MCAPI void $handleDirection(::DirectionId directionId, float x, float y, ::FocusImpact focusImpact)
MCAPI void $setDebugSettings(::OreUI::ViewDebugSettings const &) const
MCAPI void $setWantsTextOnly(bool textOnly)
MCAPI void $setupForRendering(::ScreenContext &screenContext)
MCAPI bool $shouldBeSkippedInAutomation() const
MCAPI void $handleButtonRelease(uint buttonId, ::FocusImpact focusImpact)
MCAPI void $schedulePop()
MCAPI bool $renderOnlyWhenTopMost() const
MCAPI void $applyInput(float a)
MCAPI bool $isTerminating() const
MCAPI bool $isGamepadCursorEnabled() const
MCAPI ::std::vector<::RectangleArea > $getInputAreas() const
MCAPI::glm::vec2 const & $getGamepadCursorPosition() const
MCAPI void $frameUpdate(::MinecraftUIFrameUpdateContext &frameUpdateContext)
MCAPI bool $canBeTransitioned() const
MCAPI::std::string $getScreenTelemetryName() const
MCAPI void $cleanupForRendering(::ScreenContext &screenContext)
MCAPI void $onScreenExit(bool isPopping, bool doScreenTransitions, ::std::shared_ptr<::AbstractScene > pushedScene)
MCAPI ::std::weak_ptr<::AbstractSceneProxy > $getProxy()
MCAPI void $postRenderUpdate(::ScreenContext &screenContext)
MCAPI::ui::SceneType $getSceneType() const
MCAPI void $leaveScreen()
MCAPI void $onFocusLost()
MCAPI void $onScreenEntrance(bool isRevisiting, bool doScreenTransitions)
MCAPI void $setTextboxText(::std::string const &text, ::TextboxTextUpdateReason)
MCAPI bool $closeOnPlayerHurt() const
MCAPI void $init(::ScreenSizeData const &screenSizeData)
MCAPI bool $lowFreqRendering() const
MCAPI bool $getShouldSendEvents()
MCAPI bool $screenDrawsLast() const
MCAPI void $handlePointerPressed(bool pressed)
MCAPI void $onInternetUpdate()
MCAPI void $handleButtonPress(uint buttonId, ::FocusImpact focusImpact)
MCAPI bool $renderGameBehind() const
MCAPI bool $forceUpdateActiveSceneStackWhenPushed() const
MCAPI bool $ignoreAsTop() const
MCAPI::std::string $getRawScreenName() const
static MCAPI void drawRectangleArea(::ScreenContext &screenContext, ::RectangleArea const &a, int ux, int vy, float uvWidth, float uvHeight, float us, float vs, float px, float py)
MCAPI void $setScreenSetupCleanup(::std::unique_ptr<::AbstractScreenSetupCleanupStrategy > screenSetupCleanup)
MCAPI void $handleTextChar(::std::string const &inputUtf8, bool keepImePosition, ::FocusImpact focusImpact)
MCAPI::EyeRenderingModeBit $getEyeRenderingMode() const
MCAPI bool $isPlayScreen() const
MCAPI bool $isExiting() const
MCAPI bool $shouldStealMouse() const
MCAPI void $onDelete(::CachedScenes &cache, ::TaskGroup &taskGroup)
MCAPI bool $alwaysAcceptsInput() const
static MCAPI void ** $vftable()
MCAPI bool $canBePushed() const
MCAPI ::Bedrock::NonOwnerPointer<::OreUI::ISceneDebugDataProvider const > $getDebugDataProvider() const
MCAPI bool $absorbsInput() const
MCAPI void $handleRawInputEvent(int id, ::RawInputType keyType, ::ButtonState state, bool allowRemapping)
MCAPI bool $handlePointerLocation(::PointerLocationEventData const &pointerLocationData, ::FocusImpact focusImpact)
MCAPI::std::string $getRoute() const
MCAPI bool $isShowingMenu() const
MCAPI bool $canBePopped() const
MCAPI void $preFrameTick()
MCAPI void $tick(int nTick, int maxTick)
MCAPI bool $isEditorMode() const
MCAPI ::Bedrock::NonOwnerPointer<::OreUI::Experimental::Detail::ICommandProvider const > $getCommandProvider() const
MCAPI bool $screenIsNotFlushable() const
MCAPI void $handleLicenseChanged()
MCAPI void $onFocusGained()
MCAPI bool $useCustomPocketToast() const
MCAPI void $cleanInputComponents()
Definition ScreenContext.h:5
Definition AbstractSceneProxy.h:5
Definition AbstractScreenSetupCleanupStrategy.h:5
Definition CachedScenes.h:5
Definition FrameRenderObject.h:5
Definition MinecraftUIFrameUpdateContext.h:5
Definition ScreenSizeData.h:5
Definition TextCharEventData.h:5
Definition TouchPadTouchEventData.h:5