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