Retire HiiLibGetNextLanguage() API from HII Library class.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8109 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
rsun3 2009-04-17 02:38:11 +00:00
parent bd72aa1a31
commit 0f2685219d
8 changed files with 125 additions and 66 deletions

View File

@ -334,7 +334,7 @@ LangCodes3066To639 (
Index = 0;
AsciiLangCodes = LangCodes3066;
while (AsciiStrLen (AsciiLangCodes) != 0) {
HiiLibGetNextLanguage (&AsciiLangCodes, Lang);
GetNextLanguage (&AsciiLangCodes, Lang);
Index++;
}
@ -352,7 +352,7 @@ LangCodes3066To639 (
AsciiLangCodes = LangCodes3066;
for (Index = 0; Index < Count; Index++) {
HiiLibGetNextLanguage (&AsciiLangCodes, Lang);
GetNextLanguage (&AsciiLangCodes, Lang);
Status = ConvertRfc3066LanguageToIso639Language (Lang, *LangCodes639 + Index * ISO_639_2_ENTRY_SIZE);
ASSERT_EFI_ERROR (Status);
}

View File

@ -529,6 +529,26 @@ ConvertIso639LanguageToRfc3066Language (
)
;
/**
Get next language from language code list (with separator ';').
If LangCode is NULL, then ASSERT.
If Lang is NULL, then ASSERT.
@param LangCode On input: point to first language in the list. On
output: point to next language in the list, or
NULL if no more language in the list.
@param Lang The first language in the list.
**/
VOID
EFIAPI
GetNextLanguage (
IN OUT CHAR8 **LangCode,
OUT CHAR8 *Lang
)
;
#include "Utility.h"
#include "ConfigAccess.h"

View File

@ -267,6 +267,47 @@ ConvertIso639LanguageToRfc3066Language (
return NULL;
}
/**
Get next language from language code list (with separator ';').
If LangCode is NULL, then ASSERT.
If Lang is NULL, then ASSERT.
@param LangCode On input: point to first language in the list. On
output: point to next language in the list, or
NULL if no more language in the list.
@param Lang The first language in the list.
**/
VOID
EFIAPI
GetNextLanguage (
IN OUT CHAR8 **LangCode,
OUT CHAR8 *Lang
)
{
UINTN Index;
CHAR8 *StringPtr;
ASSERT (LangCode != NULL);
ASSERT (*LangCode != NULL);
ASSERT (Lang != NULL);
Index = 0;
StringPtr = *LangCode;
while (StringPtr[Index] != 0 && StringPtr[Index] != ';') {
Index++;
}
CopyMem (Lang, StringPtr, Index);
Lang[Index] = 0;
if (StringPtr[Index] == ';') {
Index++;
}
*LangCode = StringPtr + Index;
}
/**
Test if all of the characters in a string have corresponding font characters.

View File

@ -195,7 +195,7 @@ FrontPageCallback (
Index = 0;
LangCode = LanguageString;
while (*LangCode != 0) {
HiiLibGetNextLanguage (&LangCode, Lang);
GetNextLanguage (&LangCode, Lang);
if (Index == Value->u8) {
break;
@ -419,7 +419,7 @@ InitializeFrontPage (
OptionCount = 0;
LangCode = LanguageString;
while (*LangCode != 0) {
HiiLibGetNextLanguage (&LangCode, Lang);
GetNextLanguage (&LangCode, Lang);
if (gFrontPagePrivate.LanguageToken == NULL) {
//

View File

@ -448,6 +448,47 @@ ConvertRfc3066LanguageToIso639Language (
return EFI_NOT_FOUND;
}
/**
Get next language from language code list (with separator ';').
If LangCode is NULL, then ASSERT.
If Lang is NULL, then ASSERT.
@param LangCode On input: point to first language in the list. On
output: point to next language in the list, or
NULL if no more language in the list.
@param Lang The first language in the list.
**/
VOID
EFIAPI
GetNextLanguage (
IN OUT CHAR8 **LangCode,
OUT CHAR8 *Lang
)
{
UINTN Index;
CHAR8 *StringPtr;
ASSERT (LangCode != NULL);
ASSERT (*LangCode != NULL);
ASSERT (Lang != NULL);
Index = 0;
StringPtr = *LangCode;
while (StringPtr[Index] != 0 && StringPtr[Index] != ';') {
Index++;
}
CopyMem (Lang, StringPtr, Index);
Lang[Index] = 0;
if (StringPtr[Index] == ';') {
Index++;
}
*LangCode = StringPtr + Index;
}
/**
Determine the current language that will be used
based on language related EFI Variables.

View File

@ -34,6 +34,25 @@ ConvertRfc3066LanguageToIso639Language (
OUT CHAR8 *LanguageIso639
);
/**
Get next language from language code list (with separator ';').
If LangCode is NULL, then ASSERT.
If Lang is NULL, then ASSERT.
@param LangCode On input: point to first language in the list. On
output: point to next language in the list, or
NULL if no more language in the list.
@param Lang The first language in the list.
**/
VOID
EFIAPI
GetNextLanguage (
IN OUT CHAR8 **LangCode,
OUT CHAR8 *Lang
);
/**
Determine the current language that will be used
based on language related EFI Variables.

View File

@ -223,26 +223,6 @@ HiiGetHiiHandles (
)
;
/**
Get next language from language code list (with separator ';').
If LangCode is NULL, then ASSERT.
If Lang is NULL, then ASSERT.
@param LangCode On input: point to first language in the list. On
output: point to next language in the list, or
NULL if no more language in the list.
@param Lang The first language in the list.
**/
VOID
EFIAPI
HiiLibGetNextLanguage (
IN OUT CHAR8 **LangCode,
OUT CHAR8 *Lang
)
;
/**
Retrieves a pointer to the a Null-terminated ASCII string containing the list
of languages that an HII handle in the HII Database supports. The returned

View File

@ -15,48 +15,6 @@
#include "InternalHiiLib.h"
/**
Get next language from language code list (with separator ';').
If LangCode is NULL, then ASSERT.
If Lang is NULL, then ASSERT.
@param LangCode On input: point to first language in the list. On
output: point to next language in the list, or
NULL if no more language in the list.
@param Lang The first language in the list.
**/
VOID
EFIAPI
HiiLibGetNextLanguage (
IN OUT CHAR8 **LangCode,
OUT CHAR8 *Lang
)
{
UINTN Index;
CHAR8 *StringPtr;
ASSERT (LangCode != NULL);
ASSERT (*LangCode != NULL);
ASSERT (Lang != NULL);
Index = 0;
StringPtr = *LangCode;
while (StringPtr[Index] != 0 && StringPtr[Index] != ';') {
Index++;
}
CopyMem (Lang, StringPtr, Index);
Lang[Index] = 0;
if (StringPtr[Index] == ';') {
Index++;
}
*LangCode = StringPtr + Index;
}
/**
Retrieves a pointer to the a Null-terminated ASCII string containing the list
of languages that an HII handle in the HII Database supports. The returned