GUI library for ocaml, with animations, based on SDL2
Library bogue
Module Bogue . Avar
Dependency graph
type 'a t
type callback = unit -> unit

Avar creation

val create : ?duration:Time.t -> ?init:callback -> ?ending:callback -> ?finished:bool -> ?update:( 'a t -> float -> 'a ) -> 'a -> 'a t

Generic Avar creation. If finished = true, the var never gets further updated, ie behaves like a normal variable. Otherwise, the update parameter is compulsory.

  • parameter update

    is a function such that update v s : 'a should give the value of the Avar v at the time s. The meaning of the time s is described in progress.

val fromto : ?duration:int -> ?ending:callback -> int -> int -> int t

fromto x1 x2 creates a integer Avar.t with initial value x1 and, as time elapses, moves continuously to x2, with a final slowdown.

val var : 'a -> 'a t

Create an Avar which behaves like a normal Var (no animation).

Avar information

val get : 'a t -> 'a

Start the animation (if necessary) and compute the current value of the variable.

val progress : 'a t -> float

progress v is a float in [0,1] giving the percentage of the animation when the last v.value was computed. In case of infinite animation, this is just the elapsed Time (in ms).


type direction =
| No
| Left
| Right
| Top
| Bottom
| TopLeft
| TopRight
| BottomLeft
| BottomRight
| Random