'From etoys2.2 of 22 September 2007 [latest update: #1709] on 17 October 2007 at 2:42:45 am'! "Change Set: switchGetTextRT-KR Date: 17 October 2007 Author: Korakurider make EToys to use new translation stuff. Note that GetTextExporter2/Importer and LanguageEditor continue using legacy transation stuff even after this patch applied"! !Project methodsFor: 'language' stamp: 'KR 10/17/2007 02:36'! chooseNaturalLanguage "Put up a menu allowing the user to choose the natural language for the project" | aMenu availableLanguages item | aMenu _ MenuMorph new defaultTarget: self. aMenu addTitle: 'choose language' translated. aMenu lastItem setBalloonText: 'This controls the human language in which tiles should be viewed. It is potentially extensible to be a true localization mechanism, but initially it only works in the classic tile scripting system. Each project has its own private language choice' translated. Preferences noviceMode ifFalse:[aMenu addStayUpItem]. availableLanguages := NaturalLanguageTranslator2 availableLanguageLocaleIDs asSortedCollection:[:x :y | x displayName < y displayName]. availableLanguages do: [:localeID | item _ aMenu addUpdating: #stringForLanguageNameIs: target: Locale selector: #switchAndInstallFontToID:gently: argumentList: {localeID. true} extraIcon: (Locale localeID: localeID) iconForNativeLanguage. item wordingArgument: localeID.]. aMenu popUpInWorld "Project current chooseNaturalLanguage"! ! !String methodsFor: 'translating' stamp: 'KR 10/17/2007 02:40'! translatedTo: localeID "answer the receiver translated to the given locale id" ^ self translatedTo: localeID inDomain: TextDomainManager defaultDomain! ! !String methodsFor: 'translating' stamp: 'KR 10/17/2007 02:39'! translatedTo: localeID inDomain: aDomainName "answer the receiver translated to the given locale id in the textdomain" ^ NaturalLanguageTranslator2 translate: self toLocaleID: localeID inDomain: aDomainName! !