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
This commit is contained in:
ydong10
2011-11-18 07:05:17 +00:00
parent 191daa25f4
commit ef40f0f6d6
2 changed files with 119 additions and 111 deletions

View File

@@ -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;