JustAnotherDnDGame 0.1.0
Jeu de rôle tactique au d20, vue de dessus, en C++/Qt
Loading...
Searching...
No Matches
GamepadBindings.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: 2026 Valentin Eloy
2// SPDX-License-Identifier: GPL-3.0-or-later
3
4#pragma once
5
6#include <array>
7#include <cstddef>
8#include <filesystem>
9
12
18
19namespace hmi {
20
32public:
36
38 [[nodiscard]] GamepadButton button(GameAction action) const noexcept;
39
46 void setKey(GameAction action, GamepadButton newButton) noexcept;
47
49 void resetToDefaults() noexcept;
50
52 [[nodiscard]] static GamepadButton defaultButton(GameAction action) noexcept;
53
59 bool save(const std::filesystem::path& path) const;
60
66 [[nodiscard]] static GamepadBindings load(const std::filesystem::path& path);
67
68private:
69 std::array<GamepadButton, GAME_ACTION_COUNT> _buttons{};
70};
71
72} // namespace hmi
Association remappable action de jeu -> touche clavier, avec persistance (EX-CTRL-012).
Bouton manette logique, indépendant de toute action de jeu ou touche clavier.
GamepadBindings()
Construit avec les valeurs par défaut (miroir du câblage historique de Window::pollGamepad : D-pad/st...
Definition GamepadBindings.cpp:126
void setKey(GameAction action, GamepadButton newButton) noexcept
Lie action à newButton.
Definition GamepadBindings.cpp:136
GamepadButton button(GameAction action) const noexcept
Definition GamepadBindings.cpp:130
static GamepadButton defaultButton(GameAction action) noexcept
Definition GamepadBindings.cpp:106
void resetToDefaults() noexcept
Restaure les sept actions à leurs boutons par défaut (defaultButton).
Definition GamepadBindings.cpp:147
std::array< GamepadButton, GAME_ACTION_COUNT > _buttons
Definition GamepadBindings.h:69
bool save(const std::filesystem::path &path) const
Sauvegarde dans la section "manette" de path, en préservant les sections "jeu"/"editeur" déjà présent...
Definition GamepadBindings.cpp:155
static GamepadBindings load(const std::filesystem::path &path)
Charge la section "manette" de path.
Definition GamepadBindings.cpp:186
Definition AudioEngine.cpp:15
GameAction
Action de jeu logique, remappable indépendamment de la touche physique qui la déclenche.
Definition GameKeyBindings.h:28
GamepadButton
Bouton (ou direction) manette remappable à une action de jeu (EX-CTRL-002, LOT-30).
Definition GamepadButton.h:22