aboutsummaryrefslogtreecommitdiff
path: root/guile/starlet/snap-transition.scm
diff options
context:
space:
mode:
Diffstat (limited to 'guile/starlet/snap-transition.scm')
-rw-r--r--guile/starlet/snap-transition.scm32
1 files changed, 15 insertions, 17 deletions
diff --git a/guile/starlet/snap-transition.scm b/guile/starlet/snap-transition.scm
index e658b73..46993cd 100644
--- a/guile/starlet/snap-transition.scm
+++ b/guile/starlet/snap-transition.scm
@@ -1,7 +1,7 @@
;;
;; starlet/snap-transition.scm
;;
-;; Copyright © 2021 Thomas White <taw@bitwiz.org.uk>
+;; Copyright © 2021-2023 Thomas White <taw@bitwiz.org.uk>
;;
;; This file is part of Starlet.
;;
@@ -19,11 +19,8 @@
;; along with this program. If not, see <http://www.gnu.org/licenses/>.
;;
(define-module (starlet snap-transition)
- #:use-module (oop goops)
- #:use-module (starlet playback)
+ #:use-module (starlet cue-part)
#:use-module (starlet state)
- #:use-module (starlet fixture)
- #:use-module (starlet transition-effect)
#:use-module (starlet attributes)
#:export (snap))
@@ -39,15 +36,16 @@
out-state))
-(define (snap)
- (make-transition
- (incoming-state current-state clock)
- (let ((overlay-state (blank-everything current-state)))
- (state-for-each
- (lambda (fix attr val)
- (set-in-state! overlay-state
- fix
- attr
- (lambda () val)))
- incoming-state)
- (values overlay-state 0))))
+(define (snap to-state)
+ (cue-part
+ to-state
+ (lambda (incoming-state current-state clock)
+ (let ((overlay-state (blank-everything current-state)))
+ (state-for-each
+ (lambda (fix attr val)
+ (set-in-state! overlay-state
+ fix
+ attr
+ (lambda () val)))
+ incoming-state)
+ (values overlay-state 0)))))