diff options
author | li-elvin <li-elvin@6f19259b-4bc3-4df7-8a09-765794883524> | 2010-02-23 09:40:43 +0000 |
---|---|---|
committer | li-elvin <li-elvin@6f19259b-4bc3-4df7-8a09-765794883524> | 2010-02-23 09:40:43 +0000 |
commit | 479e19a6d5670cfbb4406ffa00f5f094a18fd03c (patch) | |
tree | c2408968fed832be17730240739a3661d54d9965 | |
parent | 28b5f7c06238b25732bf6f0c72c3d42b94abee66 (diff) | |
download | edk2-479e19a6d5670cfbb4406ffa00f5f094a18fd03c.zip edk2-479e19a6d5670cfbb4406ffa00f5f094a18fd03c.tar.gz edk2-479e19a6d5670cfbb4406ffa00f5f094a18fd03c.tar.bz2 |
Driver health entry in device manager page is not totally hidden, the original code just change string to empty string, if cursor is at empty string, there is no focus at all.
Dynamically create subtitle and action entry of driver health when driver health protocol is installed.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10047 6f19259b-4bc3-4df7-8a09-765794883524
-rw-r--r-- | IntelFrameworkModulePkg/Universal/BdsDxe/DeviceMngr/DeviceManager.c | 21 | ||||
-rw-r--r-- | IntelFrameworkModulePkg/Universal/BdsDxe/DeviceMngr/DeviceManagerVfr.Vfr | 12 |
2 files changed, 17 insertions, 16 deletions
diff --git a/IntelFrameworkModulePkg/Universal/BdsDxe/DeviceMngr/DeviceManager.c b/IntelFrameworkModulePkg/Universal/BdsDxe/DeviceMngr/DeviceManager.c index 9e4fff6..b545b6c 100644 --- a/IntelFrameworkModulePkg/Universal/BdsDxe/DeviceMngr/DeviceManager.c +++ b/IntelFrameworkModulePkg/Universal/BdsDxe/DeviceMngr/DeviceManager.c @@ -464,13 +464,24 @@ CallDeviceManager ( &NumHandles,
&DriverHealthHandles
);
+
//
- // If there are no drivers installed driver health protocol
+ // If there are no drivers installed driver health protocol, do not create driver health entry in UI
//
- if (NumHandles == 0) {
- HiiSetString (HiiHandle, STRING_TOKEN (STR_DM_DRIVER_HEALTH_TITLE), GetStringById (STRING_TOKEN (STR_EMPTY_STRING)), NULL);
- HiiSetString (HiiHandle, STRING_TOKEN (STR_DRIVER_HEALTH_ALL_HEALTHY), GetStringById (STRING_TOKEN (STR_EMPTY_STRING)), NULL);
- } else {
+ if (NumHandles != 0) {
+ //
+ // If driver health protocol is installed, create Driver Health subtitle and entry
+ //
+ HiiCreateSubTitleOpCode (StartOpCodeHandle, STRING_TOKEN (STR_DM_DRIVER_HEALTH_TITLE), 0, 0, 0);
+ HiiCreateActionOpCode (
+ StartOpCodeHandle, // Container for dynamic created opcodes
+ DEVICE_MANAGER_KEY_DRIVER_HEALTH, // Question ID
+ STRING_TOKEN(STR_DRIVER_HEALTH_ALL_HEALTHY), // Prompt text
+ STRING_TOKEN(STR_DRIVER_HEALTH_STATUS_HELP), // Help text
+ EFI_IFR_FLAG_CALLBACK, // Question flag
+ 0 // Action String ID
+ );
+
//
// Check All Driver health status
//
diff --git a/IntelFrameworkModulePkg/Universal/BdsDxe/DeviceMngr/DeviceManagerVfr.Vfr b/IntelFrameworkModulePkg/Universal/BdsDxe/DeviceMngr/DeviceManagerVfr.Vfr index c08ad26..41a25e4 100644 --- a/IntelFrameworkModulePkg/Universal/BdsDxe/DeviceMngr/DeviceManagerVfr.Vfr +++ b/IntelFrameworkModulePkg/Universal/BdsDxe/DeviceMngr/DeviceManagerVfr.Vfr @@ -2,7 +2,7 @@ //
// Device Manager formset.
//
-// Copyright (c) 2004 - 2009, Intel Corporation. <BR>
+// Copyright (c) 2004 - 2010, Intel Corporation. <BR>
// All rights reserved. This program and the accompanying materials
// are licensed and made available under the terms and conditions of the BSD License
// which accompanies this distribution. The full text of the license may be found at
@@ -66,16 +66,6 @@ formset label LABEL_DEVICES_LIST;
label LABEL_END;
-
- subtitle text = STRING_TOKEN(STR_LAST_STRING);
- subtitle text = STRING_TOKEN(STR_DM_DRIVER_HEALTH_TITLE);
-
- text
- help = STRING_TOKEN(STR_DRIVER_HEALTH_STATUS_HELP),
- text = STRING_TOKEN(STR_DRIVER_HEALTH_ALL_HEALTHY),
- text = STRING_TOKEN(STR_LAST_STRING),
- flags = INTERACTIVE,
- key = DEVICE_MANAGER_KEY_DRIVER_HEALTH;
subtitle text = STRING_TOKEN(STR_EMPTY_STRING);
|