mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-07-08 17:13:57 -07:00
feat(command-zone): add graphics implementation with integration tests
Implement CommandZone - the main Qt graphics class for rendering and interacting with command zones. This commit brings together all previous components: - Uses CommandZoneState for visibility management - Uses CommandZoneLogic for card data handling - Uses ZoneToggleButton for visibility controls - Uses CommanderTaxCounter for tax display - Uses z_values.h for proper visual layering Zone modifications for command zone support: - SelectZone: add command zone to zone selection - StackZone: support command zone in stack operations - TableZone: command zone positioning integration - ViewZoneWidget: command zone viewing support Integration tests verify: - Counter parenting behavior - Zone state coordination - Full graphics stack interaction
This commit is contained in:
parent
78db49a9b3
commit
6e83d64622
12 changed files with 1570 additions and 8 deletions
22
tests/command_zone/command_zone_test_common.h
Normal file
22
tests/command_zone/command_zone_test_common.h
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
/**
|
||||
* @file command_zone_test_common.h
|
||||
* @brief Shared types and utilities for command zone unit tests.
|
||||
*
|
||||
* Provides access to production CommandZoneType and ZoneVisibility enums
|
||||
* without pulling in full Qt graphics dependencies. Tests remain isolated
|
||||
* while using the canonical enum definitions.
|
||||
*/
|
||||
|
||||
#ifndef COMMAND_ZONE_TEST_COMMON_H
|
||||
#define COMMAND_ZONE_TEST_COMMON_H
|
||||
|
||||
#include "cockatrice/src/game/zones/command_zone_types.h"
|
||||
|
||||
// Re-export the minimized height ratio using the canonical constant name
|
||||
// that tests were already using (ZoneSizes vs CommandZoneConstants)
|
||||
namespace ZoneSizes
|
||||
{
|
||||
using namespace CommandZoneConstants;
|
||||
}
|
||||
|
||||
#endif // COMMAND_ZONE_TEST_COMMON_H
|
||||
Loading…
Add table
Add a link
Reference in a new issue