= 768" x-on:close-sidebar="sidebar=window.innerWidth >= 768 && true">
Legend:
Library
Module
Module type
Parameter
Class
Class type
Library
Module
Module type
Parameter
Class
Class type
Notty based gfx API. We need to use an intermediate in memory representation for notty.
include module type of Hardcaml_waveterm.Draw.In_memory
with type style = Hardcaml_waveterm.Draw.In_memory.style
In memory based API with no external requirements
In memory based API with no external requirements
type point = Hardcaml_waveterm.Import.int * Hardcaml_waveterm.Draw.Style.t
include Hardcaml_waveterm.Draw.S
with type ctx =
point Hardcaml_waveterm.Import.array Hardcaml_waveterm.Import.array
and type style = Hardcaml_waveterm.Draw.Style.t
with type style = Hardcaml_waveterm.Draw.In_memory.style
drawing context
type style = Hardcaml_waveterm.Draw.In_memory.style
underlying style type
val rows : ctx -> Hardcaml_waveterm.Import.int
val cols : ctx -> Hardcaml_waveterm.Import.int
val get_bounds : ctx -> Hardcaml_waveterm.Draw.rect
get context size
val get_style : Hardcaml_waveterm.Draw.Style.t -> style
convert our style info to underlying style
val clear : ctx -> Hardcaml_waveterm.Import.unit
clear display
val fill :
ctx:ctx ->
style:style ->
bounds:Hardcaml_waveterm.Draw.rect ->
Hardcaml_waveterm.Import.char ->
Hardcaml_waveterm.Import.unit
fill bounds
with char
given style
val draw_int :
ctx:ctx ->
style:style ->
bounds:Hardcaml_waveterm.Draw.rect ->
r:Hardcaml_waveterm.Import.int ->
c:Hardcaml_waveterm.Import.int ->
Hardcaml_waveterm.Import.int ->
Hardcaml_waveterm.Import.unit
draw int (representing unicode value)
val draw_piece :
ctx:ctx ->
style:style ->
bounds:Hardcaml_waveterm.Draw.rect ->
r:Hardcaml_waveterm.Import.int ->
c:Hardcaml_waveterm.Import.int ->
Hardcaml_waveterm.Draw.piece ->
Hardcaml_waveterm.Import.unit
draw piece
val draw_char :
ctx:ctx ->
style:style ->
bounds:Hardcaml_waveterm.Draw.rect ->
r:Hardcaml_waveterm.Import.int ->
c:Hardcaml_waveterm.Import.int ->
Hardcaml_waveterm.Import.char ->
Hardcaml_waveterm.Import.unit
draw char
val draw_string :
ctx:ctx ->
style:style ->
bounds:Hardcaml_waveterm.Draw.rect ->
r:Hardcaml_waveterm.Import.int ->
c:Hardcaml_waveterm.Import.int ->
Hardcaml_waveterm.Import.string ->
Hardcaml_waveterm.Import.unit
draw string (nothing fancy - horizontal, no breaks)
val draw_box :
ctx:ctx ->
style:style ->
bounds:Hardcaml_waveterm.Draw.rect ->
Hardcaml_waveterm.Import.string ->
Hardcaml_waveterm.Import.unit
draw box outline with label
val get :
ctx:ctx ->
bounds:Hardcaml_waveterm.Draw.rect ->
r:Hardcaml_waveterm.Import.int ->
c:Hardcaml_waveterm.Import.int ->
Hardcaml_waveterm.Import.int * Hardcaml_waveterm.Draw.Style.t
get value and style at point
val inv :
ctx:ctx ->
bounds:Hardcaml_waveterm.Draw.rect ->
r:Hardcaml_waveterm.Import.int ->
c:Hardcaml_waveterm.Import.int ->
Hardcaml_waveterm.Import.unit
invert fg and bg at point
val bold :
ctx:ctx ->
bounds:Hardcaml_waveterm.Draw.rect ->
r:Hardcaml_waveterm.Import.int ->
c:Hardcaml_waveterm.Import.int ->
Hardcaml_waveterm.Import.unit
set bold on point
val init :
rows:Hardcaml_waveterm.Import.int ->
cols:Hardcaml_waveterm.Import.int ->
ctx