v0.1.0: Layout primitives + composable API — 23 new tests
Layout primitives (org/layout-primitives.org, ~290 lines): - CLOS layout-node class wrapping YGNodeRef with tg:finalize for GC cleanup - 12 setter functions with keyword→integer enum translation - layout-calculate: runs Yoga layout, returns root - 14 tests: dimension, direction, flex-grow, align, justify, padding, margin, absolute position, wrap, gap, nested layout Composable API (org/layout-composable.org, ~200 lines): - vbox/hbox macros: declarative container creation with style props - overlay macro: absolute-positioned child over relative base - spacer function: flex-grow filler - make-props-list helper: extracts plist minus :children - 6 tests: vbox stacking, hbox layout, spacer flex, overlay position, align/justify via vbox, padding offset GREEN: 29/29 pass (59 assertions) - yoga-ffi: 9 tests (22 assertions) - layout-primitives: 14 tests (24 assertions) - layout-composable: 6 tests (13 assertions)
This commit is contained in:
@@ -4,6 +4,8 @@
|
||||
:version "0.1.0"
|
||||
:license "AGPLv3"
|
||||
:description "Reusable Common Lisp Terminal UI Framework"
|
||||
:depends-on (:cffi :croatoan)
|
||||
:depends-on (:cffi :croatoan :trivial-garbage)
|
||||
:serial t
|
||||
:components ((:file "lisp/yoga-ffi")))
|
||||
:components ((:file "lisp/yoga-ffi")
|
||||
(:file "lisp/layout-primitives")
|
||||
(:file "lisp/layout-composable")))
|
||||
|
||||
Reference in New Issue
Block a user