HII Library Class interface refine.

The "HiiLib" prefix for all HII Library API function names changed to "Hii".

Remove: 
  HiiLibPreparePackageList(), replaced by HiiAddPackages()
  HiiLibNewString(), replaced by HiiSetString()
  HiiLibGetStringFromHandle(), replaced by HiiGetString()
  HiiLibGetStringFromToken(), replaced by HiiGetPackageString()
  HiiLibExtractGuidFromHiiHandle()
  HiiLibDevicePathToHiiHandle()
  HiiLibGetSupportedSecondaryLanguages()
  HiiLibGetSupportedLanguageNumber()
  HiiLibExportPackageLists()
  HiiLibListPackageLists()
  
Interface change:
  HiiAddPackages()
  HiiSetString()
  HiiGetString()
  HiiGetHiiHandles()

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8083 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
rsun3
2009-04-14 10:47:19 +00:00
parent 169a34619b
commit cb7d01c0c9
40 changed files with 1571 additions and 1770 deletions

View File

@ -112,8 +112,8 @@ DeviceManagerCallback (
This function registers HII packages to HII database.
@retval EFI_SUCCESS This function complete successfully.
@return Other value if failed to register HII packages.
@retval EFI_SUCCESS HII packages for the Device Manager were registered successfully.
@retval EFI_OUT_OF_RESOURCES HII packages for the Device Manager failed to be registered.
**/
EFI_STATUS
@ -122,7 +122,6 @@ InitializeDeviceManager (
)
{
EFI_STATUS Status;
EFI_HII_PACKAGE_LIST_HEADER *PackageList;
//
// Install Device Path Protocol and Config Access protocol to driver handle
@ -140,17 +139,18 @@ InitializeDeviceManager (
//
// Publish our HII data
//
PackageList = HiiLibPreparePackageList (2, &mDeviceManagerGuid, DeviceManagerVfrBin, BdsDxeStrings);
ASSERT (PackageList != NULL);
Status = gHiiDatabase->NewPackageList (
gHiiDatabase,
PackageList,
gDeviceManagerPrivate.DriverHandle,
&gDeviceManagerPrivate.HiiHandle
);
FreePool (PackageList);
gDeviceManagerPrivate.HiiHandle = HiiAddPackages (
&mDeviceManagerGuid,
gDeviceManagerPrivate.DriverHandle,
DeviceManagerVfrBin,
BdsDxeStrings,
NULL
);
if (gDeviceManagerPrivate.HiiHandle == NULL) {
Status = EFI_OUT_OF_RESOURCES;
} else {
Status = EFI_SUCCESS;
}
return Status;
}
@ -174,23 +174,18 @@ CallDeviceManager (
EFI_STATUS Status;
UINTN Count;
UINTN Index;
CHAR16 *String;
UINTN StringLength;
EFI_STRING String;
EFI_HII_UPDATE_DATA UpdateData[MENU_ITEM_NUM];
EFI_STRING_ID Token;
EFI_STRING_ID TokenHelp;
EFI_HII_HANDLE *HiiHandles;
UINTN HandleBufferLength;
UINTN NumberOfHiiHandles;
EFI_HII_HANDLE HiiHandle;
UINT16 FormSetClass;
EFI_STRING_ID FormSetTitle;
EFI_STRING_ID FormSetHelp;
EFI_BROWSER_ACTION_REQUEST ActionRequest;
EFI_HII_PACKAGE_LIST_HEADER *PackageList;
HiiHandles = NULL;
HandleBufferLength = 0;
Status = EFI_SUCCESS;
gCallbackKey = 0;
@ -221,37 +216,30 @@ CallDeviceManager (
//
// Get all the Hii handles
//
Status = HiiLibGetHiiHandles (&HandleBufferLength, &HiiHandles);
ASSERT_EFI_ERROR (Status && (HiiHandles != NULL));
HiiHandles = HiiGetHiiHandles (NULL);
ASSERT (HiiHandles != NULL);
HiiHandle = gDeviceManagerPrivate.HiiHandle;
StringLength = 0x1000;
String = AllocateZeroPool (StringLength);
ASSERT (String != NULL);
//
// Search for formset of each class type
//
NumberOfHiiHandles = HandleBufferLength / sizeof (EFI_HII_HANDLE);
for (Index = 0; Index < NumberOfHiiHandles; Index++) {
for (Index = 0; HiiHandles[Index] != NULL; Index++) {
IfrLibExtractClassFromHiiHandle (HiiHandles[Index], &FormSetClass, &FormSetTitle, &FormSetHelp);
if (FormSetClass == EFI_NON_DEVICE_CLASS) {
continue;
}
Token = 0;
*String = 0;
StringLength = 0x1000;
HiiLibGetString (HiiHandles[Index], FormSetTitle, String, &StringLength);
HiiLibNewString (HiiHandle, &Token, String);
String = HiiGetString (HiiHandles[Index], FormSetTitle, NULL);
ASSERT (String != NULL);
Token = HiiSetString (HiiHandle, 0, String, NULL);
FreePool (String);
TokenHelp = 0;
*String = 0;
StringLength = 0x1000;
HiiLibGetString (HiiHandles[Index], FormSetHelp, String, &StringLength);
HiiLibNewString (HiiHandle, &TokenHelp, String);
String = HiiGetString (HiiHandles[Index], FormSetHelp, NULL);
ASSERT (String != NULL);
TokenHelp = HiiSetString (HiiHandle, 0, String, NULL);
FreePool (String);
for (Count = 0; Count < MENU_ITEM_NUM; Count++) {
if (FormSetClass & mDeviceManagerMenuItemTable[Count].Class) {
@ -266,7 +254,6 @@ CallDeviceManager (
}
}
}
FreePool (String);
for (Index = 0; Index < MENU_ITEM_NUM; Index++) {
//
@ -327,16 +314,20 @@ CallDeviceManager (
//
// Cleanup dynamic created strings in HII database by reinstall the packagelist
//
gHiiDatabase->RemovePackageList (gHiiDatabase, HiiHandle);
PackageList = HiiLibPreparePackageList (2, &mDeviceManagerGuid, DeviceManagerVfrBin, BdsDxeStrings);
ASSERT (PackageList != NULL);
Status = gHiiDatabase->NewPackageList (
gHiiDatabase,
PackageList,
gDeviceManagerPrivate.DriverHandle,
&gDeviceManagerPrivate.HiiHandle
);
FreePool (PackageList);
HiiRemovePackages (HiiHandle);
gDeviceManagerPrivate.HiiHandle = HiiAddPackages (
&mDeviceManagerGuid,
gDeviceManagerPrivate.DriverHandle,
DeviceManagerVfrBin,
BdsDxeStrings,
NULL
);
if (gDeviceManagerPrivate.HiiHandle == NULL) {
Status = EFI_OUT_OF_RESOURCES;
} else {
Status = EFI_SUCCESS;
}
for (Index = 0; Index < MENU_ITEM_NUM; Index++) {
FreePool (UpdateData[Index].Data);