3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/client/gui/OrientationType.h"
7#include "mc/client/gui/controls/UIComponent.h"
8#include "mc/deps/core/utility/pub_sub/Publisher.h"
14namespace Bedrock::PubSub::ThreadModel {
struct MultiThreaded; }
21 ::ll::TypedStorage<4, 8, ::glm::ivec2> mDimensions;
22 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::UIControl>> mGridItemTemplate;
23 ::ll::TypedStorage<8, 16, ::std::weak_ptr<::UIControlFactory>> mControlFactory;
24 ::ll::TypedStorage<8, 32, ::std::string> mGridDimensionBinding;
25 ::ll::TypedStorage<8, 32, ::std::string> mCollectionName;
26 ::ll::TypedStorage<1, 1, ::ui::OrientationType> mGridRescalingType;
27 ::ll::TypedStorage<1, 1, ::ui::OrientationType> mGridFillDirection;
28 ::ll::TypedStorage<4, 4, int> mMaximumGridItems;
29 ::ll::TypedStorage<8, 24, ::std::vector<::std::shared_ptr<::UIControl>>> mCachedControls;
30 ::ll::TypedStorage<1, 1, bool> mLowMemoryMode;
31 ::ll::TypedStorage<4, 4, int> mPartialCreationStartIndex;
32 ::ll::TypedStorage<4, 4, int> mPartialCreationEndIndex;
36 ::Bedrock::PubSub::Publisher<void(uint64), ::Bedrock::PubSub::ThreadModel::MultiThreaded, 0>>
47 virtual ::std::unique_ptr<::UIComponent> clone(::UIControl& cloneOwner)
const ;
49 virtual void reset() ;
51 virtual void onNotifyChildAdded() ;
53 virtual void onNotifyChildRemoved() ;
55 virtual ~GridComponent() ;
61 MCAPI GridComponent(::UIControl& owner, ::std::weak_ptr<::UIControlFactory> factoryPtr);
63 MCAPI
void _createGridItemAt(
int index);
65 MCAPI
bool partiallyCreateGridItems(
int startIndex,
int endIndex);
67 MCAPI
void reassignGridPositions();
69 MCAPI
void refreshGridItems();
75 MCAPI
void* $ctor(::UIControl& owner, ::std::weak_ptr<::UIControlFactory> factoryPtr);
87 MCAPI ::std::unique_ptr<::UIComponent> $clone(::UIControl& cloneOwner)
const;
91 MCFOLD
void $onNotifyChildAdded();
93 MCFOLD
void $onNotifyChildRemoved();
Definition GridComponent.h:5
static MCAPI void ** $vftable()
Definition UIComponent.h:5
Definition UIControlFactory.h:5
Definition MultiThreaded.h:12