#include <Protocol/HiiConfigRouting.h>\r
#include <Protocol/HiiDatabase.h>\r
#include <Protocol/HiiString.h>\r
+#include <Protocol/UserManager.h>\r
\r
#include <Guid/MdeModuleHii.h>\r
#include <Guid/HiiPlatformSetupFormset.h>\r
#define FORM_INCONSISTENT_VALIDATION 0\r
#define FORM_NO_SUBMIT_VALIDATION 1\r
\r
-#define FORMSET_CLASS_PLATFORM_SETUP 0\r
-#define FORMSET_CLASS_FRONT_PAGE 1\r
+#define FORMSET_CLASS_PLATFORM_SETUP 0x0001\r
+#define FORMSET_CLASS_FRONT_PAGE 0x0002\r
\r
typedef struct {\r
UINT8 Type;\r
\r
LIST_ENTRY ExpressionListHead; // List of Expressions (FORM_EXPRESSION)\r
LIST_ENTRY StatementListHead; // List of Statements and Questions (FORM_BROWSER_STATEMENT)\r
+ FORM_EXPRESSION *SuppressExpression; // nesting inside of SuppressIf\r
} FORM_BROWSER_FORM;\r
\r
#define FORM_BROWSER_FORM_FROM_LINK(a) CR (a, FORM_BROWSER_FORM, Link, FORM_BROWSER_FORM_SIGNATURE)\r
LIST_ENTRY StorageListHead; // Storage list (FORMSET_STORAGE)\r
LIST_ENTRY DefaultStoreListHead; // DefaultStore list (FORMSET_DEFAULTSTORE)\r
LIST_ENTRY FormListHead; // Form list (FORM_BROWSER_FORM)\r
+ LIST_ENTRY ExpressionListHead; // List of Expressions (FORM_EXPRESSION)\r
} FORM_BROWSER_FORMSET;\r
\r
#define BROWSER_CONTEXT_SIGNATURE SIGNATURE_32 ('B', 'C', 'T', 'X')\r
CHAR16 *AdjustNumber;\r
CHAR16 *SaveChanges;\r
CHAR16 *OptionMismatch;\r
+ CHAR16 *FormSuppress;\r
CHAR16 PromptBlockWidth;\r
CHAR16 OptionBlockWidth;\r
CHAR16 HelpBlockWidth;\r
extern CHAR16 *gAdjustNumber;\r
extern CHAR16 *gSaveChanges;\r
extern CHAR16 *gOptionMismatch;\r
+extern CHAR16 *gFormSuppress;\r
\r
extern CHAR16 gPromptBlockWidth;\r
extern CHAR16 gOptionBlockWidth;\r
extern EFI_GUID gZeroGuid;\r
extern EFI_GUID gTianoHiiIfrGuid;\r
\r
+#include "Ui.h"\r
//\r
// Global Procedure Defines\r
//\r
/**\r
Initialize Question's Edit copy from Storage.\r
\r
+ @param Selection Selection contains the information about \r
+ the Selection, form and formset to be displayed.\r
+ Selection action may be updated in retrieve callback.\r
@param FormSet FormSet data structure.\r
@param Form Form data structure.\r
\r
**/\r
EFI_STATUS\r
LoadFormConfig (\r
- IN FORM_BROWSER_FORMSET *FormSet,\r
- IN FORM_BROWSER_FORM *Form\r
+ IN OUT UI_MENU_SELECTION *Selection,\r
+ IN FORM_BROWSER_FORMSET *FormSet,\r
+ IN FORM_BROWSER_FORM *Form\r
);\r
\r
/**\r
Initialize Question's Edit copy from Storage for the whole Formset.\r
\r
+ @param Selection Selection contains the information about \r
+ the Selection, form and formset to be displayed.\r
+ Selection action may be updated in retrieve callback.\r
@param FormSet FormSet data structure.\r
\r
@retval EFI_SUCCESS The function completed successfully.\r
**/\r
EFI_STATUS\r
LoadFormSetConfig (\r
- IN FORM_BROWSER_FORMSET *FormSet\r
+ IN OUT UI_MENU_SELECTION *Selection,\r
+ IN FORM_BROWSER_FORMSET *FormSet\r
);\r
\r
/**\r