mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-24 12:59:39 +02:00
LCLTranslator: search for LCL strings both in PO and MO format regardless of format of found project translation (also simplifies logic)
git-svn-id: trunk@60462 -
This commit is contained in:
parent
0580bda5ae
commit
67732946ce
@ -254,7 +254,8 @@ var
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
//master files have .pot extension
|
//master files have .pot extension
|
||||||
LCFileName := ChangeFileExt(GetLCFileName, '.pot');
|
if LCExt = '.po' then
|
||||||
|
LCFileName := ChangeFileExt(GetLCFileName, '.pot');
|
||||||
|
|
||||||
Result := AppDir + LCFileName;
|
Result := AppDir + LCFileName;
|
||||||
if FileExistsUTF8(Result) then
|
if FileExistsUTF8(Result) then
|
||||||
@ -530,7 +531,6 @@ procedure SetDefaultLang(Lang: string; Dir: string = ''; LocaleFileName: string
|
|||||||
called from unit Initialization section. User code normally should not specify it.
|
called from unit Initialization section. User code normally should not specify it.
|
||||||
}
|
}
|
||||||
var
|
var
|
||||||
Dot1: integer;
|
|
||||||
LCLPath, lcfn: string;
|
LCLPath, lcfn: string;
|
||||||
LocalTranslator: TUpdateTranslator;
|
LocalTranslator: TUpdateTranslator;
|
||||||
i: integer;
|
i: integer;
|
||||||
@ -543,14 +543,6 @@ begin
|
|||||||
if lcfn <> '' then
|
if lcfn <> '' then
|
||||||
begin
|
begin
|
||||||
Translations.TranslateResourceStrings(lcfn);
|
Translations.TranslateResourceStrings(lcfn);
|
||||||
LCLPath := ExtractFileName(lcfn);
|
|
||||||
Dot1 := pos('.', LCLPath);
|
|
||||||
if Dot1 > 1 then
|
|
||||||
begin
|
|
||||||
Delete(LCLPath, 1, Dot1 - 1);
|
|
||||||
LCLPath := ExtractFilePath(lcfn) + 'lclstrconsts' + LCLPath;
|
|
||||||
Translations.TranslateUnitResourceStrings('LCLStrConsts', LCLPath);
|
|
||||||
end;
|
|
||||||
LocalTranslator := TPOTranslator.Create(lcfn);
|
LocalTranslator := TPOTranslator.Create(lcfn);
|
||||||
end;
|
end;
|
||||||
except
|
except
|
||||||
@ -565,15 +557,6 @@ begin
|
|||||||
if lcfn <> '' then
|
if lcfn <> '' then
|
||||||
begin
|
begin
|
||||||
GetText.TranslateResourceStrings(UTF8ToSys(lcfn));
|
GetText.TranslateResourceStrings(UTF8ToSys(lcfn));
|
||||||
LCLPath := ExtractFileName(lcfn);
|
|
||||||
Dot1 := pos('.', LCLPath);
|
|
||||||
if Dot1 > 1 then
|
|
||||||
begin
|
|
||||||
Delete(LCLPath, 1, Dot1 - 1);
|
|
||||||
LCLPath := ExtractFilePath(lcfn) + 'lclstrconsts' + LCLPath;
|
|
||||||
if FileExistsUTF8(LCLPath) then
|
|
||||||
GetText.TranslateResourceStrings(UTF8ToSys(LCLPath));
|
|
||||||
end;
|
|
||||||
LocalTranslator := TDefaultTranslator.Create(lcfn);
|
LocalTranslator := TDefaultTranslator.Create(lcfn);
|
||||||
end;
|
end;
|
||||||
except
|
except
|
||||||
@ -581,6 +564,19 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
if lcfn<>'' then
|
||||||
|
begin
|
||||||
|
LCLPath:=FindLocaleFileName('.po', Lang, ExtractFilePath(lcfn), 'lclstrconsts');
|
||||||
|
if LCLPath<>'' then
|
||||||
|
Translations.TranslateUnitResourceStrings('LCLStrConsts', LCLPath)
|
||||||
|
else
|
||||||
|
begin
|
||||||
|
LCLPath:=FindLocaleFileName('.mo', Lang, ExtractFilePath(lcfn), 'lclstrconsts');
|
||||||
|
if LCLPath<>'' then
|
||||||
|
GetText.TranslateResourceStrings(UTF8ToSys(LCLPath));
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
if LocalTranslator<>nil then
|
if LocalTranslator<>nil then
|
||||||
begin
|
begin
|
||||||
if Assigned(LRSTranslator) then
|
if Assigned(LRSTranslator) then
|
||||||
|
Loading…
Reference in New Issue
Block a user