Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
ezfit:5x:localization_instructions_for_developers [2013/10/15 17:08]
smayr created
ezfit:5x:localization_instructions_for_developers [2013/12/16 15:18] (current)
smayr [Application Localization]
Line 2: Line 2:
  
 == Application Localization == == Application Localization ==
-  * See [[swdev:dotnet:Localization Using ResX Files]] +  * Add RESX files to project (See [[swdev:dotnet:Localization Using ResX Files]]). 
-  * [[swdev:dotnet:localization:Editing RESX Files with SimpleResxEditor]] +  * Edit class ''AHI.App.Localization.TLocalizationTools'' in ''src\AHI.App.Localization\Tools.cs'' to include new supported language:<code csharp> 
 +public static ObservableCollection<TLanguageInfo> SupportedLanguageInfo = new ObservableCollection<TLanguageInfo>()  
 +        {  
 +            //new TLanguageInfo() {LanguageNative = Resources.rsLangBulgarian,  LanguageEnglish = "Bulgarian",  LanguageCode = "bg-BG"}, 
 +            //new TLanguageInfo() {LanguageNative = Resources.rsLangDanish,     LanguageEnglish = "Danish",     LanguageCode = "da-DK"}, 
 +            new TLanguageInfo() {LanguageNative = Resources.rsLangEnglish,    LanguageEnglish = "English",    LanguageCode = "en-US"}, 
 +            //new TLanguageInfo() {LanguageNative = Resources.rsLangFrench,     LanguageEnglish = "French",     LanguageCode = "fr-CA"}, 
 +            //new TLanguageInfo() {LanguageNative = Resources.rsLangGerman,     LanguageEnglish = "German",     LanguageCode = "de-DE"}, 
 +            new TLanguageInfo() {LanguageNative = Resources.rsLangKorean,     LanguageEnglish = "Korean",     LanguageCode = "ko-KR"}, 
 +            new TLanguageInfo() {LanguageNative = Resources.rsLangItalian,    LanguageEnglish = "Italian",    LanguageCode = "it-IT"}, 
 +            new TLanguageInfo() {LanguageNative = Resources.rsLangSpanish,    LanguageEnglish = "Spanish",    LanguageCode = "es-ES"}, 
 +            //new TLanguageInfo() {LanguageNative = Resources.rsLangPortuguese, LanguageEnglish = "Portuguese", LanguageCode = "pt-BR"}, 
 +            //new TLanguageInfo() {LanguageNative = Resources.rsLangRussian,    LanguageEnglish = "Russian",    LanguageCode = "ru-RU"}, 
 +            //new TLanguageInfo() {LanguageNative = Resources.rsLangTurkish,    LanguageEnglish = "Turkish",    LanguageCode = "tr-TR"}, 
 +            //new TLanguageInfo() {LanguageNative = Resources.rsLangPolish,     LanguageEnglish = "Polish",     LanguageCode = "pl-PL"}, 
 +        }; 
 +</code>         
 +  * Translate original English RESX strings using Google Translate and [[http://resxtranslatorbot.codeplex.com|Resx Translator Bot]]. 
 +  * [[swdev:dotnet:localization:Editing RESX Files with SimpleResxEditor]]. 
 +  * Build ezFIT project.  Localization files should be generated under ''//<rootEzFIT>//\src\ezFIT\bin\x86\Debug\//<langcode>//''.
 == Installer Localization== == Installer Localization==
 === Instructions for Developers === === Instructions for Developers ===
  * Open InnoSetup installer script.  * Open InnoSetup installer script.
- * Add a directive to define language: <code bash>+ * Create file entries for all application localization files to distribute: <file bash installer-ezfit.iss> 
 +[InstallDelete] 
 +. . . 
 +;--------------------------------------------------- 
 +; Localization files 
 +;--------------------------------------------------- 
 +Name: {app}\AHI.App.Localization.dll; Type: files 
 +Name: {app}\es\AHI.App.Localization.resources.dll; Type: files 
 +. . . 
 + 
 +[Files] 
 +. . . 
 +;--------------------------------------------------- 
 +; Localization files 
 +;--------------------------------------------------- 
 +Source: {#SrcAppDir}\AHI.App.Localization.resources.dll; DestDir: {app}; Flags: ignoreversion skipifsourcedoesntexist 
 +Source: {#SrcAppDir}\es\AHI.App.Localization.resources.dll; DestDir: {app}\es; Flags: ignoreversion skipifsourcedoesntexist 
 +. . . 
 +</file> 
 + * Add a directive to define language (in ''includes\sysutils.iss''): <file bash sysutils.iss>
 #if AppLangSupp == "<LanguageNameHere>" #if AppLangSupp == "<LanguageNameHere>"
   #define <LanguageNameHere>   #define <LanguageNameHere>
Line 16: Line 53:
   #define English   #define English
 #endif #endif
-</code+</file
- * Add Language resources under section ''[Languages]'': <code bash>+ * Add Language resources under section ''[Languages]'': <file bash sysutils.iss>
 [Languages] [Languages]
 #ifdef English #ifdef English
Line 25: Line 62:
 Name: <LanguageNameHere>; MessagesFile: compiler:Languages\<LanguageNameHere>.isl Name: <LanguageNameHere>; MessagesFile: compiler:Languages\<LanguageNameHere>.isl
 #endif #endif
-</code+</file
- * Add and translate resource strings under section ''[CustomMessages]'': <code bash>+ * Add and translate resource strings under section ''[CustomMessages]'': <file bash sysutils.iss>
 [CustomMessages] [CustomMessages]
 #ifdef English #ifdef English
Line 38: Line 75:
 ... ...
 #endif #endif
-</code>+</file> 
 + * Add and translate resource strings under section ''[CustomMessages]'' for the following files: 
 +    * ''installer-ezfit.iss'' 
 +    * ''includes\database.iss'' 
 +    * ''includes\net-framework.iss'' 
 +    * ''includes\noah-support.iss'' 
 +    * ''includes\sysutils.iss'' 
 +    * ''includes\user-registration.iss''
  
 === Instructions for Translators === === Instructions for Translators ===