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