FrontPageCustomizedUiSupport.h 4.1 KB

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