Rename: cl-tty avoids naming collision with Quicklisp's cl-tui (naryl/cl-tui, a cl-charms-based ncurses library). Our project is pure escape-sequence CL. v0.9.0 adds: - Dialog base class: modal overlay with backdrop, centered panel, size variants (:small/:medium/:large), stack-based management - Dialog subclasses: alert, confirm, select-dialog, prompt-dialog - Toast notifications: transient, top-right corner, auto-dismiss, colored variants (info/success/warning/error) - 78 tests total, 100% passing ASDF: read-time package references (+fiveam:+) replaced with find-symbol so .asd loads without FiveAM pre-loaded
15 lines
442 B
Common Lisp
15 lines
442 B
Common Lisp
(in-package :cl-tty.box)
|
|
|
|
;; ── Dirty Tracking ─────────────────────────────────────────────
|
|
|
|
(defclass dirty-mixin ()
|
|
((dirty :initform t :accessor dirty-p)))
|
|
|
|
(defgeneric mark-clean (component)
|
|
(:method ((c dirty-mixin))
|
|
(setf (dirty-p c) nil)))
|
|
|
|
(defgeneric mark-dirty (component)
|
|
(:method ((c dirty-mixin))
|
|
(setf (dirty-p c) t)))
|