diff options
-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 |