diff options
author | Joursoir <chat@joursoir.net> | 2021-12-01 19:24:26 +0300 |
---|---|---|
committer | Joursoir <chat@joursoir.net> | 2021-12-01 19:24:26 +0300 |
commit | 6a7926acb843acfe2949df68d9fe9f2ee8a73516 (patch) | |
tree | 1b72c90c8da43b206d3cb58b33af5272f63a8748 /Library | |
parent | dbe8bd817e2db2294976457b1c272b6025ae3b61 (diff) | |
download | ufm-6a7926acb843acfe2949df68d9fe9f2ee8a73516.tar.gz ufm-6a7926acb843acfe2949df68d9fe9f2ee8a73516.tar.bz2 ufm-6a7926acb843acfe2949df68d9fe9f2ee8a73516.zip |
panel: make panel_set_active()
Diffstat (limited to 'Library')
-rw-r--r-- | Library/UefiShellUfmCommandLib/panel.c | 11 | ||||
-rw-r--r-- | Library/UefiShellUfmCommandLib/panel.h | 11 |
2 files changed, 22 insertions, 0 deletions
diff --git a/Library/UefiShellUfmCommandLib/panel.c b/Library/UefiShellUfmCommandLib/panel.c index 6ee1939..f920ea1 100644 --- a/Library/UefiShellUfmCommandLib/panel.c +++ b/Library/UefiShellUfmCommandLib/panel.c @@ -276,6 +276,7 @@ VOID panel_release(struct panel_ctx *p) FreePool(p); } + BOOLEAN panel_move_cursor(struct panel_ctx *p, UINTN line) { UINTN oldline = p->curline; @@ -335,6 +336,16 @@ BOOLEAN panel_cd_to(struct panel_ctx *p, CONST CHAR16 *path) return TRUE; } +VOID panel_set_active(struct panel_ctx *p, BOOLEAN flag) +{ + if(flag == TRUE) { + HIGHLIGHT_LINE_AS_CURRENT(p, p->curline); + return; + } + + UNHIGHLIGHT_LINE_AS_CURRENT(p, p->curline); +} + BOOLEAN panel_mark_file(struct panel_ctx *p, UINTN line) { UINTN idx = line - 1; diff --git a/Library/UefiShellUfmCommandLib/panel.h b/Library/UefiShellUfmCommandLib/panel.h index 8fdb19f..8670f82 100644 --- a/Library/UefiShellUfmCommandLib/panel.h +++ b/Library/UefiShellUfmCommandLib/panel.h @@ -71,6 +71,17 @@ BOOLEAN panel_move_cursor(struct panel_ctx *p, UINTN line); BOOLEAN panel_cd_to(struct panel_ctx *p, CONST CHAR16 *path); /* + * Changes the active state + * + * p: the panel on which to operate + * active: TRUE if the panel should be activated. FALSE if the + * panel should be disabled + * + * return: VOID +*/ +VOID panel_set_active(struct panel_ctx *p, BOOLEAN active); + +/* * Marks the file as selected. Supports work only with files. * * p: the panel on which to operate |