]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/Include/Protocol/FormBrowserEx.h
MdeModulePkg: Clean up source files
[mirror_edk2.git] / MdeModulePkg / Include / Protocol / FormBrowserEx.h
index afeb7c0c0fd6a2e94a307efad7de8e621ab6bda1..5d5aa8fa4ee7b8921c4a74c4cd4552af9a0bb008 100644 (file)
@@ -1,14 +1,14 @@
 /** @file\r
-  Extension Form Browser Protocol provides the services that can be used to \r
+  Extension Form Browser Protocol provides the services that can be used to\r
   register the different hot keys for the standard Browser actions described in UEFI specification.\r
 \r
-Copyright (c) 2011, Intel Corporation. All rights reserved.<BR>\r
-This program and the accompanying materials are licensed and made available under \r
-the terms and conditions of the BSD License that accompanies this distribution.  \r
+Copyright (c) 2011 - 2018, Intel Corporation. All rights reserved.<BR>\r
+This program and the accompanying materials are licensed and made available under\r
+the terms and conditions of the BSD License that accompanies this distribution.\r
 The full text of the license may be found at\r
-http://opensource.org/licenses/bsd-license.php.                                            \r
+http://opensource.org/licenses/bsd-license.php.\r
 \r
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,                     \r
+THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
 \r
 **/\r
@@ -19,7 +19,12 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 #define FORM_BROWSER_EXTENSION_PROTOCOL_GUID  \\r
   { 0x1f73b18d, 0x4630, 0x43c1, { 0xa1, 0xde, 0x6f, 0x80, 0x85, 0x5d, 0x7d, 0xa4 } }\r
 \r
-typedef struct _EFI_FORM_BROWSER_EXTENSION_PROTOCOL   EFI_FORM_BROWSER_EXTENSION_PROTOCOL;\r
+typedef struct _EDKII_FORM_BROWSER_EXTENSION_PROTOCOL   EDKII_FORM_BROWSER_EXTENSION_PROTOCOL;\r
+\r
+//\r
+// To be compatible, keep EFI_FORM_BROWSER_EXTENSION_PROTOCOL definition\r
+//\r
+typedef EDKII_FORM_BROWSER_EXTENSION_PROTOCOL   EFI_FORM_BROWSER_EXTENSION_PROTOCOL;\r
 \r
 //\r
 // Return value of SAVE_REMINDER() that describes whether the changed data is saved or discarded.\r
@@ -27,10 +32,11 @@ typedef struct _EFI_FORM_BROWSER_EXTENSION_PROTOCOL   EFI_FORM_BROWSER_EXTENSION
 #define BROWSER_NO_CHANGES          0\r
 #define BROWSER_SAVE_CHANGES        1\r
 #define BROWSER_DISCARD_CHANGES     2\r
+#define BROWSER_KEEP_CURRENT        3\r
 \r
 //\r
-// Browser actions. They can be cominbed together. \r
-// If more than one actions are specified, the action with low bit will be executed first. \r
+// Browser actions. They can be cominbed together.\r
+// If more than one actions are specified, the action with low bit will be executed first.\r
 //\r
 #define BROWSER_ACTION_UNREGISTER   0\r
 #define BROWSER_ACTION_DISCARD      BIT0\r
@@ -38,6 +44,7 @@ typedef struct _EFI_FORM_BROWSER_EXTENSION_PROTOCOL   EFI_FORM_BROWSER_EXTENSION
 #define BROWSER_ACTION_SUBMIT       BIT2\r
 #define BROWSER_ACTION_RESET        BIT3\r
 #define BROWSER_ACTION_EXIT         BIT4\r
+#define BROWSER_ACTION_GOTO         BIT5\r
 \r
 //\r
 // Scope for Browser action. It may be Form, FormSet or System level.\r
@@ -54,11 +61,11 @@ typedef enum {
   All hot keys have the same scope. The mixed hot keys with the different level are not supported.\r
   If no scope is set, the default scope will be FormSet level.\r
   After all registered hot keys are removed, previous Scope can reset to another level.\r
-  \r
-  @param[in] Scope               Scope level to be set. \r
-  \r
+\r
+  @param[in] Scope               Scope level to be set.\r
+\r
   @retval EFI_SUCCESS            Scope is set correctly.\r
-  @retval EFI_INVALID_PARAMETER  Scope is not the valid value specified in BROWSER_SETTING_SCOPE. \r
+  @retval EFI_INVALID_PARAMETER  Scope is not the valid value specified in BROWSER_SETTING_SCOPE.\r
   @retval EFI_UNSPPORTED         Scope level is different from current one that the registered hot keys have.\r
 \r
 **/\r
@@ -72,15 +79,15 @@ EFI_STATUS
   Register the hot key with its browser action, or unregistered the hot key.\r
   If the action value is zero, the hot key will be unregistered if it has been registered.\r
   If the same hot key has been registered, the new action and help string will override the previous ones.\r
-  \r
+\r
   @param[in] KeyData     A pointer to a buffer that describes the keystroke\r
-                         information for the hot key. Its type is EFI_INPUT_KEY to \r
+                         information for the hot key. Its type is EFI_INPUT_KEY to\r
                          be supported by all ConsoleIn devices.\r
-  @param[in] Action      Action value that describes what action will be trigged when the hot key is pressed. \r
+  @param[in] Action      Action value that describes what action will be trigged when the hot key is pressed.\r
   @param[in] DefaultId   Specifies the type of defaults to retrieve, which is only for DEFAULT action.\r
   @param[in] HelpString  Help string that describes the hot key information.\r
                          Its value may be NULL for the unregistered hot key.\r
-  \r
+\r
   @retval EFI_SUCCESS            Hot key is registered or unregistered.\r
   @retval EFI_INVALID_PARAMETER  KeyData is NULL.\r
 **/\r
@@ -95,7 +102,7 @@ EFI_STATUS
 \r
 /**\r
   This handler is responsbile for the left things on normal boot after all UI forms are closed.\r
-  For example, it can continue to boot the first boot option. \r
+  For example, it can continue to boot the first boot option.\r
 \r
   It will be used only when EXIT action is trigged as system level.\r
 **/\r
@@ -106,11 +113,11 @@ VOID
   );\r
 \r
 /**\r
-  Register Exit handler function. \r
-  When more than one handler function is registered, the latter one will override the previous one. \r
-  When NULL handler is specified, the previous Exit handler will be unregistered. \r
-  \r
-  @param[in] Handler      Pointer to handler function. \r
+  Register Exit handler function.\r
+  When more than one handler function is registered, the latter one will override the previous one.\r
+  When NULL handler is specified, the previous Exit handler will be unregistered.\r
+\r
+  @param[in] Handler      Pointer to handler function.\r
 \r
 **/\r
 typedef\r
@@ -126,6 +133,7 @@ VOID
   @retval BROWSER_NO_CHANGES       No browser data is changed.\r
   @retval BROWSER_SAVE_CHANGES     The changed browser data is saved.\r
   @retval BROWSER_DISCARD_CHANGES  The changed browser data is discard.\r
+  @retval BROWSER_KEEP_CURRENT     Browser keep current changes.\r
 \r
 **/\r
 typedef\r
@@ -134,7 +142,7 @@ UINT32
   VOID\r
   );\r
 \r
-struct _EFI_FORM_BROWSER_EXTENSION_PROTOCOL {\r
+struct _EDKII_FORM_BROWSER_EXTENSION_PROTOCOL {\r
   SET_SCOPE              SetScope;\r
   REGISTER_HOT_KEY       RegisterHotKey;\r
   REGISTER_EXIT_HANDLER  RegiserExitHandler;\r
@@ -142,6 +150,7 @@ struct _EFI_FORM_BROWSER_EXTENSION_PROTOCOL {
 };\r
 \r
 extern EFI_GUID gEfiFormBrowserExProtocolGuid;\r
+extern EFI_GUID gEdkiiFormBrowserExProtocolGuid;\r
 \r
 #endif\r
 \r