From 550c94d649b9b8febe3d42a165277b8cfb201c26 Mon Sep 17 00:00:00 2001 From: "Michael D. Lowis" Date: Wed, 24 Jan 2018 08:36:08 -0500 Subject: [PATCH] fixed logic for picking character on a given line --- lib/view.ml | 30 ++++++++---------------------- 1 file changed, 8 insertions(+), 22 deletions(-) diff --git a/lib/view.ml b/lib/view.ml index 9a88695..e4bc0f2 100644 --- a/lib/view.ml +++ b/lib/view.ml @@ -24,31 +24,17 @@ let make width height path = let get_col_offset buf off w x = let csr = Draw.Cursor.make (w,0) 0 0 in let off = ref off in - Printf.printf "off: %d\n" !off; let measure_rune c = - Draw.Cursor.next_glyph csr c; - let clicked = (csr.x > x) in - (if not clicked then off := !off + 1); - (not clicked && (csr.x > 0)) - -(* - Printf.printf "%d %d\n" x csr.x; - if csr.x < x then - (off := !off + 1; csr.x < w) - else - false -*) -(* - if csr.x > x then - (off := (!off + 1); false) - else - ((off := !off + 1; csr.x < w) -*) + if c == 0xA || c == 0xD then false + else begin + Draw.Cursor.next_glyph csr c; + let clicked = (csr.x > x) in + (if not clicked then off := !off + 1); + (not clicked && (csr.x > 0)) + end in Buf.iter measure_rune buf !off; - Printf.printf "off: %d\n" !off; - print_endline ""; - (!off) + !off let get_at view x y = -- 2.51.0