aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/interactive/frameset.lisp
diff options
context:
space:
mode:
authorcolin <colin@cicadas.surf>2024-12-14 08:36:23 -0800
committercolin <colin@cicadas.surf>2024-12-14 08:36:23 -0800
commit3a2217263d581be9a7f629b10d75aa8e3d581890 (patch)
tree23f5f0a5449a06473aba2ec7914a3c2193823a10 /src/interactive/frameset.lisp
parent03cdbb6a15e130a012377ab8d54074b6864e3480 (diff)
parent8a51ba81c7df6b0b6dab7cf4b35b5ca084b653ba (diff)
Merge branch 'refactor-with-def'
Diffstat (limited to 'src/interactive/frameset.lisp')
-rw-r--r--src/interactive/frameset.lisp20
1 files changed, 14 insertions, 6 deletions
diff --git a/src/interactive/frameset.lisp b/src/interactive/frameset.lisp
index c866d04..65762c7 100644
--- a/src/interactive/frameset.lisp
+++ b/src/interactive/frameset.lisp
@@ -2,12 +2,20 @@
(in-package #:wheelwork)
-(defclass/std frameset (unit interactive)
- ((frames :with :doc "an array of renderable frames")
- (sequence :with :doc "an array of indices into frames")
- (runningp :std t)
- (wait-time :std (/ 1000.0 2) :with :doc "milliseconds between frames")
- (count index next-time :with :std 0 :a)))
+;; TODO: be more specific about vector types
+(def:class frameset (unit interactive)
+ ((frames "Vector of renderable frames.")
+ :prefix :type vector)
+ ((sequence "Vector of indicies into the frame controlling order of display")
+ :prefix :type vector)
+ ((runningp "Whether this set is animating by cycling through frames")
+ :type boolean :initform t)
+ ((wait-time "Milliseconds between frames")
+ :prefix :initform (/ 1000.0 2))
+ ((count "")
+ (index "")
+ (next-time "")
+ :prefix :initform 0))
(defmethod (setf fps) (newval (fs frameset))
(setf (frameset-wait-time fs) (/ 1000.0 newval)))