VirtualBox

source: vbox/trunk/src/VBox/Devices/EFI/Firmware/ShellPkg/Library/UefiShellDebug1CommandsLib/EditMenuBar.h@ 81028

最後變更 在這個檔案從81028是 80721,由 vboxsync 提交於 6 年 前

Devices/EFI/FirmwareNew: Start upgrade process to edk2-stable201908 (compiles on Windows and works to some extent), bugref:4643

  • 屬性 svn:eol-style 設為 native
檔案大小: 2.5 KB
 
1/** @file
2 Declares menubar interface functions.
3
4 Copyright (c) 2005 - 2018, Intel Corporation. All rights reserved. <BR>
5 SPDX-License-Identifier: BSD-2-Clause-Patent
6
7**/
8
9#ifndef _LIB_MENU_BAR_H_
10#define _LIB_MENU_BAR_H_
11
12#define SCAN_CONTROL_E 5
13#define SCAN_CONTROL_F 6
14#define SCAN_CONTROL_G 7
15#define SCAN_CONTROL_K 11
16#define SCAN_CONTROL_O 15
17#define SCAN_CONTROL_Q 17
18#define SCAN_CONTROL_R 18
19#define SCAN_CONTROL_S 19
20#define SCAN_CONTROL_T 20
21#define SCAN_CONTROL_U 21
22#define SCAN_CONTROL_W 23
23#define SCAN_CONTROL_Z 26
24
25
26typedef
27EFI_STATUS
28(*MENU_ITEM_FUNCTION) (
29 VOID
30 );
31
32typedef struct _EDITOR_MENU_ITEM {
33 EFI_STRING_ID NameToken;
34 CHAR16 FunctionKeyToken;
35 MENU_ITEM_FUNCTION Function;
36} EDITOR_MENU_ITEM;
37
38/**
39 Initializa the menu bar with the specified items.
40
41 @param[in] Items The items to display and their functions.
42
43 @retval EFI_SUCCESS The initialization was correct.
44 @retval EFI_OUT_OF_RESOURCES A memory allocation failed.
45**/
46EFI_STATUS
47MenuBarInit (
48 IN CONST EDITOR_MENU_ITEM *Items
49 );
50
51/**
52 Initialize the control hot-key with the specified items.
53
54 @param[in] Items The hot-key functions.
55
56 @retval EFI_SUCCESS The initialization was correct.
57**/
58EFI_STATUS
59ControlHotKeyInit (
60 IN MENU_ITEM_FUNCTION *Items
61 );
62
63/**
64 Cleanup function for a menu bar. frees all allocated memory.
65**/
66VOID
67MenuBarCleanup (
68 VOID
69 );
70
71/**
72 Refresh function for the menu bar.
73
74 @param[in] LastRow The last printable row.
75 @param[in] LastCol The last printable column.
76
77 @retval EFI_SUCCESS The refresh was successful.
78**/
79EFI_STATUS
80MenuBarRefresh (
81 IN CONST UINTN LastRow,
82 IN CONST UINTN LastCol
83 );
84
85/**
86 Function to dispatch the correct function based on a function key (F1...)
87
88 @param[in] Key The pressed key.
89
90 @retval EFI_NOT_FOUND The key was not a valid function key
91 (an error was sent to the status bar).
92 @return The return value from the called dispatch function.
93**/
94EFI_STATUS
95MenuBarDispatchFunctionKey (
96 IN CONST EFI_INPUT_KEY *Key
97 );
98
99/**
100 Function to dispatch the correct function based on a control-based key (ctrl+o...)
101
102 @param[in] KeyData The pressed key.
103
104 @retval EFI_NOT_FOUND The key was not a valid control-based key
105 (an error was sent to the status bar).
106 @return EFI_SUCCESS.
107**/
108EFI_STATUS
109MenuBarDispatchControlHotKey (
110 IN CONST EFI_KEY_DATA *KeyData
111 );
112
113#endif
注意: 瀏覽 TracBrowser 來幫助您使用儲存庫瀏覽器

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette