3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/client/gui/screens/controllers/BundleTooltipLayoutData.h"
7#include "mc/world/containers/SlotData.h"
18 enum class BundleState :
int {
24 enum class TooltipDirection :
int {
34 ::ll::TypedStorage<1, 1, bool> mMinimizedTooltip;
35 ::ll::TypedStorage<4, 8, ::std::optional<int>> mSelectedCollectionIndex;
36 ::ll::TypedStorage<8, 40, ::SlotData> mSlotData;
37 ::ll::TypedStorage<4, 4, ::ActiveBundleData::BundleState> mBundleState;
38 ::ll::TypedStorage<8, 80, ::std::optional<::BundleTooltipLayoutData>> mCachedBundleTooltipLayoutData;
44 MCAPI ActiveBundleData();
46 MCAPI ::BundleTooltipLayoutData
const& getBundleTooltipLayoutData(
47 ::ItemStackBase
const& bundleItem,
48 ::ContainerManagerController& containerManagerController
51 MCAPI ::std::pair<::std::string, int> getCollectionNameAndIndex()
const;
54 getContainerIndexFromCollectionIndex(::BundleTooltipLayoutData
const& tooltipLayoutData,
int collectionIndex)
const;
56 MCAPI
int getSelectedItemContainerIndex(::BundleTooltipLayoutData
const& tooltipLayoutData)
const;
58 MCAPI
void invalidateBundleTooltipLayoutData();
60 MCAPI
bool isActive()
const;
62 MCAPI
bool isHovered()
const;
64 MCAPI
void resetData();
66 MCAPI
void setActive(::std::string
const& collectionName,
int collectionIndex);
68 MCAPI
void setHovered(::std::string
const& collectionName,
int collectionIndex);
74 MCAPI static ::BundleTooltipLayoutData _calculateBundleTooltipLayoutData(
75 ::ItemStackBase
const& bundleItem,
76 ::ContainerManagerController& containerManagerController
Definition ContainerManagerController.h:48
Definition ItemStackBase.h:52
Definition ActiveBundleData.h:5