]> git.proxmox.com Git - mirror_edk2.git/commitdiff
OvmfPkg: PlatformDxe: add save and discard buttons to the form
authorLaszlo Ersek <lersek@redhat.com>
Sat, 22 Mar 2014 07:13:57 +0000 (07:13 +0000)
committerjljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524>
Sat, 22 Mar 2014 07:13:57 +0000 (07:13 +0000)
The RouteConfig() function is also called now as expected.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15373 6f19259b-4bc3-4df7-8a09-765794883524

OvmfPkg/PlatformDxe/Platform.c
OvmfPkg/PlatformDxe/Platform.h
OvmfPkg/PlatformDxe/Platform.uni
OvmfPkg/PlatformDxe/PlatformForms.vfr

index b69f2498b885f5720b50f40ebb0a54f4298594fc..b95326e2b5fe5d5eb6a1783fb3d7ab56da6964a1 100644 (file)
@@ -185,6 +185,8 @@ RouteConfig (
   OUT       EFI_STRING                      *Progress\r
 )\r
 {\r
+  DEBUG ((EFI_D_VERBOSE, "%a: Configuration=\"%s\"\n", __FUNCTION__,\r
+    Configuration));\r
   return EFI_SUCCESS;\r
 }\r
 \r
@@ -201,6 +203,26 @@ Callback (
   OUT    EFI_BROWSER_ACTION_REQUEST             *ActionRequest\r
   )\r
 {\r
+  DEBUG ((EFI_D_VERBOSE, "%a: Action=0x%Lx QuestionId=%d Type=%d\n",\r
+    __FUNCTION__, (UINT64) Action, QuestionId, Type));\r
+\r
+  if (Action != EFI_BROWSER_ACTION_CHANGED) {\r
+    return EFI_UNSUPPORTED;\r
+  }\r
+\r
+  switch (QuestionId) {\r
+  case QUESTION_SAVE_EXIT:\r
+    *ActionRequest = EFI_BROWSER_ACTION_REQUEST_FORM_SUBMIT_EXIT;\r
+    break;\r
+\r
+  case QUESTION_DISCARD_EXIT:\r
+    *ActionRequest = EFI_BROWSER_ACTION_REQUEST_FORM_DISCARD_EXIT;\r
+    break;\r
+\r
+  default:\r
+    break;\r
+  }\r
+\r
   return EFI_SUCCESS;\r
 }\r
 \r
index 6ce67ff9829cab2bf2c0c5bf4b2ca98abc541883..432eb5bc231cb79a81ab3dcfaa307bcc4a44571f 100644 (file)
@@ -28,6 +28,9 @@
 #define LABEL_RES_NEXT         1\r
 #define QUESTION_RES_NEXT      2\r
 \r
+#define QUESTION_SAVE_EXIT     3\r
+#define QUESTION_DISCARD_EXIT  4\r
+\r
 //\r
 // This structure describes the form state. Its fields relate strictly to the\r
 // visual widgets on the form.\r
index 6ce844a664aa914069069f08380c9f7997fd9642..d8d5b0bb4de9c0632dc183369fa7d46f455e9143 100644 (file)
Binary files a/OvmfPkg/PlatformDxe/Platform.uni and b/OvmfPkg/PlatformDxe/Platform.uni differ
index 61935c386be11d0a619ec8bd9345fd86caec95d9..a254572bafa072928eebbd3001f5c4c8251f867b 100644 (file)
@@ -56,6 +56,19 @@ formset
     // We'll dynamically generate a one-of-many selection at this label.\r
     //\r
     label LABEL_RES_NEXT;\r
+\r
+    text\r
+      help  = STRING_TOKEN(STR_SAVE_EXIT),\r
+      text  = STRING_TOKEN(STR_SAVE_EXIT),\r
+      flags = INTERACTIVE,\r
+      key   = QUESTION_SAVE_EXIT;\r
+\r
+    text\r
+      help  = STRING_TOKEN(STR_DISCARD_EXIT),\r
+      text  = STRING_TOKEN(STR_DISCARD_EXIT),\r
+      flags = INTERACTIVE,\r
+      key   = QUESTION_DISCARD_EXIT;\r
+\r
   endform;\r
 \r
 endformset;\r