3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/client/gui/oreui/interface/RouteMode.h"
7#include "mc/client/gui/oreui/interface/ViewState.h"
8#include "mc/deps/core/utility/EnableNonOwnerReferences.h"
15namespace OreUI {
class IScene; }
22class IView :
public ::Bedrock::EnableNonOwnerReferences {
26 virtual ~IView() =
default;
28 virtual void pushCurrentScene(::OreUI::IScene& scene, ::OreUI::RouteMode routeMode) = 0;
30 virtual bool hasScenes()
const = 0;
32 virtual void removeScene(::OreUI::IScene
const& scene) = 0;
34 virtual void update(
double time) = 0;
36 virtual void render(::ScreenContext& screenContext) = 0;
38 virtual void resize(uint width, uint height) = 0;
40 virtual void reload() = 0;
42 virtual void leave() = 0;
44 virtual void onSuspend() = 0;
46 virtual void onResume() = 0;
48 virtual void onRouteChanged(
49 ::std::optional<::OreUI::RouterLocation>
const& previousLocation,
50 ::std::optional<::OreUI::RouterLocation>
const& currentLocation
53 virtual ::std::string_view getUrl()
const = 0;
55 virtual ::OreUI::RouteMode getRouteMode()
const = 0;
57 virtual uint getWidth()
const = 0;
59 virtual uint getHeight()
const = 0;
61 virtual ::OreUI::ViewState getState()
const = 0;
63 virtual void setTextBoxState(::TextBoxStateChange
const& stateChange) = 0;
65 virtual void onKeyboardDismissed() = 0;
67 virtual void setCaretLocation(
int caretLocation) = 0;
69 virtual void triggerEvent(::std::string
const& eventName, ::std::string
const& eventData) = 0;
71 virtual ::std::unique_ptr<::IGamefaceTextInputProxy> getTextInputProxy() = 0;
73 virtual ::OreUI::IViewTestHelper* getViewTestHelper() = 0;
Definition IGamefaceTextInputProxy.h:5
Definition IViewTestHelper.h:7
static MCAPI void ** $vftable()
Definition RouterLocation.h:7
Definition ScreenContext.h:5
Definition TextBoxStateChange.h:5