summaryrefslogtreecommitdiffstats
path: root/otherlibs/labltk/builtin/builtini_GetPixel.ml
diff options
context:
space:
mode:
Diffstat (limited to 'otherlibs/labltk/builtin/builtini_GetPixel.ml')
-rw-r--r--otherlibs/labltk/builtin/builtini_GetPixel.ml18
1 files changed, 18 insertions, 0 deletions
diff --git a/otherlibs/labltk/builtin/builtini_GetPixel.ml b/otherlibs/labltk/builtin/builtini_GetPixel.ml
new file mode 100644
index 000000000..e47048aec
--- /dev/null
+++ b/otherlibs/labltk/builtin/builtini_GetPixel.ml
@@ -0,0 +1,18 @@
+let cCAMLtoTKunits : units -> tkArgs = function
+ `Pix (foo) -> TkToken (string_of_int foo)
+ | `Mm (foo) -> TkToken(string_of_float foo^"m")
+ | `In (foo) -> TkToken(string_of_float foo^"i")
+ | `Pt (foo) -> TkToken(string_of_float foo^"p")
+ | `Cm (foo) -> TkToken(string_of_float foo^"c")
+
+
+let cTKtoCAMLunits str =
+ let len = String.length str in
+ let num_part str = String.sub str pos:0 len:(len - 1) in
+ match String.get str (pred len) with
+ 'c' -> `Cm (float_of_string (num_part str))
+ | 'i' -> `In (float_of_string (num_part str))
+ | 'm' -> `Mm (float_of_string (num_part str))
+ | 'p' -> `Pt (float_of_string (num_part str))
+ | _ -> `Pix(int_of_string str)
+