From 4721ec22a5e174ffacce53d97972fdc10df1be54 Mon Sep 17 00:00:00 2001 From: lucic71 Date: Tue, 28 Jun 2022 19:40:51 +0300 Subject: [PATCH] Added screen_delete_line routine --- kernel/include/kernel/screen.h | 10 ++++++++++ kernel/screen/src/screen.c | 16 ++++++++++++++++ 2 files changed, 26 insertions(+) diff --git a/kernel/include/kernel/screen.h b/kernel/include/kernel/screen.h index 10ef1b7..d1e2a60 100644 --- a/kernel/include/kernel/screen.h +++ b/kernel/include/kernel/screen.h @@ -32,4 +32,14 @@ size_t screen_write(char *buf, size_t len); void screen_delete(void); +/* + * screen_delete_line: + * Deletes current line and updates the position of the cursor. The cursor + * will be placed at the beginning of the current line after this routine + * ends. + * + */ + +void screen_delete_line(void); + #endif diff --git a/kernel/screen/src/screen.c b/kernel/screen/src/screen.c index f3aa7e5..3a741cd 100644 --- a/kernel/screen/src/screen.c +++ b/kernel/screen/src/screen.c @@ -82,3 +82,19 @@ void screen_delete(void) { } +/* + * screen_delete_line: + * ------------------- + * + * Repeat screen_delete until the whole line is deleted. + * + */ + +void screen_delete_line(void) { + + while (screen_column) + screen_delete(); + +} + +