LeviLamina
Loading...
Searching...
No Matches
SceneStack.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/gui/GameEventNotification.h"
7#include "mc/client/gui/SceneType.h"
8#include "mc/client/gui/screens/interfaces/ISceneStack.h"
9#include "mc/deps/core/utility/NonOwnerPointer.h"
10#include "mc/platform/brstd/function_ref.h"
11
12// auto generated forward declare list
13// clang-format off
14class AbstractScene;
15class Options;
16class SceneStackProxy;
17class UIEventCoordinator;
18struct CachedScenes;
19struct ScreenThreshold;
20namespace Bedrock::PubSub { class Subscription; }
21namespace OreUI { struct RouteAction; }
22// clang-format on
23
24class SceneStack : public ::ISceneStack {
25public:
26 // SceneStack inner types declare
27 // clang-format off
28 class SceneStackEvent;
29 class PushScreenEvent;
30 class PopScreenEvent;
31 class PopRangeOfTypeScreenEvent;
32 class FlushScreenEvent;
33 class ReloadScreenEvent;
34 // clang-format on
35
36 // SceneStack inner types define
38 public:
39 // SceneStackEvent inner types define
40 enum class EventType : int {
41 Push = 0,
42 Pop = 1,
43 PopRangeOfType = 2,
44 Flush = 3,
45 Reload = 4,
46 };
47
48 public:
49 // member variables
50 // NOLINTBEGIN
52 // NOLINTEND
53
54 public:
55 // prevent constructor by default
56 SceneStackEvent& operator=(SceneStackEvent const&);
59
60 public:
61 // virtual functions
62 // NOLINTBEGIN
63 virtual ~SceneStackEvent();
64 // NOLINTEND
65
66 public:
67 // destructor thunk
68 // NOLINTBEGIN
69 MCNAPI void $dtor();
70 // NOLINTEND
71
72 public:
73 // vftables
74 // NOLINTBEGIN
75 MCNAPI static void** $vftable();
76 // NOLINTEND
77 };
78
80 public:
81 // member variables
82 // NOLINTBEGIN
85 // NOLINTEND
86
87 public:
88 // prevent constructor by default
89 PushScreenEvent& operator=(PushScreenEvent const&);
92
93 public:
94 // virtual functions
95 // NOLINTBEGIN
96 virtual ~PushScreenEvent() /*override*/ = default;
97 // NOLINTEND
98
99 public:
100 // member functions
101 // NOLINTBEGIN
102 MCNAPI
103 PushScreenEvent(::std::shared_ptr<::AbstractScene> scene, ::std::optional<::OreUI::RouteAction> routeAction);
104 // NOLINTEND
105
106 public:
107 // constructor thunks
108 // NOLINTBEGIN
109 MCNAPI void* $ctor(::std::shared_ptr<::AbstractScene> scene, ::std::optional<::OreUI::RouteAction> routeAction);
110 // NOLINTEND
111
112 public:
113 // vftables
114 // NOLINTBEGIN
115 MCNAPI static void** $vftable();
116 // NOLINTEND
117 };
118
120 public:
121 // member variables
122 // NOLINTBEGIN
126 // NOLINTEND
127
128 public:
129 // prevent constructor by default
130 PopScreenEvent& operator=(PopScreenEvent const&);
133
134 public:
135 // virtual functions
136 // NOLINTBEGIN
137 virtual ~PopScreenEvent() /*override*/ = default;
138 // NOLINTEND
139
140 public:
141 // vftables
142 // NOLINTBEGIN
143 MCNAPI static void** $vftable();
144 // NOLINTEND
145 };
146
148 public:
149 // member variables
150 // NOLINTBEGIN
154 // NOLINTEND
155
156 public:
157 // prevent constructor by default
161
162 public:
163 // virtual functions
164 // NOLINTBEGIN
165 virtual ~PopRangeOfTypeScreenEvent() /*override*/ = default;
166 // NOLINTEND
167
168 public:
169 // vftables
170 // NOLINTBEGIN
171 MCNAPI static void** $vftable();
172 // NOLINTEND
173 };
174
176 public:
177 // member variables
178 // NOLINTBEGIN
182 // NOLINTEND
183
184 public:
185 // prevent constructor by default
186 FlushScreenEvent& operator=(FlushScreenEvent const&);
189
190 public:
191 // virtual functions
192 // NOLINTBEGIN
193 virtual ~FlushScreenEvent() /*override*/ = default;
194 // NOLINTEND
195
196 public:
197 // vftables
198 // NOLINTBEGIN
199 MCNAPI static void** $vftable();
200 // NOLINTEND
201 };
202
204 public:
205 // virtual functions
206 // NOLINTBEGIN
207 virtual ~ReloadScreenEvent() /*override*/ = default;
208 // NOLINTEND
209
210 public:
211 // vftables
212 // NOLINTBEGIN
213 MCNAPI static void** $vftable();
214 // NOLINTEND
215 };
216
217public:
218 // member variables
219 // NOLINTBEGIN
248 // NOLINTEND
249
250public:
251 // prevent constructor by default
252 SceneStack& operator=(SceneStack const&);
253 SceneStack(SceneStack const&);
254 SceneStack();
255
256public:
257 // virtual functions
258 // NOLINTBEGIN
259 virtual ~SceneStack() /*override*/;
260
261 virtual void reload() /*override*/;
262
263 virtual void setOptions(::std::weak_ptr<::Options> options) /*override*/;
264
265 virtual void
266 registerSceneChangeCallback(void* token, ::std::function<void(::AbstractScene&)> sceneChangeCallback) /*override*/;
267
268 virtual void unregisterSceneChangeCallback(void* token) /*override*/;
269
270 virtual void registerPrePushSceneCallback(
271 void* token,
272 ::std::function<void(::AbstractScene&)> prePushSceneCallback
273 ) /*override*/;
274
275 virtual void unregisterPrePushSceneCallback(void* token) /*override*/;
276
277 virtual void registerPushSceneCallback(
278 void* token,
279 ::std::function<void(::std::shared_ptr<::AbstractScene>, ::std::optional<::OreUI::RouteAction>)>
280 pushSceneCallback
281 ) /*override*/;
282
283 virtual void unregisterPushSceneCallback(void* token) /*override*/;
284
285 virtual void
286 registerPrePopSceneCallback(void* token, ::std::function<void(::AbstractScene*)> prePopSceneCallback) /*override*/;
287
288 virtual void unregisterPrePopSceneCallback(void* token) /*override*/;
289
290 virtual void registerPopSceneCallback(
291 void* token,
292 ::std::function<void(::std::shared_ptr<::AbstractScene>, bool, ::std::optional<::OreUI::RouteAction>)>
293 popSceneCallback
294 ) /*override*/;
295
296 virtual void unregisterPopSceneCallback(void* token) /*override*/;
297
298 virtual void forEachVisibleScreen(
299 ::brstd::function_ref<void(::AbstractScene&)> callback,
300 bool tickedLastFrame,
301 bool splitscreenRenderBypassThisFrame
302 ) /*override*/;
303
304 virtual void forEachScreen(::brstd::function_ref<bool(::AbstractScene&)> callback, bool topDown) /*override*/;
305
306 virtual void forEachScreenConst(::brstd::function_ref<bool(::AbstractScene const&)> callback, bool topDown) const
307 /*override*/;
308
309 virtual void forEachAlwaysAcceptInputScreen(
310 ::brstd::function_ref<void(::AbstractScene&)> callback,
311 ::AbstractScene const* ignoreScreen
312 ) /*override*/;
313
314 virtual void
315 forEachAlwaysAcceptInputScreenWithTop(::brstd::function_ref<void(::AbstractScene&)> callback) /*override*/;
316
317 virtual void pushScreenWithRouteAction(
318 ::std::shared_ptr<::AbstractScene> newScreen,
319 ::OreUI::RouteAction const& routeAction
320 ) /*override*/;
321
322 virtual void popScreenWithRouteAction(::OreUI::RouteAction const& routeAction) /*override*/;
323
324 virtual void pushScreen(::std::shared_ptr<::AbstractScene> newScreen, bool flush) /*override*/;
325
326 virtual void schedulePopScreen(int totalPopNumber) /*override*/;
327
328 virtual void
329 schedulePopScreenWithExpectedNames(::std::vector<::std::string> const& expectedScreenNames) /*override*/;
330
331 virtual void flushStack(
332 bool immediate,
333 bool ignoreNotFlushableFlag,
334 bool ignoreTransitions,
335 ::std::function<void()> postFlushCallback
336 ) /*override*/;
337
338 virtual void deferUpdatesUntilNextTick() /*override*/;
339
340 virtual ::std::optional<uint64> getFirstSceneIndexOfSceneType(::ui::SceneType sceneType) const /*override*/;
341
342 virtual bool popScreensBackTo(::ui::SceneType const) /*override*/;
343
344 virtual bool popScreensBackToFirstInstanceOf(::ui::SceneType const) /*override*/;
345
346 virtual bool popTopScreensOfType(::ui::SceneType const) /*override*/;
347
348 virtual bool update() /*override*/;
349
350 virtual void resetScreenChangeDirtyFlag() /*override*/;
351
352 virtual bool hasChangedThisFrame() const /*override*/;
353
354 virtual bool isEmpty() const /*override*/;
355
356 virtual uint64 getSize() const /*override*/;
357
358 virtual void setScreenTickingFlag(bool screenIsTicking) /*override*/;
359
360 virtual bool getScreenTickingFlag() const /*override*/;
361
362 virtual ::ui::SceneType getNonTerminatingSceneType() const /*override*/;
363
364 virtual ::std::vector<::std::string> getScreenNames() const /*override*/;
365
366 virtual ::std::vector<::std::string> getScreenTelemetryNames() const /*override*/;
367
368 virtual ::std::string getScreenName() const /*override*/;
369
370 virtual ::std::string getScreenTelemetry() const /*override*/;
371
372 virtual ::std::string const& getLastPoppedScreenName() const /*override*/;
373
374 virtual void handleLicenseChanged() /*override*/;
375
376 virtual void onGameEventNotification(::ui::GameEventNotification notification) /*override*/;
377
378 virtual ::AbstractScene* getTopScene() /*override*/;
379
380 virtual ::AbstractScene const* getTopScene() const /*override*/;
381
382 virtual ::std::shared_ptr<::AbstractScene> getTopSceneShared() const /*override*/;
383
384 virtual ::AbstractScene* getActiveScene() /*override*/;
385
386 virtual ::AbstractScene const* getActiveScene() const /*override*/;
387
388 virtual ::std::shared_ptr<::AbstractScene> getSharedNonTerminatingActiveScene() /*override*/;
389
390 virtual ::std::shared_ptr<::AbstractScene const> const getSharedNonTerminatingActiveScene() const /*override*/;
391
392 virtual ::gsl::span<::ISceneStack::SceneElement const> getScreenStackView() const /*override*/;
393
394 virtual int getScheduledPopCount() const /*override*/;
395
396 virtual bool isScreenReplaceable() const /*override*/;
397
398 virtual void handleTextChar(::std::string const& inputUtf8, bool keepImePosition) /*override*/;
399
400 virtual void setBufferTextCharEvents(bool pushTextCharEvents) /*override*/;
401
402 virtual bool isBufferingTextCharEvents() const /*override*/;
403
404 virtual bool isOnSceneStack(::ui::SceneType sceneType) const /*override*/;
405
406 virtual bool isOnSceneStack(::std::string const& screenName) const /*override*/;
407
408 virtual ::SceneStackProxy* getProxy() /*override*/;
409
410 virtual bool hasScheduledScreens() const /*override*/;
411
412 virtual bool hasScheduledEvents() const /*override*/;
413
414 virtual void setScreenThreshold(::ScreenThreshold const& screenThreshold) /*override*/;
415
416 virtual ::Bedrock::PubSub::Subscription
417 registerSceneStackDestroyedListener(::std::function<void()> callback) /*override*/;
418 // NOLINTEND
419
420public:
421 // member functions
422 // NOLINTBEGIN
424 ::CachedScenes& cachedScenes,
425 ::Bedrock::NotNullNonOwnerPtr<::UIEventCoordinator> const& uiEventCoordinator,
426 ::std::function<bool()> const& getSuspended
427 );
428
429 MCNAPI bool _animationsEnabled() const;
430
431 MCNAPI bool _handleFlushEvent(::SceneStack::FlushScreenEvent const& flushEvent);
432
434
435 MCNAPI bool _handlePushEvent(::SceneStack::PushScreenEvent& pushEvent);
436
437 MCNAPI bool _popScreens(
438 int& popCount,
439 bool ignoreTransitions,
440 ::std::optional<::OreUI::RouteAction> routeAction,
441 ::std::vector<::std::string> const& expectedScreenNames
442 );
443
444 MCNAPI bool _scenesAllIgnoreAsTop(int count) const;
445
447 int totalPopNumber,
448 ::std::optional<::OreUI::RouteAction> routeAction,
449 ::std::vector<::std::string> const& expectedScreenNames
450 );
451
453 ::std::shared_ptr<::AbstractScene> newScreen,
454 bool flush,
455 ::std::optional<::OreUI::RouteAction> routeAction
456 );
457 // NOLINTEND
458
459public:
460 // static functions
461 // NOLINTBEGIN
462 MCNAPI static void _forEachVisibleScreen(
463 ::brstd::function_ref<void(::AbstractScene&)> callback,
464 ::std::function<::AbstractScene*(int)> getScreen,
465 bool,
466 bool splitscreenRenderBypassThisFrame,
467 uint64 topStackIndex,
468 uint64 startIndex,
469 uint64 endIndex,
470 bool renderDrawLastScreens
471 );
472
473 MCNAPI static void forEachVisibleScreen(
474 ::brstd::function_ref<void(::AbstractScene&)> callback,
475 ::std::function<::AbstractScene*(int)> getScreen,
476 bool tickedLastFrame,
477 bool splitscreenRenderBypassThisFrame,
478 int size
479 );
480 // NOLINTEND
481
482public:
483 // constructor thunks
484 // NOLINTBEGIN
485 MCNAPI void* $ctor(
486 ::CachedScenes& cachedScenes,
487 ::Bedrock::NotNullNonOwnerPtr<::UIEventCoordinator> const& uiEventCoordinator,
488 ::std::function<bool()> const& getSuspended
489 );
490 // NOLINTEND
491
492public:
493 // destructor thunk
494 // NOLINTBEGIN
495 MCNAPI void $dtor();
496 // NOLINTEND
497
498public:
499 // virtual function thunks
500 // NOLINTBEGIN
501 MCNAPI void $reload();
502
503 MCNAPI void $setOptions(::std::weak_ptr<::Options> options);
504
505 MCNAPI void $registerSceneChangeCallback(void* token, ::std::function<void(::AbstractScene&)> sceneChangeCallback);
506
507 MCNAPI void $unregisterSceneChangeCallback(void* token);
508
509 MCNAPI void
510 $registerPrePushSceneCallback(void* token, ::std::function<void(::AbstractScene&)> prePushSceneCallback);
511
512 MCNAPI void $unregisterPrePushSceneCallback(void* token);
513
515 void* token,
516 ::std::function<void(::std::shared_ptr<::AbstractScene>, ::std::optional<::OreUI::RouteAction>)>
517 pushSceneCallback
518 );
519
520 MCNAPI void $unregisterPushSceneCallback(void* token);
521
522 MCNAPI void $registerPrePopSceneCallback(void* token, ::std::function<void(::AbstractScene*)> prePopSceneCallback);
523
524 MCNAPI void $unregisterPrePopSceneCallback(void* token);
525
527 void* token,
528 ::std::function<void(::std::shared_ptr<::AbstractScene>, bool, ::std::optional<::OreUI::RouteAction>)>
529 popSceneCallback
530 );
531
532 MCNAPI void $unregisterPopSceneCallback(void* token);
533
535 ::brstd::function_ref<void(::AbstractScene&)> callback,
536 bool tickedLastFrame,
537 bool splitscreenRenderBypassThisFrame
538 );
539
540 MCNAPI void $forEachScreen(::brstd::function_ref<bool(::AbstractScene&)> callback, bool topDown);
541
542 MCNAPI void $forEachScreenConst(::brstd::function_ref<bool(::AbstractScene const&)> callback, bool topDown) const;
543
545 ::brstd::function_ref<void(::AbstractScene&)> callback,
546 ::AbstractScene const* ignoreScreen
547 );
548
549 MCNAPI void $forEachAlwaysAcceptInputScreenWithTop(::brstd::function_ref<void(::AbstractScene&)> callback);
550
551 MCNAPI void
552 $pushScreenWithRouteAction(::std::shared_ptr<::AbstractScene> newScreen, ::OreUI::RouteAction const& routeAction);
553
554 MCNAPI void $popScreenWithRouteAction(::OreUI::RouteAction const& routeAction);
555
556 MCNAPI void $pushScreen(::std::shared_ptr<::AbstractScene> newScreen, bool flush);
557
558 MCNAPI void $schedulePopScreen(int totalPopNumber);
559
560 MCNAPI void $schedulePopScreenWithExpectedNames(::std::vector<::std::string> const& expectedScreenNames);
561
562 MCNAPI void $flushStack(
563 bool immediate,
564 bool ignoreNotFlushableFlag,
565 bool ignoreTransitions,
566 ::std::function<void()> postFlushCallback
567 );
568
570
571 MCNAPI ::std::optional<uint64> $getFirstSceneIndexOfSceneType(::ui::SceneType sceneType) const;
572
573 MCNAPI bool $update();
574
576
577 MCNAPI bool $hasChangedThisFrame() const;
578
579 MCNAPI bool $isEmpty() const;
580
581 MCNAPI uint64 $getSize() const;
582
583 MCNAPI void $setScreenTickingFlag(bool screenIsTicking);
584
585 MCNAPI bool $getScreenTickingFlag() const;
586
587 MCNAPI ::ui::SceneType $getNonTerminatingSceneType() const;
588
589 MCNAPI ::std::vector<::std::string> $getScreenNames() const;
590
591 MCNAPI ::std::vector<::std::string> $getScreenTelemetryNames() const;
592
593 MCNAPI ::std::string $getScreenName() const;
594
595 MCNAPI ::std::string $getScreenTelemetry() const;
596
597 MCNAPI ::std::string const& $getLastPoppedScreenName() const;
598
600
601 MCNAPI void $onGameEventNotification(::ui::GameEventNotification notification);
602
604
605 MCNAPI ::AbstractScene const* $getTopScene() const;
606
607 MCNAPI ::std::shared_ptr<::AbstractScene> $getTopSceneShared() const;
608
610
611 MCNAPI ::AbstractScene const* $getActiveScene() const;
612
614
615 MCNAPI ::std::shared_ptr<::AbstractScene const> const $getSharedNonTerminatingActiveScene() const;
616
617 MCNAPI ::gsl::span<::ISceneStack::SceneElement const> $getScreenStackView() const;
618
619 MCNAPI int $getScheduledPopCount() const;
620
621 MCNAPI bool $isScreenReplaceable() const;
622
623 MCNAPI void $handleTextChar(::std::string const& inputUtf8, bool keepImePosition);
624
625 MCNAPI void $setBufferTextCharEvents(bool pushTextCharEvents);
626
627 MCNAPI bool $isBufferingTextCharEvents() const;
628
629 MCNAPI bool $isOnSceneStack(::ui::SceneType sceneType) const;
630
631 MCNAPI bool $isOnSceneStack(::std::string const& screenName) const;
632
634
635 MCNAPI bool $hasScheduledScreens() const;
636
637 MCNAPI bool $hasScheduledEvents() const;
638
639 MCNAPI void $setScreenThreshold(::ScreenThreshold const& screenThreshold);
640
641 MCNAPI ::Bedrock::PubSub::Subscription $registerSceneStackDestroyedListener(::std::function<void()> callback);
642 // NOLINTEND
643
644public:
645 // vftables
646 // NOLINTBEGIN
647 MCNAPI static void** $vftable();
648 // NOLINTEND
649};
Definition AbstractScene.h:5
Definition SceneStackProxy.h:5
Definition SceneStack.h:175
static MCAPI void ** $vftable()
Definition SceneStack.h:147
Definition SceneStack.h:119
static MCAPI void ** $vftable()
Definition SceneStack.h:79
static MCAPI void ** $vftable()
MCAPI void * $ctor(::std::shared_ptr<::AbstractScene > scene, ::std::optional<::OreUI::RouteAction > routeAction)
MCAPI PushScreenEvent(::std::shared_ptr<::AbstractScene > scene, ::std::optional<::OreUI::RouteAction > routeAction)
Definition SceneStack.h:203
static MCAPI void ** $vftable()
Definition SceneStack.h:37
static MCAPI void ** $vftable()
Definition SceneStack.h:5
MCAPI bool _handleFlushEvent(::SceneStack::FlushScreenEvent const &flushEvent)
MCAPI void $registerSceneChangeCallback(void *token, ::std::function< void(::AbstractScene &)> sceneChangeCallback)
static MCAPI void _forEachVisibleScreen(::brstd::function_ref< void(::AbstractScene &)> callback, ::std::function<::AbstractScene *(int)> getScreen, bool, bool splitscreenRenderBypassThisFrame, uint64 topStackIndex, uint64 startIndex, uint64 endIndex, bool renderDrawLastScreens)
MCAPI void $setScreenThreshold(::ScreenThreshold const &screenThreshold)
MCAPI void $setOptions(::std::weak_ptr<::Options > options)
MCAPI bool $isOnSceneStack(::ui::SceneType sceneType) const
MCAPI void $forEachAlwaysAcceptInputScreen(::brstd::function_ref< void(::AbstractScene &)> callback, ::AbstractScene const *ignoreScreen)
MCAPI void $forEachVisibleScreen(::brstd::function_ref< void(::AbstractScene &)> callback, bool tickedLastFrame, bool splitscreenRenderBypassThisFrame)
MCAPI bool $update()
MCAPI void $forEachAlwaysAcceptInputScreenWithTop(::brstd::function_ref< void(::AbstractScene &)> callback)
MCAPI void * $ctor(::CachedScenes &cachedScenes, ::Bedrock::NotNullNonOwnerPtr<::UIEventCoordinator > const &uiEventCoordinator, ::std::function< bool()> const &getSuspended)
MCAPI void $pushScreen(::std::shared_ptr<::AbstractScene > newScreen, bool flush)
MCAPI void $popScreenWithRouteAction(::OreUI::RouteAction const &routeAction)
MCAPI bool $isEmpty() const
MCAPI void _schedulePushScreen(::std::shared_ptr<::AbstractScene > newScreen, bool flush, ::std::optional<::OreUI::RouteAction > routeAction)
MCAPI ::std::optional< uint64 > $getFirstSceneIndexOfSceneType(::ui::SceneType sceneType) const
MCAPI::Bedrock::PubSub::Subscription $registerSceneStackDestroyedListener(::std::function< void()> callback)
MCAPI bool $hasScheduledEvents() const
MCAPI int $getScheduledPopCount() const
MCAPI::std::string $getScreenTelemetry() const
MCAPI uint64 $getSize() const
MCAPI bool _popScreens(int &popCount, bool ignoreTransitions, ::std::optional<::OreUI::RouteAction > routeAction, ::std::vector<::std::string > const &expectedScreenNames)
MCAPI bool _handlePushEvent(::SceneStack::PushScreenEvent &pushEvent)
MCAPI void $unregisterPrePopSceneCallback(void *token)
MCAPI bool _animationsEnabled() const
MCAPI void $forEachScreenConst(::brstd::function_ref< bool(::AbstractScene const &)> callback, bool topDown) const
MCAPI void $deferUpdatesUntilNextTick()
MCAPI bool $isBufferingTextCharEvents() const
static MCAPI void ** $vftable()
MCAPI ::std::shared_ptr<::AbstractScene > $getTopSceneShared() const
MCAPI ::std::vector<::std::string > $getScreenTelemetryNames() const
MCAPI ::gsl::span<::ISceneStack::SceneElement const > $getScreenStackView() const
MCAPI void $registerPrePopSceneCallback(void *token, ::std::function< void(::AbstractScene *)> prePopSceneCallback)
MCAPI void $unregisterPushSceneCallback(void *token)
MCAPI ::std::shared_ptr<::AbstractScene > $getSharedNonTerminatingActiveScene()
MCAPI void $setScreenTickingFlag(bool screenIsTicking)
MCAPI void $pushScreenWithRouteAction(::std::shared_ptr<::AbstractScene > newScreen, ::OreUI::RouteAction const &routeAction)
MCAPI bool _scenesAllIgnoreAsTop(int count) const
MCAPI void $dtor()
MCAPI void $unregisterPopSceneCallback(void *token)
MCAPI::ui::SceneType $getNonTerminatingSceneType() const
MCAPI void $registerPopSceneCallback(void *token, ::std::function< void(::std::shared_ptr<::AbstractScene >, bool, ::std::optional<::OreUI::RouteAction >)> popSceneCallback)
MCAPI::std::string const & $getLastPoppedScreenName() const
MCAPI void $resetScreenChangeDirtyFlag()
MCAPI void $schedulePopScreen(int totalPopNumber)
MCAPI::AbstractScene * $getTopScene()
MCAPI bool $isScreenReplaceable() const
MCAPI void $unregisterSceneChangeCallback(void *token)
MCAPI void $schedulePopScreenWithExpectedNames(::std::vector<::std::string > const &expectedScreenNames)
MCAPI::SceneStackProxy * $getProxy()
MCAPI bool $hasChangedThisFrame() const
MCAPI void $handleLicenseChanged()
MCAPI void $registerPrePushSceneCallback(void *token, ::std::function< void(::AbstractScene &)> prePushSceneCallback)
MCAPI void $registerPushSceneCallback(void *token, ::std::function< void(::std::shared_ptr<::AbstractScene >, ::std::optional<::OreUI::RouteAction >)> pushSceneCallback)
MCAPI bool $getScreenTickingFlag() const
MCAPI bool $hasScheduledScreens() const
MCAPI void $unregisterPrePushSceneCallback(void *token)
MCAPI void _schedulePopScreen(int totalPopNumber, ::std::optional<::OreUI::RouteAction > routeAction, ::std::vector<::std::string > const &expectedScreenNames)
MCAPI void $handleTextChar(::std::string const &inputUtf8, bool keepImePosition)
MCAPI::std::string $getScreenName() const
MCAPI::AbstractScene * $getActiveScene()
MCAPI bool _handlePopRangeOfScreensEvent(::SceneStack::PopRangeOfTypeScreenEvent &popRangeEvent)
MCAPI void $setBufferTextCharEvents(bool pushTextCharEvents)
MCAPI ::std::vector<::std::string > $getScreenNames() const
MCAPI void $onGameEventNotification(::ui::GameEventNotification notification)
MCAPI void $reload()
MCAPI void $forEachScreen(::brstd::function_ref< bool(::AbstractScene &)> callback, bool topDown)
MCAPI void $flushStack(bool immediate, bool ignoreNotFlushableFlag, bool ignoreTransitions, ::std::function< void()> postFlushCallback)
STL namespace.
Definition CachedScenes.h:5
Definition RouteAction.h:7
Definition ScreenThreshold.h:5
Definition Alias.h:14