summaryrefslogtreecommitdiff
path: root/MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabase.h
diff options
context:
space:
mode:
authorydong10 <ydong10@6f19259b-4bc3-4df7-8a09-765794883524>2011-11-18 07:05:17 +0000
committerydong10 <ydong10@6f19259b-4bc3-4df7-8a09-765794883524>2011-11-18 07:05:17 +0000
commitef40f0f6d65dfe71425e017b7a53e6322dfdcd87 (patch)
tree3680c1d7baf773deb1d5ab4a48a0e38da0044069 /MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabase.h
parent191daa25f49b6be0607242e04980ff841525883d (diff)
downloadedk2-platforms-ef40f0f6d65dfe71425e017b7a53e6322dfdcd87.tar.xz
Patch for:
1. Get default value base on the priority: default opcode has highest priority and get from minimum or first option has lowest. 2. When default value saved in expression, not set default value for this question. Signed-off-by: ydong10 Reviewed-by: lgao4 git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12738 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabase.h')
-rw-r--r--MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabase.h14
1 files changed, 13 insertions, 1 deletions
diff --git a/MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabase.h b/MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabase.h
index 783fc7ecc1..ccb9263923 100644
--- a/MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabase.h
+++ b/MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabase.h
@@ -80,9 +80,21 @@ typedef struct {
LIST_ENTRY DefaultValueEntry; // Link to its default value array
} IFR_BLOCK_DATA;
+//
+// Get default value from IFR data.
+//
+typedef enum {
+ DEFAULT_VALUE_FROM_DEFAULT = 0, // Get from the minimum or first one when not set default value.
+ DEFAULT_VALUE_FROM_FLAG, // Get default value from the defalut flag.
+ DEFAULT_VALUE_FROM_OPCODE // Get default value from default opcode, highest priority.
+} DEFAULT_VALUE_TYPE;
+
typedef struct {
LIST_ENTRY Entry;
- UINT8 OpCode;
+ DEFAULT_VALUE_TYPE Type;
+ BOOLEAN Cleaned; // Whether this value is cleaned
+ // TRUE Cleaned, the value can't be used
+ // FALSE Not cleaned, the value can be used.
UINT16 DefaultId;
UINT64 Value;
} IFR_DEFAULT_DATA;