Cockatrice/cockatrice
DawnFire42 1a62f82aee
Refactor vertical card stacking with clip containers for variable zone sizes (#6774)
* Refactor vertical card stacking with opt-in overflow for variable zone sizes

Introduce a shared vertical stacking layout system in SelectZone that replaces the old divideCardSpaceInZone() free function with structured layout computation (StackLayoutParams, ZoneLayout, computeZoneLayout).

By default, cards are guaranteed to fit within zone bounds (no overflow). Zones can opt-in to bottom overflow via allowBottomOverflow flag, with sqrt-scaled compression for smooth visual transitions. A clip container mechanism is available for future zones that need visual clipping.

  Key changes:
  - SelectZone: new layout engine with allowBottomOverflow opt-in; clip container infrastructure for future zones needing visual clipping
  - StackZone: uses new layout (no overflow); adds setHeight() for dynamic resizing capabilities
  - HandZone: vertical layout delegates to SelectZone's shared stacking
  - AbstractCardItem: preserves hover z-value during layout passes; invalidates scene rect on hover exit for proper sibling repainting
  - CardZone::onCardAdded made virtual for clip container reparenting
  - Zone widths updated to CardDimensions::WIDTH_F * 1.5

* Changed anonymous namespace for static and braced functions

* CI tests re-run
2026-05-10 19:10:14 -07:00
..
resources [Search] Fix OR usage in examples (#6628) 2026-02-24 01:34:23 +01:00
sounds Add cmake format (#4618) 2022-05-08 21:22:43 +02:00
src Refactor vertical card stacking with clip containers for variable zone sizes (#6774) 2026-05-10 19:10:14 -07:00
themes Add cmake format (#4618) 2022-05-08 21:22:43 +02:00
translations Updates for project Cockatrice and language de (#6833) 2026-04-27 21:16:10 +02:00
.qdevelop icon_draw and icon_untap added, icon_general and icon_messages modified 2009-07-31 13:37:16 +02:00
CMakeLists.txt Pull client networking out of window_main and into remote_connection_controller (#6796) 2026-05-09 12:50:53 +02:00
cockatrice.desktop Updated Spanish translation 2011-07-16 11:38:57 +02:00
cockatrice.qrc [CardDatabaseDisplay] Reduce width by using icons (#6603) 2026-02-22 20:54:58 -08:00
cockatrice.rc Included uninstaller for Windows version 2010-09-17 15:26:07 +02:00
cockatrice_en@source.ts Update translation source strings (#6762) 2026-04-01 05:49:17 +02:00