3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/client/gui/ViewRequest.h"
7#include "mc/client/gui/screens/controllers/SettingsScreenControllerBase.h"
8#include "mc/client/input/KeyboardType.h"
9#include "mc/deps/input/InputBindingMode.h"
10#include "mc/deps/input/InputMode.h"
11#include "mc/options/option_types/OptionID.h"
35 ::ll::TypedStorage<8, 32, ::std::string> mAction;
36 ::ll::TypedStorage<8, 32, ::std::string> mIcon;
37 ::ll::TypedStorage<8, 24, ::std::vector<int>> mKeys;
38 ::ll::TypedStorage<1, 1, bool> mActive;
39 ::ll::TypedStorage<4, 4, int> mLayoutIndex;
55 ::ll::TypedStorage<8, 24, ::std::vector<::ControlsSettingsScreenController::BindingInfo>> mBindings;
56 ::ll::TypedStorage<8, 32, ::std::string> mGridDimensionName;
57 ::ll::TypedStorage<8, 32, ::std::string> mCollectionName;
64 ::ll::TypedStorage<4, 4, ::KeyboardType const> mType;
65 ::ll::TypedStorage<8, 8, ::KeyboardRemappingLayout&> mLayout;
66 ::ll::TypedStorage<8, 88, ::ControlsSettingsScreenController::KeyboardLayoutInfo::BindingInfoCollection>
68 ::ll::TypedStorage<8, 88, ::ControlsSettingsScreenController::KeyboardLayoutInfo::BindingInfoCollection>
70 ::ll::TypedStorage<8, 88, ::ControlsSettingsScreenController::KeyboardLayoutInfo::BindingInfoCollection>
76 KeyboardLayoutInfo& operator=(KeyboardLayoutInfo
const&);
77 KeyboardLayoutInfo(KeyboardLayoutInfo
const&);
84 ::ll::TypedStorage<8, 8, ::GamePadRemappingLayout&> mGamepadLayout;
85 ::ll::TypedStorage<8, 24, ::std::vector<::ControlsSettingsScreenController::BindingInfo>> mGamepadBindings;
86 ::ll::TypedStorage<4, 4, ::KeyboardType> mCurrentKeyboardType;
87 ::ll::TypedStorage<8, 24, ::std::vector<::ControlsSettingsScreenController::KeyboardLayoutInfo>>
88 mKeyboardLayoutInformation;
89 ::ll::TypedStorage<4, 4, int> mSelectedIndex;
90 ::ll::TypedStorage<4, 4, ::InputBindingMode> mActiveBindingMode;
91 ::ll::TypedStorage<8, 8, ::std::vector<::std::string>
const&> mDisabledInputMappings;
92 ::ll::TypedStorage<1, 1, bool> mCustomizeControlsDisableHover;
93 ::ll::TypedStorage<8, 320, ::std::array<::std::string, 10>> mCommandMacroCommands;
98 ControlsSettingsScreenController& operator=(ControlsSettingsScreenController
const&);
99 ControlsSettingsScreenController(ControlsSettingsScreenController
const&);
100 ControlsSettingsScreenController();
105 virtual ~ControlsSettingsScreenController() =
default;
107 virtual void _registerControllerCallbacks();
109 virtual void onTerminate() ;
111 virtual bool canExit() ;
118 ::std::shared_ptr<::MainMenuScreenModel> model,
119 ::std::vector<::std::string>
const& disabledInputMappings
125 ::std::vector<::ControlsSettingsScreenController::BindingInfo>& bindings,
127 uint layoutStartIndex
132 uint layoutStartIndex
136 ::std::vector<::ControlsSettingsScreenController::BindingInfo>& bindings,
142 ::std::vector<::ControlsSettingsScreenController::BindingInfo>& bindings,
184 $ctor(::std::shared_ptr<::MainMenuScreenModel> model, ::std::vector<::std::string>
const& disabledInputMappings);
Definition ControlsSettingsScreenController.h:5
MCAPI::std::string _getIconSprite(::std::vector<::ControlsSettingsScreenController::BindingInfo > &bindings, int collectionIndex, ::RemappingLayout &layout)
static MCAPI bool _canSetCommandMacroCommandAtIndex(int collectionIndex, ::ControlsSettingsScreenController::KeyboardLayoutInfo &layout)
MCAPI bool _mapRawInputToLayout(::RemappingLayout &layout, int keymappingIndex, ::RawInputScreenEventData &rawInputData)
MCAPI void * $ctor(::std::shared_ptr<::MainMenuScreenModel > model, ::std::vector<::std::string > const &disabledInputMappings)
MCAPI void _generateBindingInfo(::std::vector<::ControlsSettingsScreenController::BindingInfo > &bindings, ::RemappingLayout &layout, uint layoutStartIndex)
MCAPI void setUpCallbacksForFloatInputOption(::OptionID optionID, ::InputMode inputMode, ::std::string const &sliderName)
MCAPI::std::string _getBindingText(::std::vector<::ControlsSettingsScreenController::BindingInfo > &bindings, int collectionIndex, ::RemappingLayout &layout)
MCAPI void _setCommandMacroCommandAtIndex(int collectionIndex, ::std::string const command)
MCAPI void _generateKeyboardBindingInfo(::ControlsSettingsScreenController::KeyboardLayoutInfo &keyboardInfo, uint layoutStartIndex)
MCAPI::ui::ViewRequest _resetAllBindingsToDefault(::InputMode inputMode)
MCAPI void $onTerminate()
MCAPI ControlsSettingsScreenController(::std::shared_ptr<::MainMenuScreenModel > model, ::std::vector<::std::string > const &disabledInputMappings)
static MCAPI ::std::function<::std::string(::std::string const &, float, bool)> & floatSliderLabellerAsPercentInt()
static MCAPI ::std::function<::std::string(::std::string const &, float, bool)> & floatSliderLabellerAsInt()
MCAPI int _getIndexAdjustmentOffsetFromCollectionGroup(::std::string const &collectionGroup, int gridIndex)
MCAPI bool _commandMacrosAllowed() const
MCAPI void $_registerControllerCallbacks()
MCAPI void setUpCallbacksForBooleanInputOption(::OptionID optionID, ::InputMode inputMode, ::std::string const &toggleName)
Definition GamePadRemappingLayout.h:5
Definition KeyboardRemappingLayout.h:5
Definition MainMenuScreenModel.h:5
Definition RemappingLayout.h:5
Definition SettingsScreenControllerBase.h:5
Definition ControlsSettingsScreenController.h:14
Definition ControlsSettingsScreenController.h:24
Definition ControlsSettingsScreenController.h:16