summaryrefslogtreecommitdiffstats
path: root/otherlibs/labltk/builtin/builtini_ScrollValue.ml
diff options
context:
space:
mode:
Diffstat (limited to 'otherlibs/labltk/builtin/builtini_ScrollValue.ml')
-rw-r--r--otherlibs/labltk/builtin/builtini_ScrollValue.ml17
1 files changed, 17 insertions, 0 deletions
diff --git a/otherlibs/labltk/builtin/builtini_ScrollValue.ml b/otherlibs/labltk/builtin/builtini_ScrollValue.ml
new file mode 100644
index 000000000..8327ab6f7
--- /dev/null
+++ b/otherlibs/labltk/builtin/builtini_ScrollValue.ml
@@ -0,0 +1,17 @@
+let cCAMLtoTKscrollValue : scrollValue -> tkArgs = function
+ `Page v1 ->
+ TkTokenList [TkToken"scroll"; TkToken (string_of_int v1); TkToken"pages"]
+ | `Unit v1 ->
+ TkTokenList [TkToken"scroll"; TkToken (string_of_int v1); TkToken"units"]
+ | `Moveto v1 ->
+ TkTokenList [TkToken"moveto"; TkToken (string_of_float v1)]
+
+(* str l -> scrllv -> str l *)
+let cTKtoCAMLscrollValue = function
+ "scroll"::n::"pages"::l ->
+ `Page (int_of_string n), l
+ | "scroll"::n::"units"::l ->
+ `Unit (int_of_string n), l
+ | "moveto"::f::l ->
+ `Moveto (float_of_string f), l
+ | _ -> raise (Invalid_argument "TKtoCAMLscrollValue")