aboutsummaryrefslogtreecommitdiff
path: root/window.h
diff options
context:
space:
mode:
authorMarc André Tanner <mat@brain-dump.org>2014-09-16 17:28:32 +0200
committerMarc André Tanner <mat@brain-dump.org>2014-09-16 17:28:32 +0200
commit9a4f43dec861ee8aa398adf901fd4d11d7a24dcd (patch)
treef5fcc0dba4fa4da90aeea8b2d43c37568f1cf09b /window.h
parent9c4888a2015407002637d5dd2c9685cb5bf48ed3 (diff)
downloadvis-9a4f43dec861ee8aa398adf901fd4d11d7a24dcd.tar.gz
vis-9a4f43dec861ee8aa398adf901fd4d11d7a24dcd.tar.xz
Clean up cursor handling in window.[ch]
Diffstat (limited to 'window.h')
-rw-r--r--window.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/window.h b/window.h
index d575341..602c962 100644
--- a/window.h
+++ b/window.h
@@ -33,6 +33,14 @@ size_t window_char_next(Win*);
size_t window_char_prev(Win*);
size_t window_line_down(Win*);
size_t window_line_up(Win*);
+/* move window content up/down, but keep cursor position unchanged unless it is
+ * on a now invisible line in which case we try to preserve the column position */
+size_t window_slide_up(Win*, int lines);
+size_t window_slide_down(Win*, int lines);
+/* scroll window contents up/down by lines, place the cursor on the newly
+ * visible line, try to preserve the column position */
+size_t window_scroll_up(Win*, int lines);
+size_t window_scroll_down(Win*, int lines);
/* place the cursor at the start ot the n-th window line, counting from 1 */
size_t window_line_goto(Win*, int n);