package tiny_appkits
Module Block_layoutSource
Source
type piece = | Body of {path : path;spec : Scratch_blocks.spec;x : float;y : float;w : float;h : float;mouths : (float * float) list;
}| Label of {}| Slot of {path : path;part : Scratch_blocks.part;x : float;y : float;w : float;h : float;text : string;
}
Source
val layout :
measure:(string -> float) ->
Scratch_blocks.script list ->
piece list * (target * (float * float)) listSource
val snap :
measure:(string -> float) ->
Scratch_blocks.script list ->
Scratch_blocks.block list ->
at:(float * float) ->
target option