JustAnotherDnDGame 0.1.0
Jeu de rôle tactique au d20, vue de dessus, en C++/Qt
Loading...
Searching...
No Matches
LayerVisibility.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
10
15
16namespace hmi {
17
20inline constexpr std::size_t RENDER_LAYER_COUNT =
21 static_cast<std::size_t>(RenderLayer::EditorOverlay) + 1;
22
49public:
51 [[nodiscard]] bool visible(RenderLayer layer) const noexcept {
52 return _visible[static_cast<std::size_t>(layer)];
53 }
54
56 void setVisible(RenderLayer layer, bool isVisible) noexcept {
57 _visible[static_cast<std::size_t>(layer)] = isVisible;
58 }
59
61 void showAll() noexcept {
62 _visible.fill(true);
63 }
64
65private:
66 std::array<bool, RENDER_LAYER_COUNT> _visible = [] {
67 std::array<bool, RENDER_LAYER_COUNT> all{};
68 all.fill(true);
69 return all;
70 }();
71};
72
73} // namespace hmi
Ordonnancement de calques unique et explicite du rendu (EX-REN-014).
Jeu de visibilités par calque, pour le mode d'inspection « définition des textures » (LOT-51).
Definition LayerVisibility.h:48
void showAll() noexcept
Rétablit la visibilité de tous les calques (action « tout afficher », TACHE-03).
Definition LayerVisibility.h:61
void setVisible(RenderLayer layer, bool isVisible) noexcept
Affiche ou masque layer.
Definition LayerVisibility.h:56
std::array< bool, RENDER_LAYER_COUNT > _visible
Definition LayerVisibility.h:66
bool visible(RenderLayer layer) const noexcept
Definition LayerVisibility.h:51
Definition AudioEngine.cpp:15
constexpr std::size_t RENDER_LAYER_COUNT
Nombre de valeurs de hmi::RenderLayer — dimensionne un tableau indexé par la valeur plutôt que par un...
Definition LayerVisibility.h:20
RenderLayer
Calques de dessin, du plus arrière au plus avant (EX-REN-014, EX-DEC-002).
Definition RenderLayer.h:42
@ EditorOverlay
Aides d'édition : grille de repère, liens de mécanismes, aperçu de sélection.
Definition RenderLayer.h:64