src/stub/world-config.ss
#lang scheme/base

(define-struct world-config () #:prefab)

(define-struct (world-config:on-key world-config) (f ef) #:prefab)
(define-struct (world-config:on-tick world-config) (delay f ef) #:prefab)
(define-struct (world-config:initial-effect world-config) (e) #:prefab)
(define-struct (world-config:on-location-change world-config) (f ef) #:prefab)
(define-struct (world-config:on-tilt world-config) (f ef) #:prefab)
(define-struct (world-config:on-acceleration world-config) (f ef) #:prefab)
(define-struct (world-config:on-shake world-config) (f ef) #:prefab)
(define-struct (world-config:on-redraw world-config) (f) #:prefab)
(define-struct (world-config:on-draw world-config) (f css-f) #:prefab)
(define-struct (world-config:stop-when world-config) (f) #:prefab)

(define (initial-effect e)
  (make-world-config:initial-effect e))

(define (on-key f)
  (make-world-config:on-key f (lambda (w k) '())))

(define (on-key! f ef)
  (make-world-config:on-key f ef))

(define (on-tick delay f)
  (make-world-config:on-tick delay f (lambda (w) '())))

(define (on-tick! delay f ef)
  (make-world-config:on-tick delay f ef))

(define (on-location-change f)
  (make-world-config:on-location-change f (lambda (w lat long) '())))

(define (on-location-change! f ef)
  (make-world-config:on-location-change f ef))

(define (on-tilt f)
  (make-world-config:on-tilt f (lambda (w azimuth pitch roll) '())))

(define (on-tilt! f ef)
  (make-world-config:on-tilt f ef))

(define (on-acceleration f)
  (make-world-config:on-acceleration f (lambda (w x y z) '())))

(define (on-acceleration! f ef)
  (make-world-config:on-acceleration f ef))

(define (on-shake f)
  (make-world-config:on-shake f (lambda (w) '())))

(define (on-shake! f ef)
  (make-world-config:on-shake f ef))

(define (on-redraw f)
  (make-world-config:on-redraw f))

(define (on-draw f css-f)
  (make-world-config:on-draw f css-f))

(define (stop-when f)
  (make-world-config:stop-when f))


(provide (all-defined-out))