TianoCore EDK2 master
Loading...
Searching...
No Matches
FormBrowserEx.h File Reference

Go to the source code of this file.

Data Structures

struct  _EDKII_FORM_BROWSER_EXTENSION_PROTOCOL
 

Macros

#define FORM_BROWSER_EXTENSION_PROTOCOL_GUID    { 0x1f73b18d, 0x4630, 0x43c1, { 0xa1, 0xde, 0x6f, 0x80, 0x85, 0x5d, 0x7d, 0xa4 } }
 
#define BROWSER_NO_CHANGES   0
 
#define BROWSER_SAVE_CHANGES   1
 
#define BROWSER_DISCARD_CHANGES   2
 
#define BROWSER_KEEP_CURRENT   3
 
#define BROWSER_ACTION_UNREGISTER   0
 
#define BROWSER_ACTION_DISCARD   BIT0
 
#define BROWSER_ACTION_DEFAULT   BIT1
 
#define BROWSER_ACTION_SUBMIT   BIT2
 
#define BROWSER_ACTION_RESET   BIT3
 
#define BROWSER_ACTION_EXIT   BIT4
 
#define BROWSER_ACTION_GOTO   BIT5
 

Typedefs

typedef struct _EDKII_FORM_BROWSER_EXTENSION_PROTOCOL EDKII_FORM_BROWSER_EXTENSION_PROTOCOL
 
typedef EDKII_FORM_BROWSER_EXTENSION_PROTOCOL EFI_FORM_BROWSER_EXTENSION_PROTOCOL
 
typedef EFI_STATUS(EFIAPI * SET_SCOPE) (IN BROWSER_SETTING_SCOPE Scope)
 
typedef EFI_STATUS(EFIAPI * REGISTER_HOT_KEY) (IN EFI_INPUT_KEY *KeyData, IN UINT32 Action, IN UINT16 DefaultId, IN EFI_STRING HelpString OPTIONAL)
 
typedef VOID(EFIAPI * EXIT_HANDLER) (VOID)
 
typedef VOID(EFIAPI * REGISTER_EXIT_HANDLER) (IN EXIT_HANDLER Handler)
 
typedef UINT32(EFIAPI * SAVE_REMINDER) (VOID)
 

Enumerations

enum  BROWSER_SETTING_SCOPE { FormLevel , FormSetLevel , SystemLevel , MaxLevel }
 

Variables

EFI_GUID gEdkiiFormBrowserExProtocolGuid
 

Detailed Description

Extension Form Browser Protocol provides the services that can be used to register the different hot keys for the standard Browser actions described in UEFI specification.

Copyright (c) 2011 - 2018, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent

Definition in file FormBrowserEx.h.

Macro Definition Documentation

◆ BROWSER_ACTION_DEFAULT

#define BROWSER_ACTION_DEFAULT   BIT1

Definition at line 37 of file FormBrowserEx.h.

◆ BROWSER_ACTION_DISCARD

#define BROWSER_ACTION_DISCARD   BIT0

Definition at line 36 of file FormBrowserEx.h.

◆ BROWSER_ACTION_EXIT

#define BROWSER_ACTION_EXIT   BIT4

Definition at line 40 of file FormBrowserEx.h.

◆ BROWSER_ACTION_GOTO

#define BROWSER_ACTION_GOTO   BIT5

Definition at line 41 of file FormBrowserEx.h.

◆ BROWSER_ACTION_RESET

#define BROWSER_ACTION_RESET   BIT3

Definition at line 39 of file FormBrowserEx.h.

◆ BROWSER_ACTION_SUBMIT

#define BROWSER_ACTION_SUBMIT   BIT2

Definition at line 38 of file FormBrowserEx.h.

◆ BROWSER_ACTION_UNREGISTER

#define BROWSER_ACTION_UNREGISTER   0

Definition at line 35 of file FormBrowserEx.h.

◆ BROWSER_DISCARD_CHANGES

#define BROWSER_DISCARD_CHANGES   2

Definition at line 28 of file FormBrowserEx.h.

◆ BROWSER_KEEP_CURRENT

#define BROWSER_KEEP_CURRENT   3

Definition at line 29 of file FormBrowserEx.h.

◆ BROWSER_NO_CHANGES

#define BROWSER_NO_CHANGES   0

Definition at line 26 of file FormBrowserEx.h.

◆ BROWSER_SAVE_CHANGES

#define BROWSER_SAVE_CHANGES   1

Definition at line 27 of file FormBrowserEx.h.

◆ FORM_BROWSER_EXTENSION_PROTOCOL_GUID

#define FORM_BROWSER_EXTENSION_PROTOCOL_GUID    { 0x1f73b18d, 0x4630, 0x43c1, { 0xa1, 0xde, 0x6f, 0x80, 0x85, 0x5d, 0x7d, 0xa4 } }

Definition at line 13 of file FormBrowserEx.h.

Typedef Documentation

◆ EDKII_FORM_BROWSER_EXTENSION_PROTOCOL

◆ EFI_FORM_BROWSER_EXTENSION_PROTOCOL

◆ EXIT_HANDLER

typedef VOID(EFIAPI * EXIT_HANDLER) (VOID)

This handler is responsbile for the left things on normal boot after all UI forms are closed. For example, it can continue to boot the first boot option.

It will be used only when EXIT action is trigged as system level.

Definition at line 104 of file FormBrowserEx.h.

◆ REGISTER_EXIT_HANDLER

typedef VOID(EFIAPI * REGISTER_EXIT_HANDLER) (IN EXIT_HANDLER Handler)

Register Exit handler function. When more than one handler function is registered, the latter one will override the previous one. When NULL handler is specified, the previous Exit handler will be unregistered.

Parameters
[in]HandlerPointer to handler function.

Definition at line 118 of file FormBrowserEx.h.

◆ REGISTER_HOT_KEY

typedef EFI_STATUS(EFIAPI * REGISTER_HOT_KEY) (IN EFI_INPUT_KEY *KeyData, IN UINT32 Action, IN UINT16 DefaultId, IN EFI_STRING HelpString OPTIONAL)

Register the hot key with its browser action, or unregistered the hot key. If the action value is zero, the hot key will be unregistered if it has been registered. If the same hot key has been registered, the new action and help string will override the previous ones.

Parameters
[in]KeyDataA pointer to a buffer that describes the keystroke information for the hot key. Its type is EFI_INPUT_KEY to be supported by all ConsoleIn devices.
[in]ActionAction value that describes what action will be trigged when the hot key is pressed.
[in]DefaultIdSpecifies the type of defaults to retrieve, which is only for DEFAULT action.
[in]HelpStringHelp string that describes the hot key information. Its value may be NULL for the unregistered hot key.
Return values
EFI_SUCCESSHot key is registered or unregistered.
EFI_INVALID_PARAMETERKeyData is NULL.

Definition at line 89 of file FormBrowserEx.h.

◆ SAVE_REMINDER

typedef UINT32(EFIAPI * SAVE_REMINDER) (VOID)

Create reminder to let user to choose save or discard the changed browser data. Caller can use it to actively check the changed browser data.

Return values
BROWSER_NO_CHANGESNo browser data is changed.
BROWSER_SAVE_CHANGESThe changed browser data is saved.
BROWSER_DISCARD_CHANGESThe changed browser data is discard.
BROWSER_KEEP_CURRENTBrowser keep current changes.

Definition at line 134 of file FormBrowserEx.h.

◆ SET_SCOPE

typedef EFI_STATUS(EFIAPI * SET_SCOPE) (IN BROWSER_SETTING_SCOPE Scope)

Configure what scope the hot key will impact. All hot keys have the same scope. The mixed hot keys with the different level are not supported. If no scope is set, the default scope will be FormSet level. After all registered hot keys are removed, previous Scope can reset to another level.

Parameters
[in]ScopeScope level to be set.
Return values
EFI_SUCCESSScope is set correctly.
EFI_INVALID_PARAMETERScope is not the valid value specified in BROWSER_SETTING_SCOPE.
EFI_UNSPPORTEDScope level is different from current one that the registered hot keys have.

Definition at line 67 of file FormBrowserEx.h.

Enumeration Type Documentation

◆ BROWSER_SETTING_SCOPE

enum BROWSER_SETTING_SCOPE

Definition at line 46 of file FormBrowserEx.h.