]> git.proxmox.com Git - mirror_edk2.git/blob - MdeModulePkg/Application/UiApp/FrontPageCustomizedUiSupport.h
MdeModulePkg: Replace BSD License with BSD+Patent License
[mirror_edk2.git] / MdeModulePkg / Application / UiApp / FrontPageCustomizedUiSupport.h
1 /** @file
2 This library class defines a set of interfaces to be used by customize Ui module
3
4 Copyright (c) 2016, Intel Corporation. All rights reserved.<BR>
5 SPDX-License-Identifier: BSD-2-Clause-Patent
6
7 **/
8
9 #ifndef __FRONTPAGE_CUSTOMIZE_UI_SUPPORT_UI_H__
10 #define __FRONTPAGE_CUSTOMIZE_UI_SUPPORT_UI_H__
11
12 /**
13 Create continue menu in the front page.
14
15 @param[in] HiiHandle The hii handle for the Uiapp driver.
16 @param[in] StartOpCodeHandle The opcode handle to save the new opcode.
17
18 **/
19 VOID
20 UiCreateContinueMenu (
21 IN EFI_HII_HANDLE HiiHandle,
22 IN VOID *StartOpCodeHandle
23 );
24
25 /**
26 Create empty line menu.
27
28 @param HiiHandle The hii handle for the Uiapp driver.
29 @param StartOpCodeHandle The opcode handle to save the new opcode.
30
31 **/
32 VOID
33 UiCreateEmptyLine (
34 IN EFI_HII_HANDLE HiiHandle,
35 IN VOID *StartOpCodeHandle
36 );
37
38 /**
39 Create Select language menu in the front page with oneof opcode.
40
41 @param[in] HiiHandle The hii handle for the Uiapp driver.
42 @param[in] StartOpCodeHandle The opcode handle to save the new opcode.
43
44 **/
45 VOID
46 UiCreateLanguageMenu (
47 IN EFI_HII_HANDLE HiiHandle,
48 IN VOID *StartOpCodeHandle
49 );
50
51 /**
52 Create Reset menu.
53
54 @param[in] HiiHandle The hii handle for the Uiapp driver.
55 @param[in] StartOpCodeHandle The opcode handle to save the new opcode.
56
57 **/
58 VOID
59 UiCreateResetMenu (
60 IN EFI_HII_HANDLE HiiHandle,
61 IN VOID *StartOpCodeHandle
62 );
63
64 /**
65 Rename the driver name if necessary.
66
67 @param DriverName Input the driver name.
68 @param NewDriverName Return the new driver name.
69 @param EmptyLineAfter Whether need to insert empty line.
70
71 @retval New driver name if compared, else NULL.
72
73 **/
74 typedef
75 BOOLEAN
76 (EFIAPI *DRIVER_SPECIAL_HANDLER)(
77 IN CHAR16 *DriverName,
78 OUT CHAR16 **NewName,
79 OUT BOOLEAN *EmptyLineAfter
80 );
81
82 /**
83 Search the drivers in the system which need to show in the front page
84 and insert the menu to the front page.
85
86 @param HiiHandle The hii handle for the Uiapp driver.
87 @param ClassGuid The class guid for the driver which is the target.
88 @param SpecialHandlerFn The pointer to the specail handler function, if any.
89 @param StartOpCodeHandle The opcode handle to save the new opcode.
90
91 @retval EFI_SUCCESS Search the driver success
92
93 **/
94 EFI_STATUS
95 UiListThirdPartyDrivers (
96 IN EFI_HII_HANDLE HiiHandle,
97 IN EFI_GUID *ClassGuid,
98 IN DRIVER_SPECIAL_HANDLER SpecialHandlerFn,
99 IN VOID *StartOpCodeHandle
100 );
101
102 /**
103 This function processes the results of changes in configuration.
104
105
106 @param HiiHandle Points to the hii handle for this formset.
107 @param Action Specifies the type of action taken by the browser.
108 @param QuestionId A unique value which is sent to the original exporting driver
109 so that it can identify the type of data to expect.
110 @param Type The type of value for the question.
111 @param Value A pointer to the data being sent to the original exporting driver.
112 @param ActionRequest On return, points to the action requested by the callback function.
113 @param Status Return the handle status.
114
115 @retval TRUE The callback successfully handled the action.
116 @retval FALSE The callback not supported in this handler.
117
118 **/
119 BOOLEAN
120 UiSupportLibCallbackHandler (
121 IN EFI_HII_HANDLE HiiHandle,
122 IN EFI_BROWSER_ACTION Action,
123 IN EFI_QUESTION_ID QuestionId,
124 IN UINT8 Type,
125 IN EFI_IFR_TYPE_VALUE *Value,
126 OUT EFI_BROWSER_ACTION_REQUEST *ActionRequest,
127 OUT EFI_STATUS *Status
128 );
129
130 #endif