3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/client/gui/ViewRequest.h"
7#include "mc/client/gui/screens/controllers/ActiveBundleData.h"
20 enum class BundleItemStickScrollDirection :
int {
27 enum class BundleItemScrollWheelDirection :
int {
35 ::ll::TypedStorage<8, 144, ::ActiveBundleData> mActiveBundleData;
41 MCAPI
bool bundleModeItemTransferOut(
42 ::ContainerScreenController& controller,
43 ::std::string
const& toCollectionName,
44 int toCollectionIndex,
45 ::std::string
const& fromBundleCollectionName,
46 int fromBundleCollectionIndex
49 MCFOLD ::ActiveBundleData
const& getActiveBundleData()
const;
51 MCAPI ::ItemStack
const& getItemStackFromBundle(
52 ::ContainerScreenController
const& controller,
53 ::ItemStackBase
const& bundleItem,
57 MCAPI ::BundleTooltipLayoutData
const&
58 getTooltipLayoutData(::ContainerScreenController
const& controller, ::ItemStackBase
const& bundleItem)
const;
60 MCAPI
void handleBundleActive(
61 ::ContainerScreenController& controller,
62 ::std::string
const& collectionName,
66 MCAPI
void handleBundleHovered(
67 ::ContainerScreenController& controller,
68 ::std::string
const& collectionName,
72 MCAPI
void handleBundleItemTransferIn(
73 ::ContainerScreenController& controller,
74 ::std::string
const& collectionName,
78 MCAPI
void handleBundleItemTransferOut(
79 ::ContainerScreenController& controller,
80 ::std::string
const& collectionName,
84 MCAPI ::ui::ViewRequest handleBundlePlaceAll(
85 ::ContainerScreenController& controller,
86 ::std::string
const& collectionName,
90 MCAPI ::ui::ViewRequest handleBundlePlaceOne(
91 ::ContainerScreenController& controller,
92 ::std::string
const& collectionName,
96 MCAPI
void handleBundleUnselected(::ContainerScreenController& controller);
98 MCAPI
void invalidateBundleTooltipLayoutData();
100 MCAPI
bool isSlotInteractiveBundle(
101 ::ContainerScreenController
const& controller,
102 ::std::string
const& collectionName,
106 MCAPI ::ui::ViewRequest onBundleItemRightStick(
107 ::ContainerScreenController& controller,
108 ::BundleHelper::BundleItemStickScrollDirection direction
111 MCAPI ::ui::ViewRequest onBundleItemScrollWheel(
112 ::ContainerScreenController& controller,
113 ::BundleHelper::BundleItemScrollWheelDirection direction
116 MCAPI
void resetActiveBundleData();
118 MCAPI
bool shouldHandleBundleIdlePlaceAll(
119 ::ContainerScreenController& controller,
120 ::std::string
const& collectionName,
124 MCAPI ~BundleHelper();
130 MCAPI
static bool _isBundleSelected(
131 ::std::string
const& collectionName,
133 ::ActiveBundleData
const& activeBundleData
136 MCAPI static ::ui::ViewRequest _onBundleItemRightStick(
137 ::BundleHelper::BundleItemStickScrollDirection direction,
138 ::BundleTooltipLayoutData tooltipLayoutData,
139 ::ActiveBundleData& activeBundleData
142 MCAPI static ::ui::ViewRequest _onBundleItemScrollWheel(
143 ::BundleHelper::BundleItemScrollWheelDirection direction,
144 ::BundleTooltipLayoutData tooltipLayoutData,
145 ::ActiveBundleData& activeBundleData
148 MCAPI
static bool _shouldShowBundleOpen(
149 ::std::string
const& collectionName,
151 bool usingTouchScheme,
152 ::ActiveBundleData
const& activeBundleData
155 MCAPI
static void registerBindings(::ContainerScreenController& controller);
157 MCAPI
static void registerEventHandlers(::ContainerScreenController& controller);
159 MCAPI
static void registerStateMachine(::ContainerScreenController& controller);
Definition BundleHelper.h:5
Definition ContainerScreenController.h:5
Definition ItemStackBase.h:52
Definition ItemStack.h:35