22 using FilterFunction = ::std::function<::FilterResult(
::ItemInstance const&,
bool)>;
27 ::ll::TypedStorage<1, 1, bool> mDoExpandoGroups;
28 ::ll::TypedStorage<1, 1, bool> mIsFiltering;
29 ::ll::TypedStorage<4, 4, int> mFilteredItemCount;
30 ::ll::TypedStorage<8, 24, ::std::vector<::std::pair<::ItemInstance, uint>>> mSavedItems;
31 ::ll::TypedStorage<8, 24, ::std::vector<::std::pair<::ItemInstance, uint>>> mActiveFilteredExpandableSetHeads;
32 ::ll::TypedStorage<8, 64, ::std::function<::FilterResult(
::ItemInstance const&,
bool)>> mFilterRule;
40 virtual void containerContentChanged(
int) ;
42 virtual ::ItemInstance
const& getItemInstance(
int modelSlot)
const ;
44 virtual void setItemInstance(
int modelSlot,
::ItemInstance const& item) ;
46 virtual void refreshContainer(
bool fullRefresh) ;
48 virtual int getContainerSize()
const ;
50 virtual int getFilteredContainerSize()
const ;
52 virtual bool isExpanableItemFiltered(
int index)
const ;
54 virtual int getIndexForCreativeItem(
::ItemStackBase const& item)
const ;
56 virtual void _init() ;
62 MCNAPI_C
void _refreshContainer(
bool fullRefresh);
64 MCNAPI_C
void setFilteringRule(::std::function<::FilterResult(
::ItemInstance const&,
bool)> rule);
73 ::ContainerCategory containerCategory,
74 ::Bedrock::NotNullNonOwnerPtr<::CreativeItemRegistry> creativeItemRegistry,
85 MCNAPI
void $containerContentChanged(
int);
87 MCNAPI ::ItemInstance
const& $getItemInstance(
int modelSlot)
const;
89 MCNAPI
void $setItemInstance(
int modelSlot,
::ItemInstance const& item);
91 MCNAPI
void $refreshContainer(
bool fullRefresh);
93 MCNAPI
int $getContainerSize()
const;
95 MCNAPI
int $getFilteredContainerSize()
const;
97 MCNAPI
bool $isExpanableItemFiltered(
int index)
const;
101 MCNAPI
void $_init();