LeviLamina
Loading...
Searching...
No Matches
SmithingTableScreenController.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/gui/ViewRequest.h"
7#include "mc/client/gui/screens/controllers/ContainerScreenController.h"
8
9// auto generated forward declare list
10// clang-format off
11class BlockPos;
13class Player;
15struct ActorUniqueID;
16namespace Json { class Value; }
17// clang-format on
18
20public:
21 // SmithingTableScreenController inner types define
22 enum class SlotIndex : int {
23 Input = 0,
24 Material = 1,
25 Result = 2,
26 Template = 3,
27 };
28
29public:
30 // member variables
31 // NOLINTBEGIN
32 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::SmithingTableContainerManagerController>>
33 mSmithingTableContainerManagerController;
34 ::ll::TypedStorage<4, 4, ::SmithingTableScreenController::SlotIndex> mHoveredSlot;
35 ::ll::TypedStorage<1, 1, bool> mUseSmithingTable2UI;
36 // NOLINTEND
37
38public:
39 // prevent constructor by default
40 SmithingTableScreenController();
41
42public:
43 // virtual functions
44 // NOLINTBEGIN
45 virtual ~SmithingTableScreenController() /*override*/ = default;
46
47 virtual void addStaticScreenVars(::Json::Value& globalVars) /*override*/;
48
49 virtual bool _isStillValid() const /*override*/;
50
51 virtual void _registerCoalesceOrder() /*override*/;
52
53 virtual void _registerAutoPlaceOrder() /*override*/;
54
55 virtual ::std::string _getButtonXDescription() /*override*/;
56
57 virtual ::ui::ViewRequest _onContainerSlotHovered(::std::string const& collectionName, int index) /*override*/;
58 // NOLINTEND
59
60public:
61 // member functions
62 // NOLINTBEGIN
63 MCAPI SmithingTableScreenController(
64 ::std::shared_ptr<::ClientInstanceScreenModel> model,
65 ::Player& player,
66 ::BlockPos const& pos,
67 ::ActorUniqueID
68 );
69
70 MCAPI void _registerBindings();
71
72 MCAPI void _registerEventHandlers();
73
74 MCAPI void _registerSmithingTable2UIBindings();
75
76 MCAPI void _registerStateMachine();
77 // NOLINTEND
78
79public:
80 // constructor thunks
81 // NOLINTBEGIN
82 MCAPI void* $ctor(
83 ::std::shared_ptr<::ClientInstanceScreenModel> model,
84 ::Player& player,
85 ::BlockPos const& pos,
86 ::ActorUniqueID
87 );
88 // NOLINTEND
89
90public:
91 // virtual function thunks
92 // NOLINTBEGIN
93 MCAPI void $addStaticScreenVars(::Json::Value& globalVars);
94
95 MCFOLD bool $_isStillValid() const;
96
97 MCAPI void $_registerCoalesceOrder();
98
99 MCAPI void $_registerAutoPlaceOrder();
100
101 MCFOLD ::std::string $_getButtonXDescription();
102
103 MCAPI ::ui::ViewRequest $_onContainerSlotHovered(::std::string const& collectionName, int index);
104 // NOLINTEND
105
106public:
107 // vftables
108 // NOLINTBEGIN
109 MCNAPI static void** $vftableForScreenController();
110
112 // NOLINTEND
113};
Definition BlockPos.h:21
Definition ClientInstanceScreenModel.h:5
Definition ContainerScreenController.h:5
Definition Value.h:16
Definition Player.h:137
Definition SmithingTableContainerManagerController.h:25
Definition SmithingTableScreenController.h:5
static MCAPI void ** $vftableForScreenController()
static MCAPI void ** $vftableForEnableNonOwnerReferences()
Definition ActorUniqueID.h:10