Cockatrice 2026-03-05-Development-2.11.0-beta.54
A virtual tabletop for multiplayer card games
Loading...
Searching...
No Matches
z_value_layer_manager.h
Go to the documentation of this file.
1
47
48#ifndef Z_VALUE_LAYER_MANAGER_H
49#define Z_VALUE_LAYER_MANAGER_H
50
51#include <QtGlobal>
52
57namespace ZValueLayerManager
58{
59
67enum class Layer
68{
75};
76
86constexpr qreal CARD_Z_VALUE_MAX = 40000000.0;
87
94constexpr qreal OVERLAY_BASE = 2000000000.0;
95
105[[nodiscard]] constexpr bool isValidCardZValue(qreal zValue)
106{
107 return zValue >= 1.0 && zValue <= CARD_Z_VALUE_MAX;
108}
109
118[[nodiscard]] constexpr bool isOverlayZValue(qreal zValue)
119{
120 return zValue >= OVERLAY_BASE;
121}
122
129[[nodiscard]] constexpr qreal overlayZValue(qreal offset)
130{
131 return OVERLAY_BASE + offset;
132}
133
134} // namespace ZValueLayerManager
135
136#endif // Z_VALUE_LAYER_MANAGER_H
Utilities for Z-value validation and layer management.
constexpr bool isOverlayZValue(qreal zValue)
Validates that a Z-value is in the overlay layer.
Definition z_value_layer_manager.h:118
constexpr qreal CARD_Z_VALUE_MAX
Maximum Z-value a card can have on the table zone.
Definition z_value_layer_manager.h:86
constexpr qreal OVERLAY_BASE
Base Z-value for overlay elements.
Definition z_value_layer_manager.h:94
constexpr qreal overlayZValue(qreal offset)
Returns the Z-value for a specific overlay element.
Definition z_value_layer_manager.h:129
Layer
Semantic layer identifiers for Z-value allocation.
Definition z_value_layer_manager.h:68
@ Card
Cards rendered in zones (uses sequential Z-values)
Definition z_value_layer_manager.h:72
@ Overlay
Temporary UI elements like hovered cards and drag items.
Definition z_value_layer_manager.h:74
@ Zone
Zone-level elements like backgrounds and containers.
Definition z_value_layer_manager.h:70
constexpr bool isValidCardZValue(qreal zValue)
Validates that a Z-value is within the valid card range.
Definition z_value_layer_manager.h:105