13 languageTextModifiedHolder languageTextAcceptHolder |
13 languageTextModifiedHolder languageTextAcceptHolder |
14 inSingleFileMode lastExtractedProject lastLanguage |
14 inSingleFileMode lastExtractedProject lastLanguage |
15 lastSelectedKey autoAcceptHolder languageEditor |
15 lastSelectedKey autoAcceptHolder languageEditor |
16 selectedColIndexHolder exampleLanguageSelectionHolder |
16 selectedColIndexHolder exampleLanguageSelectionHolder |
17 exampleLanguageTextHolder pastePreviousTranslationEnableHolder |
17 exampleLanguageTextHolder pastePreviousTranslationEnableHolder |
18 searchForSimilarTranslationEnableHolder' |
18 searchForSimilarTranslationEnableHolder alwaysWriteUTF8Holder' |
19 classVariableNames:'LastExtractedClass LastExtractedApplicationClass |
19 classVariableNames:'LastExtractedClass LastExtractedApplicationClass |
20 LastExtractedProject' |
20 LastExtractedProject' |
21 poolDictionaries:'' |
21 poolDictionaries:'' |
22 category:'Interface-UIPainter' |
22 category:'Interface-UIPainter' |
23 ! |
23 ! |
644 selectedTranslation notNil ifTrue:[self languageTextHolderValue: selectedTranslation]. |
654 selectedTranslation notNil ifTrue:[self languageTextHolderValue: selectedTranslation]. |
645 ! ! |
655 ! ! |
646 |
656 |
647 !InternationalLanguageTranslationEditor methodsFor:'aspects'! |
657 !InternationalLanguageTranslationEditor methodsFor:'aspects'! |
648 |
658 |
|
659 alwaysWriteUTF8Holder |
|
660 alwaysWriteUTF8Holder isNil ifTrue:[alwaysWriteUTF8Holder := true asValue]. |
|
661 ^ alwaysWriteUTF8Holder |
|
662 ! |
|
663 |
649 autoAcceptHolder |
664 autoAcceptHolder |
650 autoAcceptHolder isNil ifTrue:[autoAcceptHolder := true asValue]. |
665 autoAcceptHolder isNil ifTrue:[autoAcceptHolder := true asValue]. |
651 ^ autoAcceptHolder |
666 ^ autoAcceptHolder |
652 ! |
667 ! |
653 |
668 |
981 addLanguage |
996 addLanguage |
982 |lang| |
997 |lang| |
983 |
998 |
984 lang := Dialog request:'New language (ISO symbol):'. |
999 lang := Dialog request:'New language (ISO symbol):'. |
985 lang isEmptyOrNil ifTrue:[^ self]. |
1000 lang isEmptyOrNil ifTrue:[^ self]. |
986 |
1001 lang := lang asSymbol. |
987 (keyStringsToLanguageMappings includesLanguage:lang) ifTrue:[^ self ]. |
1002 (keyStringsToLanguageMappings includesLanguage:lang) ifTrue:[^ self ]. |
988 |
1003 |
989 keyStringsToLanguageMappings addLanguage:lang. |
1004 keyStringsToLanguageMappings addLanguage:lang. |
990 self languagesList add:lang. |
1005 self languagesList add:lang. |
991 self shownLanguages add:lang. |
1006 self shownLanguages add:lang. |
1075 self readResourceFile:aFilename |
1090 self readResourceFile:aFilename |
1076 ! |
1091 ! |
1077 |
1092 |
1078 menuSave |
1093 menuSave |
1079 "Saves the language selected in the fileName from where the language resource was obtained." |
1094 "Saves the language selected in the fileName from where the language resource was obtained." |
1080 |lang aFilename| |
1095 |lang| |
1081 |
1096 |
1082 lang := self requestLanguage. |
1097 lang := self requestLanguage. |
1083 lang isNil ifTrue:[^ self]. |
1098 lang isNil ifTrue:[^ self]. |
1084 aFilename := keyStringsToLanguageMappings filenameAt:lang. |
1099 self saveLanguage: lang |
1085 aFilename isNil ifTrue:[ |
1100 ! |
1086 aFilename := self requestFilename. |
1101 |
1087 aFilename isNil ifTrue:[^ self]. |
1102 menuSaveAll |
1088 ]. |
1103 "Saves all the languages in the fileName from where the language resource was obtained." |
1089 self saveResourceFile:aFilename for:lang asSymbol |
1104 keyStringsToLanguageMappings languagesInUse do:[:each | self saveLanguage: each]. |
1090 ! |
1105 ! |
1091 |
1106 |
1092 menuSaveAs |
1107 menuSaveAs |
1093 "Saves the language selected in the specified fileName." |
1108 "Saves the language selected in the specified fileName." |
1094 |lang aFilename| |
1109 |lang aFilename| |
1095 |
1110 |
1096 lang := self requestLanguage. |
1111 lang := self requestLanguage. |
1097 lang isNil ifTrue:[^ self]. |
1112 lang isNil ifTrue:[^ self]. |
1098 aFilename := self requestFilename. |
1113 aFilename := self requestFilenameFor:lang. |
1099 aFilename isNil ifTrue:[^ self]. |
1114 aFilename isNil ifTrue:[^ self]. |
1100 self saveResourceFile:aFilename for:lang asSymbol |
1115 self saveResourceFile:aFilename for:lang asSymbol |
1101 ! |
1116 ! |
1102 |
1117 |
1103 openAboutThisApplication |
1118 openAboutThisApplication |
1579 ^true |
1594 ^true |
1580 ! ! |
1595 ! ! |
1581 |
1596 |
1582 !InternationalLanguageTranslationEditor methodsFor:'read/write resourceFile'! |
1597 !InternationalLanguageTranslationEditor methodsFor:'read/write resourceFile'! |
1583 |
1598 |
|
1599 encoderAt: lang |
|
1600 |
|
1601 self alwaysWriteUTF8Holder value ifTrue:[^CharacterEncoder encoderForUTF8]. |
|
1602 ^keyStringsToLanguageMappings encoderAt: lang. |
|
1603 ! |
|
1604 |
1584 printEditingWarningOn: aStream |
1605 printEditingWarningOn: aStream |
1585 |
1606 |
1586 aStream nextPutAll: ';'; |
1607 aStream nextPutAll: ';'; |
1587 cr; |
1608 cr; |
1588 nextPutAll: '; WARNING:'; |
1609 nextPutAll: '; WARNING:'; |
1597 ! |
1618 ! |
1598 |
1619 |
1599 printEncoderFor: lang on: aStream |
1620 printEncoderFor: lang on: aStream |
1600 |characterEncoder encoderString| |
1621 |characterEncoder encoderString| |
1601 |
1622 |
1602 characterEncoder := keyStringsToLanguageMappings encoderAt: lang. |
1623 characterEncoder := self encoderAt: lang. |
1603 encoderString := characterEncoder isNil |
1624 encoderString := characterEncoder isNil |
1604 ifTrue:[self requestEncoderStringFor: lang] |
1625 ifTrue:[self requestEncoderStringFor: lang] |
1605 ifFalse:[characterEncoder nameOfEncoding printString]. |
1626 ifFalse:[characterEncoder nameOfEncoding printString]. |
1606 |
1627 |
1607 aStream nextPutAll: '#encoding'; |
1628 aStream nextPutAll: '#encoding'; |
1618 self printLanguageMappingsFor: lang on: aStream. |
1639 self printLanguageMappingsFor: lang on: aStream. |
1619 ! |
1640 ! |
1620 |
1641 |
1621 printLanguageMappingsFor: lang on: aStream |
1642 printLanguageMappingsFor: lang on: aStream |
1622 |
1643 |
1623 |orderedAssociations maxKeySize| |
1644 |orderedAssociations maxKeySize characterEncoder| |
1624 |
1645 |
|
1646 characterEncoder := self encoderAt: lang. |
|
1647 characterEncoder isNil ifTrue:[ characterEncoder := CharacterEncoder::NullEncoder ]. |
1625 orderedAssociations := keyStringsToLanguageMappings orderedLanguageMappingsAssociationsFor: lang. |
1648 orderedAssociations := keyStringsToLanguageMappings orderedLanguageMappingsAssociationsFor: lang. |
1626 |
1649 |
1627 maxKeySize := keyStringsToLanguageMappings maxKeySizeForLanguage: lang. |
1650 maxKeySize := keyStringsToLanguageMappings maxKeySizeForLanguage: lang. |
1628 |
1651 |
1629 orderedAssociations do:[:association | |
1652 orderedAssociations do:[:association | |
1630 aStream nextPutAll: (association key storeString paddedTo: maxKeySize) ; |
1653 aStream nextPutAll: (association key storeString paddedTo: maxKeySize) ; |
1631 nextPutAll: (String new: 10); |
1654 nextPutAll: (String new: 10); |
1632 nextPutAll: association value storeString; |
1655 nextPutAll: (characterEncoder encodeString: association value) storeString; |
1633 cr. |
1656 cr. |
1634 ]. |
1657 ]. |
1635 ! |
1658 ! |
1636 |
1659 |
1637 readResourceFile:aFilename asLanguage:lang |
1660 readResourceFile:aFilename asLanguage:lang |
1677 remainingKeys do:[:k | |
1700 remainingKeys do:[:k | |
1678 keyStringsToLanguageMappings at:k language:lang put:(resourcePack at:k) |
1701 keyStringsToLanguageMappings at:k language:lang put:(resourcePack at:k) |
1679 ]. |
1702 ]. |
1680 ! |
1703 ! |
1681 |
1704 |
|
1705 saveLanguage: lang |
|
1706 "Saves the language in the fileName from where the language resource was obtained." |
|
1707 |aFilename| |
|
1708 |
|
1709 lang isNil ifTrue:[^ self]. |
|
1710 aFilename := keyStringsToLanguageMappings filenameAt:lang. |
|
1711 aFilename isNil ifTrue:[ |
|
1712 aFilename := self requestFilenameFor: lang. |
|
1713 aFilename isNil ifTrue:[^ self]. |
|
1714 ]. |
|
1715 self saveResourceFile:aFilename for:lang asSymbol |
|
1716 ! |
|
1717 |
1682 saveResourceFile: aFilename for: lang |
1718 saveResourceFile: aFilename for: lang |
1683 |
1719 |
1684 |aStream | |
1720 |aStream | |
1685 |
1721 |
1686 keyStringsToLanguageMappings atLanguage: lang putFilename: aFilename. |
1722 keyStringsToLanguageMappings atLanguage: lang putFilename: aFilename. |
1879 ^self perLanguageInfo at: lang ifAbsentPut:[Dictionary new] |
1915 ^self perLanguageInfo at: lang ifAbsentPut:[Dictionary new] |
1880 ! |
1916 ! |
1881 |
1917 |
1882 languages |
1918 languages |
1883 ^ languages |
1919 ^ languages |
|
1920 ! |
|
1921 |
|
1922 languagesInUse |
|
1923 "Returns a collection of symbols for the languages that have mappings" |
|
1924 |
|
1925 ^self languages select:[:each | (self atLanguage: each) notEmpty] |
1884 ! |
1926 ! |
1885 |
1927 |
1886 orderedLanguageMappingsAssociationsFor: language |
1928 orderedLanguageMappingsAssociationsFor: language |
1887 "Returns a collection of languageMappings associations (alphabetically ordered by keys) " |
1929 "Returns a collection of languageMappings associations (alphabetically ordered by keys) " |
1888 ^(self atLanguage: language) associations asSortedCollection:[:a :b | a key < b key]. |
1930 ^(self atLanguage: language) associations asSortedCollection:[:a :b | a key < b key]. |