TianoCore EDK2 master
Loading...
Searching...
No Matches
FormBrowserEx.h
Go to the documentation of this file.
1
10#ifndef __FORM_BROWSER_EXTENSION_H__
11#define __FORM_BROWSER_EXTENSION_H__
12
13#define FORM_BROWSER_EXTENSION_PROTOCOL_GUID \
14 { 0x1f73b18d, 0x4630, 0x43c1, { 0xa1, 0xde, 0x6f, 0x80, 0x85, 0x5d, 0x7d, 0xa4 } }
15
17
18//
19// To be compatible, keep EFI_FORM_BROWSER_EXTENSION_PROTOCOL definition
20//
22
23//
24// Return value of SAVE_REMINDER() that describes whether the changed data is saved or discarded.
25//
26#define BROWSER_NO_CHANGES 0
27#define BROWSER_SAVE_CHANGES 1
28#define BROWSER_DISCARD_CHANGES 2
29#define BROWSER_KEEP_CURRENT 3
30
31//
32// Browser actions. They can be cominbed together.
33// If more than one actions are specified, the action with low bit will be executed first.
34//
35#define BROWSER_ACTION_UNREGISTER 0
36#define BROWSER_ACTION_DISCARD BIT0
37#define BROWSER_ACTION_DEFAULT BIT1
38#define BROWSER_ACTION_SUBMIT BIT2
39#define BROWSER_ACTION_RESET BIT3
40#define BROWSER_ACTION_EXIT BIT4
41#define BROWSER_ACTION_GOTO BIT5
42
43//
44// Scope for Browser action. It may be Form, FormSet or System level.
45//
46typedef enum {
47 FormLevel,
48 FormSetLevel,
49 SystemLevel,
50 MaxLevel
51} BROWSER_SETTING_SCOPE;
52
66typedef
68(EFIAPI *SET_SCOPE)(
69 IN BROWSER_SETTING_SCOPE Scope
70 );
71
88typedef
90(EFIAPI *REGISTER_HOT_KEY)(
91 IN EFI_INPUT_KEY *KeyData,
92 IN UINT32 Action,
93 IN UINT16 DefaultId,
94 IN EFI_STRING HelpString OPTIONAL
95 );
96
103typedef
104VOID
105(EFIAPI *EXIT_HANDLER)(
106 VOID
107 );
108
117typedef
118VOID
119(EFIAPI *REGISTER_EXIT_HANDLER)(
120 IN EXIT_HANDLER Handler
121 );
122
133typedef
134UINT32
135(EFIAPI *SAVE_REMINDER)(
136 VOID
137 );
138
140 SET_SCOPE SetScope;
141 REGISTER_HOT_KEY RegisterHotKey;
142 REGISTER_EXIT_HANDLER RegiserExitHandler;
143 SAVE_REMINDER SaveReminder;
144};
145
146extern EFI_GUID gEdkiiFormBrowserExProtocolGuid;
147
148#endif
EFI_STATUS(EFIAPI * SET_SCOPE)(IN BROWSER_SETTING_SCOPE Scope)
Definition: FormBrowserEx.h:68
VOID(EFIAPI * REGISTER_EXIT_HANDLER)(IN EXIT_HANDLER Handler)
VOID(EFIAPI * EXIT_HANDLER)(VOID)
EFI_STATUS(EFIAPI * REGISTER_HOT_KEY)(IN EFI_INPUT_KEY *KeyData, IN UINT32 Action, IN UINT16 DefaultId, IN EFI_STRING HelpString OPTIONAL)
Definition: FormBrowserEx.h:90
UINT32(EFIAPI * SAVE_REMINDER)(VOID)
#define OPTIONAL
Definition: Base.h:290
#define IN
Definition: Base.h:279
RETURN_STATUS EFI_STATUS
Definition: UefiBaseType.h:29
Definition: Base.h:213