Obsah / Utility / TEXT / TextLangNear
Zdrojový kód: INCLUDE\UTIL\TEXT.INC, UTIL\TEXT.ASM
TextLangNear - Vyhledání textu pro nejbližší jazyk
Funkce TextLangNear vyhledá ve vícejazyčném textu text pro nejbližší jazyk.
|
Na vstupu funkce obsahuje registr AX identifikátor požadovaného jazyku a pod-jazyku LANG, registr EBX obsahuje ukazatel na první položku pole vícejazyčných textů LANGTEXT (první položka obsahuje počet položek v poli). Funkce navrátí v registru EBX ukazatel na položku s nalezeným požadovaným identifikátorem jazyku (lze s ní pracovat jako s běžnou textovou proměnnou) a v registru AX identifikátor jazyku LANG nalezeného textu.
|
Funkce se pokouší vyhledat text nejdříve s přesným identifikátorem jazyku pomocí funkce TextSubLangGet. Je-li text úspěšně nalezen, funkce se ihned ukončí.
Druhý pokus se provede pomocí funkce TextLangGet, která ignoruje vedlejší identifikátor jazyku. Je-li text úspěšně nalezen, funkce se ihned ukončí.
V případě neúspěchu se z tabulky LangNear připraví hlavní identifikátor alternativního blízkého jazyku a provede se nové hledání pomocí funkce TextLangGet (s ignorováním vedlejšího identifikátoru jazyku). Je-li text úspěšně nalezen, funkce se ihned ukončí.
Poslední pokus spočívá ve vyhledání textu v angličtině, opět pomocí funkce TextLangGet. Pokud ani tento pokus neuspěje, použije se první text pole.
Obsah / Utility / TEXT / TextLangNear