package hardcaml_waveterm
A terminal based digital waveform viewer for Hardcaml
Install
Dune Dependency
Authors
Maintainers
Sources
hardcaml_waveterm-v0.12.0.tar.gz
sha256=c06a13a205198549f197733c3a736f026a03ed811a02dbc8c893bbeaf63a2e99
md5=268e7d1bbfe62fe49bc7b77ac392afa2
doc/hardcaml_waveterm.interactive/Hardcaml_waveterm_interactive/Draw_notty/index.html
Module Hardcaml_waveterm_interactive.Draw_notty
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
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
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>