Cockatrice 2026-06-01-Development-3.1.0-beta.3
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{
72};
73
83constexpr qreal CARD_Z_VALUE_MAX = 40000000.0;
84
91constexpr qreal OVERLAY_BASE = 2000000000.0;
92
102[[nodiscard]] constexpr bool isValidCardZValue(qreal zValue)
103{
104 return zValue >= 1.0 && zValue <= CARD_Z_VALUE_MAX;
105}
106
115[[nodiscard]] constexpr bool isOverlayZValue(qreal zValue)
116{
117 return zValue >= OVERLAY_BASE;
118}
119
126[[nodiscard]] constexpr qreal overlayZValue(qreal offset)
127{
128 return OVERLAY_BASE + offset;
129}
130
131} // namespace ZValueLayerManager
132
133#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:115
constexpr qreal CARD_Z_VALUE_MAX
Maximum Z-value a card can have on the table zone.
Definition z_value_layer_manager.h:83
constexpr qreal OVERLAY_BASE
Base Z-value for overlay elements.
Definition z_value_layer_manager.h:91
constexpr qreal overlayZValue(qreal offset)
Returns the Z-value for a specific overlay element.
Definition z_value_layer_manager.h:126
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:70
@ Overlay
Temporary UI elements like hovered cards and drag items.
Definition z_value_layer_manager.h:71
@ Zone
Zone-level elements like backgrounds and containers.
Definition z_value_layer_manager.h:69
constexpr bool isValidCardZValue(qreal zValue)
Validates that a Z-value is within the valid card range.
Definition z_value_layer_manager.h:102