Tools__InternationalLanguageTranslationEditor.st
changeset 3640 278e1952a646
parent 3639 e8a2e6f41121
child 3641 507f252953da
equal deleted inserted replaced
3639:e8a2e6f41121 3640:278e1952a646
  1040 openOnPackage:aPackageId
  1040 openOnPackage:aPackageId
  1041     |editor|
  1041     |editor|
  1042     
  1042     
  1043     ^ (editor := self new)
  1043     ^ (editor := self new)
  1044         allButOpen;
  1044         allButOpen;
  1045         readResourceFileForPackage:aPackageId;
  1045         readResourceFileForPackage:aPackageId language:#all;
  1046         openWindow;
  1046         openWindow;
  1047         yourself.
  1047         yourself.
  1048 
  1048 
  1049     "Modified: / 20-02-2019 / 12:06:33 / Claus Gittinger"
  1049     "Modified: / 20-02-2019 / 12:20:59 / Claus Gittinger"
  1050 ! !
  1050 ! !
  1051 
  1051 
  1052 !InternationalLanguageTranslationEditor class methodsFor:'tableColumns specs'!
  1052 !InternationalLanguageTranslationEditor class methodsFor:'tableColumns specs'!
  1053 
  1053 
  1054 keyTableColumn
  1054 keyTableColumn
  2083 
  2083 
  2084     "Modified (format): / 20-02-2019 / 11:52:39 / Claus Gittinger"
  2084     "Modified (format): / 20-02-2019 / 11:52:39 / Claus Gittinger"
  2085 !
  2085 !
  2086 
  2086 
  2087 readResourceFileForPackage:aPackage
  2087 readResourceFileForPackage:aPackage
  2088     |allLanguages lang packageDir resourceDir langFile|
  2088     |allLanguages lang packageDir resourceDir|
  2089 
  2089 
  2090     packageDir := Smalltalk packageDirectoryForPackageId:aPackage.
  2090     packageDir := Smalltalk packageDirectoryForPackageId:aPackage.
  2091     resourceDir := packageDir asFilename construct:'resources'.
  2091     resourceDir := packageDir asFilename construct:'resources'.
  2092     resourceDir exists ifFalse:[
  2092     resourceDir exists ifFalse:[
  2093         Dialog information:'No resource directory present for package: ',aPackage.
  2093         Dialog information:'No resource directory present for package: ',aPackage.
  2115         values:#(all)
  2115         values:#(all)
  2116         lines:10
  2116         lines:10
  2117         cancel:nil.
  2117         cancel:nil.
  2118 
  2118 
  2119     lang isNil ifTrue:[^ self ].
  2119     lang isNil ifTrue:[^ self ].
  2120 
  2120     self readResourceFileForPackage:aPackage language:lang
  2121     langFile := resourceDir construct:lang,'.rs'.
  2121 
  2122 
  2122     "Modified: / 20-02-2019 / 12:20:35 / Claus Gittinger"
  2123     lang == #all ifTrue:[
  2123 !
       
  2124 
       
  2125 readResourceFileForPackage:aPackage language:lang
       
  2126     "lang may be a language (de, en) or #all"
       
  2127 
       
  2128     |allLanguages packageDir resourceDir langFile|
       
  2129 
       
  2130     packageDir := Smalltalk packageDirectoryForPackageId:aPackage.
       
  2131     resourceDir := packageDir asFilename construct:'resources'.
       
  2132     resourceDir exists ifFalse:[
       
  2133         Dialog information:'No resource directory present for package: ',aPackage.
       
  2134         ^ self
       
  2135     ].    
       
  2136 
       
  2137     lang = #all ifTrue:[
       
  2138         allLanguages := Set new.
       
  2139         resourceDir directoryContentsAsFilenamesDo:[:eachFile |
       
  2140             eachFile suffix = 'rs' ifTrue:[
       
  2141                 (('##.rs' match:eachFile baseName)
       
  2142                 or:[('##-##.rs' match:eachFile baseName)]) ifTrue:[
       
  2143                     allLanguages add:(eachFile withoutSuffix baseName)
       
  2144                 ].
       
  2145             ].
       
  2146         ].
       
  2147 
       
  2148         allLanguages addAll:languagesList.
       
  2149         allLanguages := allLanguages asSortedCollection.
       
  2150 
  2124         allLanguages do:[:lang |
  2151         allLanguages do:[:lang |
  2125             self addLanguage:lang.
  2152             self addLanguage:lang.
  2126             self readResourceFile:(resourceDir construct:lang,'.rs') asLanguage:lang.
  2153             self readResourceFile:(resourceDir construct:lang,'.rs') asLanguage:lang.
  2127         ].
  2154         ].
  2128     ] ifFalse:[
  2155     ] ifFalse:[
       
  2156         langFile := resourceDir construct:lang,'.rs'.
  2129         self readResourceFile:langFile asLanguage:lang asSymbol
  2157         self readResourceFile:langFile asLanguage:lang asSymbol
  2130     ].
  2158     ].
  2131     self window label:('%1: %2' bindWith:self class nameWithoutPrefix with:aPackage)
  2159     self window label:('%1: %2' bindWith:self class nameWithoutPrefix with:aPackage)
  2132 
  2160 
  2133     "Modified: / 20-02-2019 / 11:45:50 / Claus Gittinger"
  2161     "Created: / 20-02-2019 / 12:20:02 / Claus Gittinger"
  2134 !
  2162 !
  2135 
  2163 
  2136 removeLanguage
  2164 removeLanguage
  2137     |languagesToRemove|
  2165     |languagesToRemove|
  2138 
  2166