From 2a648c54ddddf2dae55fcfc80546354d8c140593 Mon Sep 17 00:00:00 2001 From: David Herrmann Date: Sat, 14 Jul 2012 13:36:46 +0200 Subject: [PATCH] console: allow retrieving cursor state This adds two functions to retrieve x/y positions of the cursor. This can be used to save and restore cursor positions. Signed-off-by: David Herrmann --- src/console.c | 16 ++++++++++++++++ src/console.h | 3 +++ 2 files changed, 19 insertions(+) diff --git a/src/console.c b/src/console.c index da1dc7e..3e4fa15 100644 --- a/src/console.c +++ b/src/console.c @@ -632,6 +632,22 @@ unsigned int kmscon_console_get_flags(struct kmscon_console *con) return con->flags; } +unsigned int kmscon_console_get_cursor_x(struct kmscon_console *con) +{ + if (!con) + return 0; + + return con->cursor_x; +} + +unsigned int kmscon_console_get_cursor_y(struct kmscon_console *con) +{ + if (!con) + return 0; + + return con->cursor_y; +} + void kmscon_console_draw(struct kmscon_console *con, struct font_screen *fscr) { unsigned int cur_x, cur_y; diff --git a/src/console.h b/src/console.h index b1befb1..b6ab8f5 100644 --- a/src/console.h +++ b/src/console.h @@ -69,6 +69,9 @@ void kmscon_console_set_flags(struct kmscon_console *con, unsigned int flags); void kmscon_console_reset_flags(struct kmscon_console *con, unsigned int flags); unsigned int kmscon_console_get_flags(struct kmscon_console *con); +unsigned int kmscon_console_get_cursor_x(struct kmscon_console *con); +unsigned int kmscon_console_get_cursor_y(struct kmscon_console *con); + void kmscon_console_draw(struct kmscon_console *con, struct font_screen *fscr); void kmscon_console_write(struct kmscon_console *con, kmscon_symbol_t ch,