Tools__InternationalLanguageTranslationEditor.st
author Claus Gittinger <cg@exept.de>
Thu, 31 Oct 2019 02:29:24 +0100
changeset 3800 fb1763b613bf
parent 3764 e140f846dccf
child 3805 fff73fd2a61a
permissions -rw-r--r--
#QUALITY by exept class: ShowMeHowItWorks added: #chooseBestComponentFrom: #click:clickTime: changed: #click:inComponent:clickTime: #findComponent:in: #freezePin:ofStep:with: #selectPin:ofStep:
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
3764
e140f846dccf #QUALITY by exept
Claus Gittinger <cg@exept.de>
parents: 3744
diff changeset
     1
"{ Encoding: utf8 }"
e140f846dccf #QUALITY by exept
Claus Gittinger <cg@exept.de>
parents: 3744
diff changeset
     2
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     3
"{ Package: 'stx:libtool2' }"
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     4
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     5
"{ NameSpace: Tools }"
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     6
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     7
ApplicationModel subclass:#InternationalLanguageTranslationEditor
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     8
	instanceVariableNames:'languagesList keyStringsToLanguageMappings languageTextHolder
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     9
		originalTextHolder modified shownLanguages selectedKeyRow
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    10
		showMissingTranslationsOnly
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    11
		keyStringAndLanguageSelectionTableColumnDescriptionHolder
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    12
		languageShownHolders dataSetView lastExtractedClass
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    13
		lastExtractedApplicationClass stopApplicationIconVisibleHolder
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    14
		monitoredApplication originalTextModifiedHolder
2048
dcec4e818069 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2047
diff changeset
    15
		languageTextModifiedHolder languageTextAcceptHolder
dcec4e818069 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2047
diff changeset
    16
		inSingleFileMode lastExtractedProject lastLanguage
2050
fm
parents: 2049
diff changeset
    17
		lastSelectedKey autoAcceptHolder languageEditor
fm
parents: 2049
diff changeset
    18
		selectedColIndexHolder exampleLanguageSelectionHolder
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
    19
		exampleLanguageTextHolder pastePreviousTranslationEnableHolder
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
    20
		searchForSimilarTranslationEnableHolder alwaysWriteUTF8Holder
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
    21
		lastNameSpace pasteOriginalEnableHolder ignoreCaseHolder
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
    22
		closeSearchBar searchTextModifiedHolder searchNextText
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
    23
		searchBarImageInfoLabelHolder searchPreviousText searchBoxVisible
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
    24
		searchBarInfoLabelHolder searchTextHolder searchTextView
3286
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
    25
		searchBoxView translationsPanel lastPackage methodsUsingKey'
2032
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
    26
	classVariableNames:'LastExtractedClass LastExtractedApplicationClass
2410
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
    27
		LastExtractedProject LastProject'
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    28
	poolDictionaries:''
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    29
	category:'Interface-UIPainter'
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    30
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    31
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    32
Object subclass:#AccessCollectingPseudoResourcePack
3286
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
    33
	instanceVariableNames:'collectedKeys realResourcePack watchingTranslationEditor'
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    34
	classVariableNames:''
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    35
	poolDictionaries:''
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    36
	privateIn:InternationalLanguageTranslationEditor
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    37
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    38
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    39
Collection subclass:#KeyStringsToLanguageMappings
2032
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
    40
	instanceVariableNames:'keys keyInfo perLanguageInfo perLanguageMappings languageMappings
2049
d10762e5d924 *** empty log message ***
fm
parents: 2048
diff changeset
    41
		languages rowPerKey'
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    42
	classVariableNames:''
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    43
	poolDictionaries:''
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    44
	privateIn:InternationalLanguageTranslationEditor
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    45
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    46
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    47
Object subclass:#LanguageMappingRow
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    48
	instanceVariableNames:'key mappings'
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    49
	classVariableNames:''
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    50
	poolDictionaries:''
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    51
	privateIn:InternationalLanguageTranslationEditor
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    52
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    53
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    54
Visitor subclass:#UISpecVisitor
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    55
	instanceVariableNames:'translatedLabels'
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    56
	classVariableNames:''
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    57
	poolDictionaries:''
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    58
	privateIn:InternationalLanguageTranslationEditor
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    59
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    60
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    61
!InternationalLanguageTranslationEditor class methodsFor:'documentation'!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    62
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    63
documentation
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    64
"
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    65
    documentation to be added.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    66
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    67
    [author:]
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
    68
	cg (cg@FUSI)
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    69
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    70
    [instance variables:]
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    71
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    72
    [class variables:]
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    73
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    74
    [see also:]
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    75
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    76
"
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    77
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    78
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    79
examples
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    80
"
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    81
  Starting the application:
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
    82
								[exBegin]
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    83
    InternationalLanguageTranslationEditor open
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    84
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
    85
								[exEnd]
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    86
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    87
  more examples to be added:
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
    88
								[exBegin]
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
    89
    ... add code fragment for
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    90
    ... executable example here ...
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
    91
								[exEnd]
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    92
"
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    93
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    94
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    95
history
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    96
    "Created: / 04-03-2006 / 09:07:19 / cg"
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    97
! !
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    98
3286
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
    99
!InternationalLanguageTranslationEditor class methodsFor:'help spec'!
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
   100
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   101
helpSpec
3286
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
   102
    <resource: #help>
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
   103
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   104
    ^ super helpSpec addPairsFrom:#(
3286
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
   105
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
   106
#searchBox
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
   107
'Show a search box at the bottom to search for substrings in the string keys'
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
   108
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
   109
#browseReferringMethods
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
   110
'Browse methods which refer to this string'
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
   111
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
   112
)
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
   113
! !
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
   114
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   115
!InternationalLanguageTranslationEditor class methodsFor:'image specs'!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   116
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   117
closeSearchBarIcon
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   118
    "This resource specification was automatically generated
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   119
     by the ImageEditor of ST/X."
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   120
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   121
    "Do not manually edit this!! If it is corrupted,
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   122
     the ImageEditor may not be able to read the specification."
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   123
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   124
    "
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   125
     self closeSearchBar inspect
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   126
     ImageEditor openOnClass:self andSelector:#closeSearchBar
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   127
     Icon flushCachedIcons
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   128
    "
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   129
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   130
    <resource: #image>
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   131
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   132
    ^Icon
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
   133
	constantNamed:#'Psiware::SystemManagement class closeSearchBar'
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
   134
	ifAbsentPut:[(Depth8Image new) width: 22; height: 22; photometric:(#palette); bitsPerSample:(#[8]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   135
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@GQ\SD1LSD1LSD1LSD1LWGP@@@@@@
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   136
@ATGA@HA@PDA@PDA@PHDA1T@@@@@@@@TAENG!!(VB XA?_''57QPPT@@@@@@@@E NJ^V)&X%)UTT5IV7 KE @@@@@@@A A"7Q,#&9VS%^MQ$E<DQ @@@@@@@@Z
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   137
@X%-#9NRX52R$80:^1@Z@@@@@@@@F0FHY6>R$9JR$9ION''(PF0@@@@@@@A<A 5ABT)FS$9D=KR13C1<@@@@@@@@)@WUCND*Q$9NQM"T!!XP8)@@@@@@@@K E2
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   138
O4RQ$9FQ$9@2G%8JK @@@@@@@CLA\S2D$9D9M)BS]!!1]BSL@@@@@@@@7@W@5LXP6J2\2]"P"VP 7@@@@@@@@O U+R3@*I2T#HA0&N5 RO @@@@@@@D LPF%(
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   139
YVQ W59]VU 4CD @@@@@@@AGFP4F@PDA@PDA@PDFCQ%G@@@@@@@@K41TUEQTUEQTUEQTUEQLK0@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   140
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a') ; colorMapFromArray:#[0 0 0 167 25 15 170 49 40 171 50 39 174 68 60 176 56 48 176 58 49 183 118 110 184 45 32 184 46 32 184 47 34 184 71 58 184 85 78 184 86 79 185 53 39 186 57 42 186 59 43 186 60 45 186 68 58 190 187 180 192 188 181 193 189 182 194 190 183 195 192 184 197 194 186 202 148 142 202 199 191 205 202 195 207 64 48 207 203 195 208 65 49 208 205 198 209 65 49 209 66 49 209 69 52 210 66 49 210 78 64 211 67 51 211 71 54 212 69 51 212 208 200 212 208 202 213 69 52 213 70 52 213 79 57 215 80 59 215 212 206 217 214 207 218 79 62 218 84 67 219 107 95 219 216 210 221 84 63 221 84 67 221 109 96 221 218 213 222 76 56 222 110 96 222 113 79 223 87 67 223 87 70 223 115 99 224 221 216 225 89 72 225 105 91 225 117 84 227 89 64 227 91 73 227 112 98 227 115 95 227 122 92 227 224 219 227 225 219 228 113 83 228 113 99 229 102 87 229 226 221 230 115 84 230 117 81 230 142 117 231 102 80 231 116 86 231 120 103 231 131 119 231 228 224 232 118 88 232 119 82 233 143 117 234 99 76 234 102 79 234 119 89 234 127 100 234 145 119 235 104 82 235 106 86 236 108 89 236 110 92 236 113 92 236 121 91 236 146 119 237 113 95 237 115 98 237 122 92 237 132 100 238 117 101 238 119 104 238 123 93 238 123 109 238 131 98 238 133 102 238 146 120 238 148 121 239 125 112 239 127 115 239 129 118 239 131 105 239 134 102 240 135 122 240 200 196 242 135 113 242 141 116 242 141 119 242 145 116 242 147 118 242 148 120 243 137 115 243 138 118 243 141 121 243 142 123 243 144 126 243 145 129 243 151 134 243 202 197 244 147 132 244 149 135 244 152 137 244 163 142 244 164 145 245 160 143 245 164 146 245 213 204 246 213 203 248 215 205 249 215 206 252 244 243 253 244 243 253 247 245 255 255 255]; mask:((Depth1Image new) width: 22; height: 22; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@@@@@G?? G?? G?? G?? G?? G?? G?? G?? G?? G?? G?? G?? G?? G?? G?? G?? @@@@@@@@@@@@') ; yourself); yourself]
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   141
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   142
    "Created: / 15-06-2007 / 18:04:38 / Administrador"
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   143
!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   144
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   145
restartSearchBarIcon
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   146
    "This resource specification was automatically generated
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   147
     by the ImageEditor of ST/X."
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   148
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   149
    "Do not manually edit this!! If it is corrupted,
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   150
     the ImageEditor may not be able to read the specification."
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   151
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   152
    "
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   153
     self restartSearchBarIcon inspect
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   154
     ImageEditor openOnClass:self andSelector:#restartSearchBarIcon
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   155
     Icon flushCachedIcons
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   156
    "
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   157
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   158
    <resource: #image>
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   159
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   160
    ^Icon
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
   161
	constantNamed:#'Psiware::SystemManagement class restartSearchBarIcon'
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
   162
	ifAbsentPut:[(Depth24Image new) width: 20; height: 20; photometric:(#rgb); bitsPerSample:(#[8 8 8]); samplesPerPixel:(3); bits:(ByteArray fromPackedString:'
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   163
@@@@@@@@@@@@@@@@@@@@@@@@?>SX?>''V?>;)?>O!!?>G]?>WY@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?=3\:[>''5;JF/Y-.+XY),(U.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   164
6JZK?=J1?>V<>.+I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?>?'':+:!!19]U6*-Q?]Y/?>RC?>*!!?>F_>+=939UL2Y!!L>MJT??W[@@@@@@@@@@@@@@@@@@@@
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   165
@@@@??[-=\^&1IEP=<Q[?>1/?=5$?=52?>NT?=^Q?>BP?>FG>;1]6JEO8;^H?]3I@@@@@@@@@@@@@@@@@@@@?\*95Y-)<+!!$??.F?>)17+-U8,E40Y-.09I)
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   166
:Z1-?=I??=)8?<1.>K597;NL??K,@@@@@@@@@@@@?=#M6I>B>+:@?>2U=,]]5[IN7,^C5LB[<MWL?]#O=,BZ7)=\>;Y[??FP?=>O1YEW8<B$;=WH@@@@@@@@
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   167
>,"%8Z:A?>N#?>._5KA$9-JW7=+FX6M+V%U3"''*T0Y>V4ZA7595T=;1"?=&D?=&L,W(93IU\:KE9=LBG9[Q9;K1<?=^R:K591*-6??''[@@@@RE%37>7?=?/?
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   168
>^_''3*.M0YAU<K5,?>ZO?=>G?<!!6?<Y6>+U(69YI3:IG?=Z@?>NU5:=19,6%@@@@@@@@OU5*2.+7;O??5-KF2;JS?=*&?>&"?=.E?>2R?=&F?>"X8I-N5)ED
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   169
29$&?>M:?=*F3:E&>]/A@@@@@@@@O5=.7O??5^/(?O++<M.>0I-/;LNE??2)?=&B?>^%,W)A8:14?=FX3)TR?>U/?=Q:3IAZ?=?T@@@@@@@@P5Y68_#?7.70
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   170
??[1??C_:,F%6;A=>MJA?>6":,6+&G91?>+^?>+]79<$?<1\?=:C5IM[?<;F@@@@@@@@Q$1>6N_?<?+?<.W.?>3*??S(=,.(2Z!!#=-:^+9>P4,[P<>''46=O^
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   171
=+MX;Z)O?>^Q:Z]*;+Z''@@@@@@@@TD:O9^/?;/C??>???>/:?>71?>7Z;]^%0+JA7=CI8]O"0+[D8=#&?<&V79="?=2L?\E88[BG@@@@@@@@VU&M=_3?9N''?
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   172
>/C???K??NK/??[1???#9M?B??3;(IV#/[WD;^_5@@@@;KR]<[10?=Q68[9,8,>W@@@@TU9&;/??9__9:.;/?_#<??/?>?[==?79>_?=<_S9T5M[0,WN7^G*
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   173
@@@@@@@@1Y= >=!!>9,]-3[],6]B''TEH=;O_''=O?6>O77>O''=>//?=_+?:O_?:_''?>O??SEM[/<[P6.O,@@@@@@@@8-F%1*%/9[>@?>R(7+VG_%,;\E]CW$=H
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   174
U5AWV5%.U5);R5M:Q5M;S%-=TE]*[GI>):696M;*@@@@@@@@@@@@6\F[2Y914)9.;[VF?L"!!8[^_3J>''0KB:0;?V0,_''-<C),K/(,;7!!+[OI,K[D2=G_9N+8
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   175
@@@@@@@@@@@@@@@@@@@@?\*_7*]>3))5/II9+9FF+9> 0;7I5-#-7NO?7^#?8^/?:/G?7NK07>W3@@@@@@@@@@@@@@@@@@@@@@@@?>N;?>N;?=:9?>7T?>#X
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   176
>^_%=N?6<OK?@@@@@@@@@@@@@@@@@@@@@@@@@@@@') ; mask:((Depth1Image new) width: 20; height: 20; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@?@OC?0OO?8O_?<O_?>O???O?????_??>_??>_??>_??>_??>_??>_??__??O???O???G???A??/A? O') ; yourself); yourself]
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   177
!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   178
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   179
searchNextIcon
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   180
    "This resource specification was automatically generated
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   181
     by the ImageEditor of ST/X."
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   182
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   183
    "Do not manually edit this!! If it is corrupted,
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   184
     the ImageEditor may not be able to read the specification."
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   185
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   186
    "
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   187
     self searchNextIcon inspect
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   188
     ImageEditor openOnClass:self andSelector:#searchNextIcon
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   189
     Icon flushCachedIcons
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   190
    "
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   191
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   192
    <resource: #image>
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   193
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   194
    ^Icon
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
   195
	constantNamed:#'Psiware::SystemManagement class searchNextIcon'
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
   196
	ifAbsentPut:[(Depth8Image new) width: 22; height: 22; photometric:(#palette); bitsPerSample:(#[8]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   197
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ZE)ZZ@@@@@@@@@@@@@@@
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   198
@@@@@@AFF XA@PXUQ @@@@@@@@@@@@@@@@@*@Q5G^WX6E0D*@@@@@@@@@@@@@@@,AVQ?\&1#W&X8@20@@@@@@@@@@@A[@U==\F-"VUQOUSLAV0@@@@@@@@@@
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   199
G19-D <NCP0KB!!@7D1<@@@@@@@@@  ]MT5JY&Y&Y&Y%RLR4G  @@@@@@@H\A WL $)&Y&Y&RF35B@X\@@@@@@@BK@XA1WA"X&Y&XE#T:P@FK@@@@@@@@# !!H
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   200
]F$<II&YH3H>N2 H# @@@@@@@@@''GG)*Y2$9NRIDO4DQHP@@@@@@@@@@!!@EP[6U]I"UIQTL.@XP@@@@@@@@@@@ALAD-.XE]VS$(/@$0@@@@@@@@@@@@@@EDA
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   201
FSQ!!VC@T@UD@@@@@@@@@@@@@@@@@#R,I@PDIJ84@@@@@@@@@@@@@@@@@@@@@%)^W% @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   202
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a') ; colorMapFromArray:#[0 0 0 48 54 77 55 63 87 56 64 89 57 67 90 59 67 90 64 69 89 71 74 92 72 76 96 76 81 100 80 89 118 82 90 119 83 91 120 84 92 122 86 94 123 87 96 124 89 97 126 92 104 132 97 106 136 97 110 138 97 112 138 100 102 112 101 107 130 104 118 144 105 113 135 105 124 146 107 109 118 107 116 144 110 127 148 112 126 148 113 129 148 117 119 129 118 130 156 119 123 133 125 140 174 127 131 146 127 132 148 127 146 178 130 151 181 131 132 143 133 149 185 133 152 182 134 134 138 137 140 150 138 138 142 139 156 191 141 160 195 143 164 199 143 169 198 144 157 197 144 158 197 152 173 208 153 184 209 155 167 210 156 180 208 157 179 215 157 180 211 160 162 171 160 173 216 160 174 216 160 182 214 161 173 217 161 174 217 161 176 219 161 179 220 161 180 220 163 182 222 163 184 222 164 182 222 164 184 223 166 164 161 166 189 212 166 194 211 167 190 228 167 194 229 167 200 221 169 170 174 169 195 212 169 196 232 170 181 228 170 203 221 171 171 176 171 173 182 171 193 220 173 182 232 173 192 232 173 200 234 175 206 239 175 210 240 176 188 237 178 175 168 178 175 173 178 202 234 178 206 240 179 195 238 180 205 223 180 214 243 180 216 244 181 193 242 181 195 239 181 204 223 181 212 243 182 206 242 182 209 243 184 180 173 184 211 244 184 215 245 185 198 246 185 200 244 188 215 233 188 225 249 189 226 249 190 206 250 190 219 248 191 209 249 191 217 248 191 222 248 192 188 181 192 221 249 194 190 184 195 191 184 196 226 251 196 232 251 199 196 189 202 198 191 202 226 253 203 199 193 203 229 253 203 237 252 203 237 253 204 202 196 206 202 195 206 205 204 207 203 196 208 204 197 208 205 201 212 208 200 212 208 201 212 208 202 212 209 205 213 210 202 213 212 213 214 211 206 215 212 207 216 213 206 218 215 210 220 221 223 221 219 214 222 219 215 222 220 215 230 228 225 236 235 232 243 243 244 255 255 255]; mask:((Depth1Image new) width: 22; height: 22; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@C@@@C@@@C@G C@_8C@?<CA?>CC??CC??CG??#G??#G??#G??#C??CC??CA?>C@?<C@_8C@G C@@@C@@@C@@@C') ; yourself); yourself]
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   203
!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   204
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   205
searchPreviousIcon
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   206
    "This resource specification was automatically generated
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   207
     by the ImageEditor of ST/X."
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   208
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   209
    "Do not manually edit this!! If it is corrupted,
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   210
     the ImageEditor may not be able to read the specification."
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   211
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   212
    "
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   213
     self searchPreviousIcon inspect
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   214
     ImageEditor openOnClass:self andSelector:#searchPreviousIcon
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   215
     Icon flushCachedIcons
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   216
    "
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   217
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   218
    <resource: #image>
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   219
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   220
    ^Icon
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
   221
	constantNamed:#'Psiware::SystemManagement class searchPreviousIcon'
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
   222
	ifAbsentPut:[(Depth8Image new) width: 22; height: 22; photometric:(#palette); bitsPerSample:(#[8]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   223
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%)^W% @@@@@@@@@@@@@@
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   224
@@@@@@BMJ0$A@P$+#P@@@@@@@@@@@@@@@@AQ@Q$4XU 0E@EQ@@@@@@@@@@@@@@ALAD-.XE]VS$(/@$0@@@@@@@@@@@BD@UA/YU4&IT%EP28A!!@@@@@@@@@@@
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   225
I11:Z&\)NS$"QC=ADRD@@@@@@@@@# !!H]F$<II&YH3H>N2 H# @@@@@@@H,A GE\FI"Y&Y VMS)@@X,@@@@@@@BG@XE3HIJY&Y&Y$!!,=P FG@@@@@@@@  ]M
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   226
T5JY&Y&Y&Y%RLR4G  @@@@@@@@@_G&4RC08MC@,JDC\SG0@@@@@@@@@@V0E__WA+X%%TS5T3@U,@@@@@@@@@@@@,AVQ?\&1#W&X8@20@@@@@@@@@@@@@@B(A
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   227
GT]9]#XW@R(@@@@@@@@@@@@@@@@@Q!!(F@PDFETX@@@@@@@@@@@@@@@@@@@@@ZE)ZZ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   228
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a') ; colorMapFromArray:#[0 0 0 48 54 77 55 63 87 56 64 89 57 67 90 59 67 90 64 69 89 71 74 92 72 76 96 76 81 100 80 89 118 82 90 119 83 91 120 84 92 122 86 94 123 87 96 124 89 97 126 92 104 132 97 106 136 97 110 138 97 112 138 100 102 112 101 107 130 104 118 144 105 113 135 105 124 146 107 109 118 107 116 144 110 127 148 112 126 148 113 129 148 117 119 129 118 130 156 119 123 133 125 140 174 127 131 146 127 132 148 127 146 178 130 151 181 131 132 143 133 149 185 133 152 182 134 134 138 137 140 150 138 138 142 139 156 191 141 160 195 143 164 199 143 169 198 144 157 197 144 158 197 152 173 208 153 184 209 155 167 210 156 180 208 157 179 215 157 180 211 160 162 171 160 173 216 160 174 216 160 182 214 161 173 217 161 174 217 161 176 219 161 179 220 161 180 220 163 182 222 163 184 222 164 182 222 164 184 223 166 164 161 166 189 212 166 194 211 167 190 228 167 194 229 167 200 221 169 170 174 169 195 212 169 196 232 170 181 228 170 203 221 171 171 176 171 173 182 171 193 220 173 182 232 173 192 232 173 200 234 175 206 239 175 210 240 176 188 237 178 175 168 178 175 173 178 202 234 178 206 240 179 195 238 180 205 223 180 214 243 180 216 244 181 193 242 181 195 239 181 204 223 181 212 243 182 206 242 182 209 243 184 180 173 184 211 244 184 215 245 185 198 246 185 200 244 188 215 233 188 225 249 189 226 249 190 206 250 190 219 248 191 209 249 191 217 248 191 222 248 192 188 181 192 221 249 194 190 184 195 191 184 196 226 251 196 232 251 199 196 189 202 198 191 202 226 253 203 199 193 203 229 253 203 237 252 203 237 253 204 202 196 206 202 195 206 205 204 207 203 196 208 204 197 208 205 201 212 208 200 212 208 201 212 208 202 212 209 205 213 210 202 213 212 213 214 211 206 215 212 207 216 213 206 218 215 210 220 221 223 221 219 214 222 219 215 222 220 215 230 228 225 236 235 232 243 243 244 255 255 255]; mask:((Depth1Image new) width: 22; height: 22; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@C@@@C@@@C@G C@_8C@?<CA?>CC??CC??CG??#G??#G??#G??#C??CC??CA?>C@?<C@_8C@G C@@@C@@@C@@@C') ; yourself); yourself]
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   229
!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   230
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   231
searchToolBarIcon
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   232
    "This resource specification was automatically generated
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   233
     by the ImageEditor of ST/X."
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   234
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   235
    "Do not manually edit this!! If it is corrupted,
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   236
     the ImageEditor may not be able to read the specification."
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   237
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   238
    "
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   239
     self searchToolBarIcon inspect
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   240
     ImageEditor openOnClass:self andSelector:#searchToolBarIcon
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   241
     Icon flushCachedIcons
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   242
    "
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   243
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   244
    <resource: #image>
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   245
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   246
    ^Icon
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
   247
	constantNamed:#'Psiware::SystemManagement class searchToolBarIcon'
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
   248
	ifAbsentPut:[(Depth24Image new) width: 22; height: 22; photometric:(#rgb); bitsPerSample:(#[8 8 8]); samplesPerPixel:(3); bits:(ByteArray fromPackedString:'
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   249
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   250
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   251
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@4][>4][>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   252
@@@@@@@@@@@@@@@@@@@@@@@@@@@@;>#8/L#+!!:KS!!:KS/,'',;>''9@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@2];>^)WH
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   253
NE:+KU*:J5&9NE6*_I#K4^S>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@4][>RV3DLER"SWR6$K#0#;[.SGJ4L5"''UG_N4][>@@@@
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   254
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*K''\JT*,U6Z7:^S?>/C*;.3,6>C>RFF(KEZ"3-_-@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   255
@@@@@@@@@@@@&Z''HFTF &Z7">N#:7NK?7NK?6=W>!!Y''YH4N -+3T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%I>;FDV)#ZWU??''57NK?
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   256
7NK?:>_?\8WKFCN".K#T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@1L;.A#V[O5")3=W;=/[4</W:1,??K$JVI4Z\7-''4@@@@@@@@@@@@
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   257
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@7NK?-,[1E#:&C"ZZH3F U6_EU63FHS^XHS.K JOX7-''4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@7NK?
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   258
,K_*O5ZTCRBLPU&0FCBHDB&RDR6RH$NI Y#I4][>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@7NK?-;#%ND&KC">BYV.*4=;>7.+>-<K!!,K/!!7NK?
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   259
:^C;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@7NK?/K3^PT%<CBI/NE>==O;8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   260
@@@@@@@@@@@@7NK? (J9GB1SZV>W:M3?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@5MS&++3H6M/#@@@@
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   261
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@7NK?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   262
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   263
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   264
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   265
@@@@@@@@@@@@@@@@') ; mask:((Depth1Image new) width: 22; height: 22; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@C@@@C@@@C@A C@G8C@O<C@_>C@_>C@_>C@_>C@_>C@?>CA?<CC?8CG8@CG0@CC @CA@@C@@@C@@@C@@@C@@@C') ; yourself); yourself]
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   266
!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   267
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   268
warningSearchBarIcon
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   269
    "This resource specification was automatically generated
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   270
     by the ImageEditor of ST/X."
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   271
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   272
    "Do not manually edit this!! If it is corrupted,
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   273
     the ImageEditor may not be able to read the specification."
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   274
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   275
    "
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   276
     self warningSearchBarIcon inspect
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   277
     ImageEditor openOnClass:self andSelector:#warningSearchBarIcon
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   278
     Icon flushCachedIcons
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   279
    "
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   280
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   281
    <resource: #image>
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   282
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   283
    ^Icon
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
   284
	constantNamed:#'Psiware::SystemManagement class warningSearchBarIcon'
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
   285
	ifAbsentPut:[(Depth24Image new) width: 22; height: 19; photometric:(#rgb); bitsPerSample:(#[8 8 8]); samplesPerPixel:(3); bits:(ByteArray fromPackedString:'
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   286
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?:.+<Y"P??C\@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@>_;?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   287
@@@@?]SZ)5]X.6!! -HM2??''*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?>39-7*B4H&G>[N+%%MJ>\#A@@@@@@@@
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   288
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@<+R?*U1&?=CN?>W^4HJ@+FY$?>+"@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   289
@@@@@@@@@@@@@@@@@@@@?>G_)U!!^>Z^->,B><+"4?*^-%C8?;;Z+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@??#1-(E;.65+?<#H
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   290
?=_T?=GP?::65W-=(EQF?>WQ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?\#D*VAY?;61<;"0;,C@6J^+;*"0>ZN$&CX)6(-:@@@@@@@@
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   291
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?>#+/7Q148E6?<"4<L&:W#(:G@@@392!!48^G9WM(%24_?=WN@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   292
??C?7Y&$.E5\?;V*=<:8??K_R3X5DP@@4+R49ZZ!!7VIZ/#85)%UR??G/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?=7.2&)6=IJQ?;..=]W@??7*PS$7E@,N
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   293
4<OC?>K^>(M=1S8;)$ID8Y6^@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;HNR4U%%<)&S?<^9??_(??;3REEN@P,J2<[C??K/?:R!!/C8?&R(0(T-N?>GZ@@@@
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   294
@@@@@@@@@@@@@@@@@@@@?<;H,31B3T9U2'')1?L3@?>3&=^7*XWE0@@<M7=;\??S3?=_U46-,#Q(!!$B,/18"A@@@@@@@@@@@@@@@@@@@@??G&1G!!*,S03)SP,
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   295
3()?>=WL??_:<>33[G:@D2T%;^/,??#8??K19Y6^&R(0!!QPX#S8:;K22@@@@@@@@@@@@@@@@<*RZ+5I@*$D+*T48<[N&?>C_7,+U??3?7N''/(J.-?/+;??W5
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   296
;.O!!?>G_3&]+ 0(O#B8.(U9X@@@@@@@@@@@@?<?Y/%MM.487%$P^7I)7?<&=?=+ <^W3;?C?YV]3JR .-*60=/W35.[#<>W"?:*+*3@3$R\)^R ''2)^T@@@@
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   297
?>K2;(ZO2DQ@-SP!!,5H/?<F!!?<V=?;3B?=_"?>7:)72EUBT+<,GD?>?,<M;Z>]GO?<#J8VM& P4P_A0^ C(:?>+''?:"+34%H13L/02("13T(13\,5$H>3S<=
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   298
1TMC0DQD/$IB/D@>.S4;-S,8,C(:,C 9-3X:(A4""@4R_1DT RH&/6%*?82D/S8503873C<85C<923H,23@+/RP\-"HX,"HW+"DX*"@V)10U)1(S)!!XU)AXU
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   299
(Q0_$1XZ#1X["A(]^QPX&34>?;&).&-Z/6]Y06MU1&AR/5UG15-N0EYF1&EO0&EN/&EP.6AN.%5N.5-M.5%P/UYQ.$)I.4)L0UQW/U-\+5YX5XFA') ; mask:((Depth1Image new) width: 22; height: 19; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@C G@G0C@O0C@O8C@_8C@?<C@?<CA?>CC??CC??CC??#G??#O??3O??3_??;????????????????') ; yourself); yourself]
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   300
! !
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
   301
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   302
!InternationalLanguageTranslationEditor class methodsFor:'interface specs'!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   303
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   304
windowSpec
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   305
    "This resource specification was automatically generated
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   306
     by the UIPainter of ST/X."
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   307
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   308
    "Do not manually edit this!! If it is corrupted,
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   309
     the UIPainter may not be able to read the specification."
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   310
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   311
    "
2048
dcec4e818069 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2047
diff changeset
   312
     UIPainter new openOnClass:Tools::InternationalLanguageTranslationEditor andSelector:#windowSpec
dcec4e818069 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2047
diff changeset
   313
     Tools::InternationalLanguageTranslationEditor new openInterface:#windowSpec
dcec4e818069 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2047
diff changeset
   314
     Tools::InternationalLanguageTranslationEditor open
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   315
    "
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   316
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   317
    <resource: #canvas>
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   318
3594
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   319
    ^ 
3245
ff9a2e01e0a5 #BUGFIX
Stefan Vogel <sv@exept.de>
parents: 3189
diff changeset
   320
    #(FullSpec
ff9a2e01e0a5 #BUGFIX
Stefan Vogel <sv@exept.de>
parents: 3189
diff changeset
   321
       name: windowSpec
3642
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
   322
       uuid: 'ba9bc312-367b-11e9-8e9b-b8f6b1108e05'
3594
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   323
       window: 
3245
ff9a2e01e0a5 #BUGFIX
Stefan Vogel <sv@exept.de>
parents: 3189
diff changeset
   324
      (WindowSpec
3594
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   325
         label: 'InternationalLanguageTranslationEditor'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   326
         name: 'InternationalLanguageTranslationEditor'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   327
         uuid: '37d7f60e-b8d0-11e8-aeef-b8f6b1108e05'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   328
         min: (Point 10 10)
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   329
         bounds: (Rectangle 0 0 774 610)
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   330
         menu: mainMenu
3245
ff9a2e01e0a5 #BUGFIX
Stefan Vogel <sv@exept.de>
parents: 3189
diff changeset
   331
       )
3594
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   332
       component: 
3245
ff9a2e01e0a5 #BUGFIX
Stefan Vogel <sv@exept.de>
parents: 3189
diff changeset
   333
      (SpecCollection
3594
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   334
         collection: (
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   335
          (MenuPanelSpec
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   336
             name: 'ToolBar'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   337
             layout: (LayoutFrame 0 0 0 0 0 1 30 0)
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   338
             uuid: '37d7f820-b8d0-11e8-aeef-b8f6b1108e05'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   339
             menu: menuToolBar
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   340
             textDefault: true
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   341
           )
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   342
          (VariableVerticalPanelSpec
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   343
             name: 'TranslationsVariableVerticalPanel'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   344
             layout: (LayoutFrame 0 0 30 0 0 1 -32 1)
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   345
             uuid: '37d7f9ce-b8d0-11e8-aeef-b8f6b1108e05'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   346
             component: 
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   347
            (SpecCollection
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   348
               collection: (
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   349
                (DataSetSpec
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   350
                   name: 'KeyStringAndLanguageSelectionTable'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   351
                   uuid: '37d7fb2c-b8d0-11e8-aeef-b8f6b1108e05'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   352
                   model: selectedKeyRow
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   353
                   menu: keyStringAndLanguageSelectionTableMenu
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   354
                   hasHorizontalScrollBar: true
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   355
                   hasVerticalScrollBar: true
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   356
                   dataList: keyStringAndLanguageSelectionTable
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   357
                   columnHolder: keyStringAndLanguageSelectionTableColumnDescriptionHolder
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   358
                   beDependentOfRows: true
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   359
                   columnAdaptor: yourself
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   360
                   postBuildCallback: postBuildDataSet:
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   361
                 )
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   362
                (VariableVerticalPanelSpec
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   363
                   name: 'VariableVerticalPanel1'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   364
                   uuid: '37d7fd48-b8d0-11e8-aeef-b8f6b1108e05'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   365
                   component: 
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   366
                  (SpecCollection
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   367
                     collection: (
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   368
                      (ViewSpec
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   369
                         name: 'Box1'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   370
                         uuid: '37d7fe24-b8d0-11e8-aeef-b8f6b1108e05'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   371
                         component: 
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   372
                        (SpecCollection
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   373
                           collection: (
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   374
                            (LabelSpec
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   375
                               label: 'Original String (Key):'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   376
                               name: 'Label2'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   377
                               layout: (LayoutFrame 0 0 -2 0 0 1 28 0)
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   378
                               uuid: '37d7fee2-b8d0-11e8-aeef-b8f6b1108e05'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   379
                               translateLabel: true
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   380
                               adjust: left
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   381
                             )
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   382
                            (TextEditorSpec
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   383
                               name: 'OriginalText'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   384
                               layout: (LayoutFrame 0 0 27 0 0 1 -2 1)
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   385
                               uuid: '37d8002c-b8d0-11e8-aeef-b8f6b1108e05'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   386
                               model: originalTextHolder
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   387
                               hasHorizontalScrollBar: true
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   388
                               hasVerticalScrollBar: true
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   389
                               modifiedChannel: originalTextModifiedHolder
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   390
                               acceptCallBack: languageTextAccepted
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   391
                               hasKeyboardFocusInitially: false
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   392
                             )
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   393
                            )
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   394
                          
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   395
                         )
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   396
                       )
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   397
                      (ViewSpec
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   398
                         name: 'Box3'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   399
                         uuid: '37d801bc-b8d0-11e8-aeef-b8f6b1108e05'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   400
                         component: 
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   401
                        (SpecCollection
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   402
                           collection: (
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   403
                            (LabelSpec
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   404
                               label: 'Select Another Language as example:'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   405
                               name: 'Label3'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   406
                               layout: (LayoutFrame 0 0 -6 0 0 1 24 0)
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   407
                               uuid: '37d80270-b8d0-11e8-aeef-b8f6b1108e05'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   408
                               translateLabel: true
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   409
                               adjust: left
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   410
                             )
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   411
                            (ComboBoxSpec
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   412
                               name: 'ComboBox1'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   413
                               layout: (LayoutFrame 281 0 -2 0 406 0 18 0)
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   414
                               uuid: '37d80360-b8d0-11e8-aeef-b8f6b1108e05'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   415
                               model: exampleLanguageSelectionHolder
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   416
                               immediateAccept: false
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   417
                               acceptOnLeave: true
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   418
                               acceptOnLostFocus: true
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   419
                               acceptOnPointerLeave: false
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   420
                               comboList: shownLanguages
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   421
                               useIndex: false
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   422
                             )
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   423
                            (TextEditorSpec
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   424
                               name: 'ExampleLanguageText'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   425
                               layout: (LayoutFrame 0 0 30 0 0 1 0 1)
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   426
                               uuid: '37d805cc-b8d0-11e8-aeef-b8f6b1108e05'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   427
                               model: exampleLanguageTextHolder
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   428
                               hasHorizontalScrollBar: true
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   429
                               hasVerticalScrollBar: true
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   430
                               isReadOnly: true
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   431
                               hasKeyboardFocusInitially: false
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   432
                             )
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   433
                            )
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   434
                          
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   435
                         )
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   436
                       )
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   437
                      (ViewSpec
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   438
                         name: 'Box2'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   439
                         uuid: '37d8070c-b8d0-11e8-aeef-b8f6b1108e05'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   440
                         component: 
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   441
                        (SpecCollection
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   442
                           collection: (
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   443
                            (LabelSpec
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   444
                               label: 'Translated String:'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   445
                               name: 'Label1'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   446
                               layout: (LayoutFrame 0 0 0 0 0 1 30 0)
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   447
                               uuid: '37d807ca-b8d0-11e8-aeef-b8f6b1108e05'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   448
                               translateLabel: true
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   449
                               adjust: left
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   450
                             )
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   451
                            (TextEditorSpec
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   452
                               name: 'LanguageText'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   453
                               layout: (LayoutFrame 0 0 30 0 0 1 0 1)
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   454
                               uuid: '37d808ba-b8d0-11e8-aeef-b8f6b1108e05'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   455
                               model: languageTextHolder
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   456
                               hasHorizontalScrollBar: true
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   457
                               hasVerticalScrollBar: true
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   458
                               acceptChannel: languageTextAcceptHolder
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   459
                               modifiedChannel: languageTextModifiedHolder
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   460
                               acceptCallBack: languageTextAccepted
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   461
                               hasKeyboardFocusInitially: false
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   462
                               postBuildCallback: languageEditorBuilt:
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   463
                             )
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   464
                            (ActionButtonSpec
3642
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
   465
                               label: 'Add'
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
   466
                               name: 'Button2'
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
   467
                               layout: (LayoutFrame -344 0.83085250338295003 0 0 -255 0.83085250338295003 27 0)
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
   468
                               uuid: '37d809fa-b8d0-11e8-aeef-b8f6b1108e05'
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
   469
                               translateLabel: true
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
   470
                               model: addTranslationEntry
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
   471
                             )
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
   472
                            (ActionButtonSpec
3594
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   473
                               label: 'Paste Original'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   474
                               name: 'Button1'
3642
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
   475
                               layout: (LayoutFrame -202 0.83085250338295003 0 0 -71 0.83085250338295003 27 0)
3594
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   476
                               uuid: '37d809fa-b8d0-11e8-aeef-b8f6b1108e05'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   477
                               translateLabel: true
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   478
                               model: pasteOriginalInLanguageText
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   479
                               enableChannel: pasteOriginalEnableHolder
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   480
                               disabledLogo: 'Paste Original'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   481
                             )
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   482
                            (ActionButtonSpec
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   483
                               label: 'Paste Previous'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   484
                               name: 'pastePreviousTranslation'
3642
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
   485
                               layout: (LayoutFrame -66 0.83085250338295003 0 0 127 0.83085250338295003 27 0)
3594
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   486
                               uuid: '37d80b80-b8d0-11e8-aeef-b8f6b1108e05'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   487
                               translateLabel: true
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   488
                               model: pastePreviousTranslationInLanguageText
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   489
                               enableChannel: pastePreviousTranslationEnableHolder
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   490
                               disabledLogo: 'Paste Previous'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   491
                             )
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   492
                            )
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   493
                          
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   494
                         )
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   495
                       )
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   496
                      )
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   497
                    
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   498
                   )
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   499
                   handles: (Any 0.33000000000000002 0.67000000000000004 1.0)
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   500
                 )
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   501
                )
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   502
              
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   503
             )
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   504
             handles: (Any 0.5 1.0)
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   505
             postBuildCallback: postBuildTranslationsPanel:
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   506
           )
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   507
          (ViewSpec
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   508
             name: 'SearchBox'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   509
             layout: (LayoutFrame 0 0 -32 1 0 1 0 1)
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   510
             uuid: '37d80cf2-b8d0-11e8-aeef-b8f6b1108e05'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   511
             level: -1
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   512
             visibilityChannel: searchBoxVisible
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   513
             component: 
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   514
            (SpecCollection
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   515
               collection: (
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   516
                (ActionButtonSpec
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   517
                   label: 'closeSearchBarIcon'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   518
                   name: 'closeSearchBarButton'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   519
                   layout: (LayoutFrame 4 0 5 0 25 0 26 0)
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   520
                   uuid: '37d80dc4-b8d0-11e8-aeef-b8f6b1108e05'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   521
                   hasCharacterOrientedLabel: false
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   522
                   translateLabel: true
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   523
                   model: closeSearchBar
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   524
                 )
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   525
                (LabelSpec
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   526
                   label: 'Search:'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   527
                   name: 'SearchLabel'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   528
                   layout: (LayoutFrame 30 0 5 0 100 0 27 0)
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   529
                   uuid: '37d80ef0-b8d0-11e8-aeef-b8f6b1108e05'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   530
                   translateLabel: true
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   531
                   adjust: right
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   532
                 )
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   533
                (InputFieldSpec
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   534
                   name: 'SearchEntryField'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   535
                   layout: (LayoutFrame 100 0 5 0 257 0 27 0)
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   536
                   uuid: '37d80fd6-b8d0-11e8-aeef-b8f6b1108e05'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   537
                   model: searchTextHolder
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   538
                   immediateAccept: true
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   539
                   acceptOnReturn: true
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   540
                   acceptOnTab: true
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   541
                   acceptOnLostFocus: true
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   542
                   modifiedChannel: searchTextModifiedHolder
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   543
                   acceptOnPointerLeave: false
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   544
                   postBuildCallback: postBuildSearchTextView:
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   545
                 )
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   546
                (ActionButtonSpec
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   547
                   label: 'searchNextIcon'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   548
                   name: 'SearchNextButton'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   549
                   layout: (LayoutFrame 264 0 5 0 285 0 26 0)
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   550
                   uuid: '37d8117a-b8d0-11e8-aeef-b8f6b1108e05'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   551
                   hasCharacterOrientedLabel: false
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   552
                   translateLabel: true
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   553
                   model: searchNextText
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   554
                 )
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   555
                (ActionButtonSpec
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   556
                   label: 'searchPreviousIcon'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   557
                   name: 'searchPreviousButton'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   558
                   layout: (LayoutFrame 292 0 5 0 313 0 26 0)
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   559
                   uuid: '37d812b0-b8d0-11e8-aeef-b8f6b1108e05'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   560
                   hasCharacterOrientedLabel: false
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   561
                   translateLabel: true
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   562
                   model: searchPreviousText
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   563
                 )
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   564
                (CheckBoxSpec
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   565
                   label: 'Ignore case'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   566
                   name: 'IgnoreCaseCheckBox'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   567
                   layout: (LayoutFrame 322 0 5 0 518 0 27 0)
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   568
                   uuid: '37d813d2-b8d0-11e8-aeef-b8f6b1108e05'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   569
                   model: ignoreCaseHolder
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   570
                   translateLabel: true
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   571
                 )
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   572
                (LabelSpec
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   573
                   label: 'SearchBarImageInfoLabel'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   574
                   name: 'SearchBarImageInfoLabel'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   575
                   layout: (LayoutFrame 524 0 5 0 548 0 27 0)
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   576
                   uuid: '37d81512-b8d0-11e8-aeef-b8f6b1108e05'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   577
                   hasCharacterOrientedLabel: false
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   578
                   translateLabel: true
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   579
                   labelChannel: searchBarImageInfoLabelHolder
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   580
                 )
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   581
                (LabelSpec
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   582
                   label: 'SearchBarInfoLabel'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   583
                   name: 'SearchBarInfoLabel'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   584
                   layout: (LayoutFrame 551 0 5 0 829 0 27 0)
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   585
                   uuid: '37d8160c-b8d0-11e8-aeef-b8f6b1108e05'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   586
                   translateLabel: true
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   587
                   labelChannel: searchBarInfoLabelHolder
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   588
                   adjust: left
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   589
                 )
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   590
                )
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   591
              
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   592
             )
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   593
             postBuildCallback: postBuildSearchBoxView:
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   594
           )
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   595
          )
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
   596
        
3245
ff9a2e01e0a5 #BUGFIX
Stefan Vogel <sv@exept.de>
parents: 3189
diff changeset
   597
       )
ff9a2e01e0a5 #BUGFIX
Stefan Vogel <sv@exept.de>
parents: 3189
diff changeset
   598
     )
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   599
! !
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   600
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   601
!InternationalLanguageTranslationEditor class methodsFor:'menu specs'!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   602
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
   603
keyStringAndLanguageSelectionTableMenu
641467b2f522 Search String
fm
parents: 2053
diff changeset
   604
    "This resource specification was automatically generated
641467b2f522 Search String
fm
parents: 2053
diff changeset
   605
     by the MenuEditor of ST/X."
641467b2f522 Search String
fm
parents: 2053
diff changeset
   606
641467b2f522 Search String
fm
parents: 2053
diff changeset
   607
    "Do not manually edit this!! If it is corrupted,
641467b2f522 Search String
fm
parents: 2053
diff changeset
   608
     the MenuEditor may not be able to read the specification."
641467b2f522 Search String
fm
parents: 2053
diff changeset
   609
3448
e4a15fd6bec5 #REFACTORING by mawalch
mawalch
parents: 3447
diff changeset
   610
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
   611
    "
641467b2f522 Search String
fm
parents: 2053
diff changeset
   612
     MenuEditor new openOnClass:Tools::InternationalLanguageTranslationEditor andSelector:#keyStringAndLanguageSelectionTableMenu
641467b2f522 Search String
fm
parents: 2053
diff changeset
   613
     (Menu new fromLiteralArrayEncoding:(Tools::InternationalLanguageTranslationEditor keyStringAndLanguageSelectionTableMenu)) startUp
641467b2f522 Search String
fm
parents: 2053
diff changeset
   614
    "
641467b2f522 Search String
fm
parents: 2053
diff changeset
   615
641467b2f522 Search String
fm
parents: 2053
diff changeset
   616
    <resource: #menu>
641467b2f522 Search String
fm
parents: 2053
diff changeset
   617
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   618
    ^
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
   619
     #(Menu
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   620
	(
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   621
	 (MenuItem
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   622
	    label: 'Browse Methods Containing this String'
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   623
	    itemValue: browseReferringMethods
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   624
	  )
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   625
	 (MenuItem
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   626
	    label: '-'
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   627
	  )
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   628
	 (MenuItem
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   629
	    label: 'Set Current NameSpace...'
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   630
	    itemValue: changeLastNameSpace
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   631
	  )
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   632
	 (MenuItem
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   633
	    label: 'Search String in Current NameSpace'
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   634
	    itemValue: searchStringInLastNameSpace
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   635
	  )
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   636
	 (MenuItem
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   637
	    label: '-'
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   638
	    isVisible: false
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   639
	  )
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   640
	 (MenuItem
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   641
	    label: 'Set Current Package...'
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   642
	    itemValue: changeLastPackage
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   643
	    isVisible: false
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   644
	  )
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   645
	 (MenuItem
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   646
	    label: 'Search String in Current Package'
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   647
	    itemValue: searchStringInLastPackage
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   648
	    isVisible: false
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   649
	  )
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   650
	 )
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   651
	nil
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   652
	nil
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
   653
      )
641467b2f522 Search String
fm
parents: 2053
diff changeset
   654
!
641467b2f522 Search String
fm
parents: 2053
diff changeset
   655
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   656
mainMenu
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   657
    "This resource specification was automatically generated
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   658
     by the MenuEditor of ST/X."
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   659
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   660
    "Do not manually edit this!! If it is corrupted,
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   661
     the MenuEditor may not be able to read the specification."
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   662
3189
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
   663
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   664
    "
2050
fm
parents: 2049
diff changeset
   665
     MenuEditor new openOnClass:Tools::InternationalLanguageTranslationEditor andSelector:#mainMenu
fm
parents: 2049
diff changeset
   666
     (Menu new fromLiteralArrayEncoding:(Tools::InternationalLanguageTranslationEditor mainMenu)) startUp
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   667
    "
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   668
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   669
    <resource: #menu>
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   670
3599
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   671
    ^ 
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   672
     #(Menu
3599
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   673
        (
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   674
         (MenuItem
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   675
            label: 'File'
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   676
            submenu: 
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   677
           (Menu
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   678
              (
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   679
               (MenuItem
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   680
                  label: 'New'
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   681
                  itemValue: menuNew
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   682
                )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   683
               (MenuItem
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   684
                  label: '-'
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   685
                )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   686
               (MenuItem
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   687
                  label: 'Open Resources for Package or Project...'
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   688
                  itemValue: menuOpenByPackage
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   689
                )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   690
               (MenuItem
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   691
                  label: 'Open Resource File...'
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   692
                  itemValue: menuOpen
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   693
                )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   694
               (MenuItem
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   695
                  label: '-'
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   696
                )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   697
               (MenuItem
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   698
                  label: 'Save All Resource Files'
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   699
                  itemValue: menuSaveAll
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   700
                )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   701
               (MenuItem
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   702
                  label: 'Save Resource File'
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   703
                  itemValue: menuSave
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   704
                )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   705
               (MenuItem
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   706
                  label: 'Save Resource File As...'
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   707
                  itemValue: menuSaveAs
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   708
                )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   709
               (MenuItem
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   710
                  label: '-'
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   711
                )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   712
               (MenuItem
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   713
                  label: 'Import existing translations from file...'
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   714
                  itemValue: importExistingTranslationsFromFile
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   715
                )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   716
               (MenuItem
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   717
                  label: '-'
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   718
                )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   719
               (MenuItem
3629
3b7a40bf90cb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3627
diff changeset
   720
                  label: 'File Browser on Resource Directory'
3b7a40bf90cb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3627
diff changeset
   721
                  itemValue: openFileBrowserOnResourceDirectory
3b7a40bf90cb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3627
diff changeset
   722
                )
3b7a40bf90cb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3627
diff changeset
   723
               (MenuItem
3b7a40bf90cb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3627
diff changeset
   724
                  label: '-'
3b7a40bf90cb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3627
diff changeset
   725
                )
3b7a40bf90cb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3627
diff changeset
   726
               (MenuItem
3599
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   727
                  label: 'Set Current NameSpace'
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   728
                  itemValue: changeLastNameSpace
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   729
                )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   730
               (MenuItem
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   731
                  label: 'Set Current Package'
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   732
                  itemValue: changeLastPackage
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   733
                  isVisible: false
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   734
                )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   735
               (MenuItem
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   736
                  label: '-'
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   737
                )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   738
               (MenuItem
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   739
                  label: 'Exit'
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   740
                  itemValue: closeRequest
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   741
                )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   742
               )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   743
              nil
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   744
              nil
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   745
            )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   746
          )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   747
         (MenuItem
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   748
            label: 'View'
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   749
            submenu: 
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   750
           (Menu
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   751
              (
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   752
               (MenuItem
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   753
                  label: 'Show Missing Translations Only'
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   754
                  indication: showMissingTranslationsOnly
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   755
                )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   756
               (MenuItem
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   757
                  label: 'Show Search Box'
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   758
                  indication: searchBoxVisible
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   759
                )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   760
               (MenuItem
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   761
                  label: '-'
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   762
                )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   763
               (MenuItem
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   764
                  label: 'Shown Languages'
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   765
                  submenuChannel: shownLanguagesMenu
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   766
                )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   767
               )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   768
              nil
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   769
              nil
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   770
            )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   771
          )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   772
         (MenuItem
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   773
            label: 'Languages'
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   774
            submenu: 
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   775
           (Menu
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   776
              (
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   777
               (MenuItem
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   778
                  label: 'Add Language...'
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   779
                  itemValue: addLanguage
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   780
                )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   781
               (MenuItem
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   782
                  label: 'Remove Language...'
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   783
                  itemValue: removeLanguage
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   784
                )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   785
               (MenuItem
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   786
                  label: '-'
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   787
                )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   788
               (MenuItem
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   789
                  label: 'Merge...'
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   790
                  itemValue: mergeLanguages
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   791
                )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   792
               )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   793
              nil
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   794
              nil
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   795
            )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   796
          )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   797
         (MenuItem
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   798
            label: 'Translations'
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   799
            submenuChannel: translationsMenuSpec
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   800
          )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   801
         (MenuItem
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   802
            label: 'Preferences'
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   803
            submenu: 
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   804
           (Menu
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   805
              (
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   806
               (MenuItem
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   807
                  label: 'Auto Accept Changes'
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   808
                  indication: autoAcceptHolder
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   809
                )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   810
               (MenuItem
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   811
                  label: 'Search For Similar Translations'
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   812
                  indication: searchForSimilarTranslationEnableHolder
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   813
                )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   814
               (MenuItem
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   815
                  label: 'Always Write UTF8'
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   816
                  indication: alwaysWriteUTF8Holder
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   817
                )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   818
               )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   819
              nil
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   820
              nil
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   821
            )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   822
          )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   823
         (MenuItem
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   824
            label: 'Help'
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   825
            startGroup: right
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   826
            submenu: 
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   827
           (Menu
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   828
              (
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   829
               (MenuItem
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   830
                  label: 'Documentation'
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   831
                  itemValue: openDocumentation
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   832
                )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   833
               (MenuItem
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   834
                  label: '-'
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   835
                )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   836
               (MenuItem
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   837
                  label: 'About this Application...'
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   838
                  itemValue: openAboutThisApplication
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   839
                )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   840
               )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   841
              nil
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   842
              nil
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   843
            )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   844
          )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   845
         )
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   846
        nil
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
   847
        nil
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   848
      )
3629
3b7a40bf90cb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3627
diff changeset
   849
3b7a40bf90cb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3627
diff changeset
   850
    "Modified: / 30-10-2018 / 16:31:32 / Claus Gittinger"
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   851
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   852
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
   853
menuItemsEditLanguage
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
   854
    "This resource specification was automatically generated
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
   855
     by the MenuEditor of ST/X."
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
   856
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
   857
    "Do not manually edit this!! If it is corrupted,
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
   858
     the MenuEditor may not be able to read the specification."
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
   859
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
   860
    "
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
   861
     MenuEditor new openOnClass:Tools::InternationalLanguageTranslationEditor andSelector:#menu
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
   862
     (Menu new fromLiteralArrayEncoding:(Tools::InternationalLanguageTranslationEditor menu)) startUp
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
   863
    "
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
   864
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
   865
    <resource: #menu>
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
   866
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
   867
    ^
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
   868
     #(Menu
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
   869
	(
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
   870
	 (MenuItem
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
   871
	    enabled: pastePreviousTranslationEnableHolder
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
   872
	    label: 'Paste Previous Translation'
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
   873
	    itemValue: pastePreviousTranslationInLanguageText
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
   874
	    nameKey: pastePreviousTranslationInLanguageText
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
   875
	    translateLabel: true
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
   876
	  )
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
   877
	 )
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
   878
	nil
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
   879
	nil
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
   880
      )
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
   881
!
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
   882
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   883
menuToolBar
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   884
    "This resource specification was automatically generated
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   885
     by the MenuEditor of ST/X."
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   886
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   887
    "Do not manually edit this!! If it is corrupted,
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   888
     the MenuEditor may not be able to read the specification."
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   889
2880
Claus Gittinger <cg@exept.de>
parents: 2570
diff changeset
   890
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   891
    "
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
   892
     MenuEditor new openOnClass:Tools::InternationalLanguageTranslationEditor andSelector:#menuToolBar
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
   893
     (Menu new fromLiteralArrayEncoding:(Tools::InternationalLanguageTranslationEditor menuToolBar)) startUp
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   894
    "
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   895
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   896
    <resource: #menu>
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   897
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   898
    ^
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   899
     #(Menu
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   900
	(
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   901
	 (MenuItem
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   902
	    label: 'Save'
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   903
	    itemValue: menuSave
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   904
	    isButton: true
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   905
	    labelImage: (ResourceRetriever XPToolbarIconLibrary saveImageIcon)
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   906
	  )
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   907
	 (MenuItem
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   908
	    label: '-'
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   909
	  )
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   910
	 (MenuItem
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   911
	    label: 'Add Translation'
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   912
	    itemValue: addTranslation
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   913
	    isButton: true
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   914
	    labelImage: (ResourceRetriever XPToolbarIconLibrary newRowIcon)
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   915
	  )
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   916
	 (MenuItem
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   917
	    label: 'Remove Translation'
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   918
	    itemValue: removeTranslation
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   919
	    isButton: true
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   920
	    labelImage: (ResourceRetriever XPToolbarIconLibrary removeRowIcon)
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   921
	  )
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   922
	 (MenuItem
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   923
	    label: '-'
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   924
	  )
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   925
	 (MenuItem
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   926
	    activeHelpKey: browseReferringMethods
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   927
	    label: 'Browse'
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   928
	    itemValue: browseReferringMethods
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   929
	    labelImage: (ResourceRetriever ToolbarIconLibrary systemBrowserIcon)
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   930
	  )
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   931
	 (MenuItem
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   932
	    label: ''
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   933
	  )
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   934
	 (MenuItem
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   935
	    label: 'Stop Application'
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   936
	    itemValue: stopApplication
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   937
	    isButton: true
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   938
	    isVisible: stopApplicationIconVisibleHolder
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   939
	    labelImage: (ResourceRetriever XPToolbarIconLibrary stop16x16Icon)
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   940
	  )
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   941
	 (MenuItem
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   942
	    activeHelpKey: searchBox
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   943
	    label: 'Search'
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   944
	    isButton: true
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   945
	    startGroup: right
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   946
	    hideMenuOnActivated: false
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   947
	    indication: searchBoxVisible
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   948
	    shortcutKey: Ctrlf
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   949
	    labelImage: (ResourceRetriever #'Tools::InternationalLanguageTranslationEditor' searchToolBarIcon)
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   950
	  )
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   951
	 )
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   952
	nil
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
   953
	nil
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   954
      )
3189
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
   955
!
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
   956
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
   957
translationsMenuSpec
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
   958
    "This resource specification was automatically generated
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
   959
     by the MenuEditor of ST/X."
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
   960
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
   961
    "Do not manually edit this!! If it is corrupted,
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
   962
     the MenuEditor may not be able to read the specification."
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
   963
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
   964
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
   965
    "
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
   966
     MenuEditor new openOnClass:Tools::InternationalLanguageTranslationEditor andSelector:#translationsMenuSpec
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
   967
     (Menu new fromLiteralArrayEncoding:(Tools::InternationalLanguageTranslationEditor translationsMenuSpec)) startUp
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
   968
    "
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
   969
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
   970
    <resource: #menu>
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
   971
3626
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
   972
    ^ 
3189
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
   973
     #(Menu
3626
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
   974
        (
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
   975
         (MenuItem
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
   976
            label: 'Add Translation...'
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
   977
            itemValue: addTranslation
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
   978
          )
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
   979
         (MenuItem
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
   980
            label: 'Remove Translation...'
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
   981
            itemValue: removeTranslation
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
   982
          )
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
   983
         (MenuItem
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
   984
            label: '-'
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
   985
            isVisible: false
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
   986
          )
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
   987
         (MenuItem
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
   988
            label: 'Search Translation...'
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
   989
            itemValue: searchTranslation
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
   990
            isVisible: false
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
   991
          )
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
   992
         (MenuItem
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
   993
            label: '-'
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
   994
          )
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
   995
         (MenuItem
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
   996
            label: 'Extract from Package...'
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
   997
            itemValue: extractTranslationsFromProject
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
   998
          )
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
   999
         (MenuItem
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  1000
            label: 'Extract from Class...'
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  1001
            itemValue: extractTranslationsFromClass
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  1002
          )
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  1003
         (MenuItem
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  1004
            label: 'Extract from NameSpace...'
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  1005
            itemValue: extractTranslationsFromNameSpace
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  1006
          )
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  1007
         (MenuItem
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  1008
            label: '-'
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  1009
          )
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  1010
         (MenuItem
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  1011
            label: 'Run Application and Collect Translations...'
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  1012
            itemValue: runApplicationAndCollectTranslations
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  1013
          )
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  1014
         (MenuItem
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  1015
            label: '-'
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  1016
          )
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  1017
         (MenuItem
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  1018
            label: 'Generate Missing Translations'
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  1019
            itemValue: generateMissingTranslations
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  1020
          )
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  1021
         (MenuItem
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  1022
            label: 'Generate Missing Translations Slice'
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  1023
            submenuChannel: menuSliceTranslateGenerate
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  1024
            isMenuSlice: true
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  1025
          )
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  1026
         )
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  1027
        nil
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  1028
        nil
3189
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
  1029
      )
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1030
! !
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1031
2433
88fbe1703c31 +openOnFile
Claus Gittinger <cg@exept.de>
parents: 2419
diff changeset
  1032
!InternationalLanguageTranslationEditor class methodsFor:'startup'!
88fbe1703c31 +openOnFile
Claus Gittinger <cg@exept.de>
parents: 2419
diff changeset
  1033
88fbe1703c31 +openOnFile
Claus Gittinger <cg@exept.de>
parents: 2419
diff changeset
  1034
openOnFile:aFilename
3641
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  1035
    "opens an editor on a single resources file; returns the editor"
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  1036
    
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  1037
    |fn|
2433
88fbe1703c31 +openOnFile
Claus Gittinger <cg@exept.de>
parents: 2419
diff changeset
  1038
88fbe1703c31 +openOnFile
Claus Gittinger <cg@exept.de>
parents: 2419
diff changeset
  1039
    fn := aFilename asFilename.
88fbe1703c31 +openOnFile
Claus Gittinger <cg@exept.de>
parents: 2419
diff changeset
  1040
3641
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  1041
    ^ self new
3639
e8a2e6f41121 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3638
diff changeset
  1042
        allButOpen;
e8a2e6f41121 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3638
diff changeset
  1043
        readResourceFile:fn asLanguage:(fn withoutSuffix baseName);
3641
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  1044
        beUnmodified;
3639
e8a2e6f41121 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3638
diff changeset
  1045
        openWindow;
e8a2e6f41121 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3638
diff changeset
  1046
        yourself.
e8a2e6f41121 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3638
diff changeset
  1047
3641
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  1048
    "Modified: / 20-02-2019 / 12:36:13 / Claus Gittinger"
3077
48211023a3c7 class: Tools::InternationalLanguageTranslationEditor
Claus Gittinger <cg@exept.de>
parents: 2880
diff changeset
  1049
!
48211023a3c7 class: Tools::InternationalLanguageTranslationEditor
Claus Gittinger <cg@exept.de>
parents: 2880
diff changeset
  1050
48211023a3c7 class: Tools::InternationalLanguageTranslationEditor
Claus Gittinger <cg@exept.de>
parents: 2880
diff changeset
  1051
openOnPackage:aPackageId
3641
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  1052
    "opens an editor on all languages of a package; returns the editor"
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  1053
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  1054
    ^ self new
3639
e8a2e6f41121 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3638
diff changeset
  1055
        allButOpen;
3640
278e1952a646 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3639
diff changeset
  1056
        readResourceFileForPackage:aPackageId language:#all;
3641
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  1057
        beUnmodified;
3639
e8a2e6f41121 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3638
diff changeset
  1058
        openWindow;
e8a2e6f41121 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3638
diff changeset
  1059
        yourself.
e8a2e6f41121 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3638
diff changeset
  1060
3641
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  1061
    "Modified: / 20-02-2019 / 12:36:18 / Claus Gittinger"
2433
88fbe1703c31 +openOnFile
Claus Gittinger <cg@exept.de>
parents: 2419
diff changeset
  1062
! !
88fbe1703c31 +openOnFile
Claus Gittinger <cg@exept.de>
parents: 2419
diff changeset
  1063
2047
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  1064
!InternationalLanguageTranslationEditor class methodsFor:'tableColumns specs'!
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  1065
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  1066
keyTableColumn
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  1067
    "This resource specification was automatically generated
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  1068
     by the DataSetBuilder of ST/X."
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  1069
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  1070
    "Do not manually edit this!! If it is corrupted,
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  1071
     the DataSetBuilder may not be able to read the specification."
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  1072
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  1073
    "
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  1074
     DataSetBuilder new openOnClass:Tools::InternationalLanguageTranslationEditor andSelector:#keyTableColumn
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  1075
    "
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  1076
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  1077
    <resource: #tableColumns>
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  1078
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  1079
    ^#(
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  1080
      (DataSetColumnSpec
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1081
	 label: 'Key'
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1082
	 labelButtonType: Button
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1083
	 minWidth: 50
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1084
	 model: keyStringInRow:
2047
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  1085
       )
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  1086
      )
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  1087
!
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  1088
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  1089
languageTableColumn
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  1090
    "This resource specification was automatically generated
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  1091
     by the DataSetBuilder of ST/X."
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  1092
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  1093
    "Do not manually edit this!! If it is corrupted,
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  1094
     the DataSetBuilder may not be able to read the specification."
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  1095
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  1096
    "
2049
d10762e5d924 *** empty log message ***
fm
parents: 2048
diff changeset
  1097
     DataSetBuilder new openOnClass:Tools::InternationalLanguageTranslationEditor andSelector:#languageTableColumn
2047
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  1098
    "
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  1099
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  1100
    <resource: #tableColumns>
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  1101
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  1102
    ^#(
2049
d10762e5d924 *** empty log message ***
fm
parents: 2048
diff changeset
  1103
      (DataSetColumnSpec
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1104
	 label: lang
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1105
	 labelButtonType: Button
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1106
	 minWidth: 50
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1107
	 editorType: None
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1108
	 model: columnInRow:at:
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1109
	 backgroundSelector: getBackgroundForRow:rowNr:col:
2049
d10762e5d924 *** empty log message ***
fm
parents: 2048
diff changeset
  1110
       )
d10762e5d924 *** empty log message ***
fm
parents: 2048
diff changeset
  1111
      )
d10762e5d924 *** empty log message ***
fm
parents: 2048
diff changeset
  1112
! !
d10762e5d924 *** empty log message ***
fm
parents: 2048
diff changeset
  1113
d10762e5d924 *** empty log message ***
fm
parents: 2048
diff changeset
  1114
!InternationalLanguageTranslationEditor methodsFor:'accessing'!
2047
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  1115
3641
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  1116
beUnmodified
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  1117
    modified := false.
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  1118
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  1119
    "Created: / 20-02-2019 / 12:36:03 / Claus Gittinger"
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  1120
!
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  1121
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1122
currentSelectionIndex
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1123
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1124
    ^ self selectedKeyRow value
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1125
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1126
    "Created: / 16-06-2007 / 09:04:11 / Administrador"
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1127
    "Modified: / 19-06-2007 / 17:28:38 / Administrador"
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1128
!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1129
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1130
exists: anObject
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1131
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1132
    ^self objectsList includes: anObject
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1133
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1134
    "Created: / 19-06-2007 / 16:42:22 / Administrador"
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1135
!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1136
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1137
indexOf: anObject
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1138
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1139
    ^self objectsList indexOf: anObject
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1140
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1141
    "Created: / 19-06-2007 / 16:39:44 / Administrador"
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1142
!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1143
2049
d10762e5d924 *** empty log message ***
fm
parents: 2048
diff changeset
  1144
newLanguageText
d10762e5d924 *** empty log message ***
fm
parents: 2048
diff changeset
  1145
"/   languageEditor accept
3245
ff9a2e01e0a5 #BUGFIX
Stefan Vogel <sv@exept.de>
parents: 3189
diff changeset
  1146
    ^self languageTextHolder value isEmptyOrNil
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  1147
	ifTrue:['']
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  1148
	ifFalse:[self languageTextHolder value asCollectionOfLines first.]
2050
fm
parents: 2049
diff changeset
  1149
!
fm
parents: 2049
diff changeset
  1150
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1151
objectsList
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1152
3626
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  1153
    ^ keyStringsToLanguageMappings
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  1154
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  1155
    "Modified: / 25-10-2018 / 16:25:08 / Claus Gittinger"
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1156
!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1157
3641
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  1158
selectKey:aKey
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  1159
    "selects aKey if there is a corresponding row"
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  1160
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  1161
    | index |
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  1162
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  1163
    keyStringsToLanguageMappings isNil ifTrue:[^false].
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  1164
    index := keyStringsToLanguageMappings keys indexOf:aKey.
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  1165
    index == 0 ifTrue:[^ false].
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  1166
    
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  1167
    self selectedKeyRow value:index.
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  1168
    ^ true
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  1169
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  1170
    "Created: / 20-02-2019 / 12:31:01 / Claus Gittinger"
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  1171
!
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  1172
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1173
selectListIndex: rowIndex
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1174
"/    |selection list|
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1175
"/    list := self objectsList.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1176
"/    list isEmpty ifTrue:[^self].
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1177
"/    selection := list at:rowIndex ifAbsent:nil.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1178
    self selectedKeyRow value: rowIndex.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1179
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1180
    "Created: / 16-06-2007 / 09:06:46 / Administrador"
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1181
    "Modified: / 22-06-2007 / 13:45:54 / Administrador"
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1182
!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1183
3642
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
  1184
selectOrAddKey:aKey
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
  1185
    "selects aKey if there is a corresponding row,
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
  1186
     otherwise fills in the fields for editing"
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
  1187
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
  1188
    (self selectKey:aKey) ifFalse:[
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
  1189
        self addTranslationForKey:aKey.
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
  1190
        self languageTextHolder value:aKey.
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
  1191
    ].
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
  1192
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
  1193
    "Created: / 21-02-2019 / 17:09:36 / Claus Gittinger"
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
  1194
    "Modified: / 22-02-2019 / 09:25:43 / Claus Gittinger"
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
  1195
!
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
  1196
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1197
selectedKey
3601
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1198
    "Returns the current selected key if there is one row seleted. Otherwise, returns nil"
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1199
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1200
    | rowSelectionIndex |
2050
fm
parents: 2049
diff changeset
  1201
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1202
    keyStringsToLanguageMappings isNil ifTrue:[^nil].
3641
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  1203
    (rowSelectionIndex := self selectedKeyRow value) isNil ifTrue:[^nil].
2050
fm
parents: 2049
diff changeset
  1204
    rowSelectionIndex == 0 ifTrue:[^nil].
3641
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  1205
2050
fm
parents: 2049
diff changeset
  1206
    ^ keyStringsToLanguageMappings keyAt:rowSelectionIndex.
3641
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  1207
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  1208
    "Modified: / 20-02-2019 / 12:28:18 / Claus Gittinger"
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1209
!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1210
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1211
tableView
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1212
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1213
    ^dataSetView scrolledView
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1214
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1215
    "Created: / 15-06-2007 / 18:59:51 / Administrador"
2047
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  1216
! !
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  1217
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1218
!InternationalLanguageTranslationEditor methodsFor:'aspects'!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1219
2053
8440fcd83b7b 2.1 felix
fm
parents: 2051
diff changeset
  1220
alwaysWriteUTF8Holder
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1221
    alwaysWriteUTF8Holder isNil ifTrue:[alwaysWriteUTF8Holder := true asValue].
2053
8440fcd83b7b 2.1 felix
fm
parents: 2051
diff changeset
  1222
    ^ alwaysWriteUTF8Holder
8440fcd83b7b 2.1 felix
fm
parents: 2051
diff changeset
  1223
!
8440fcd83b7b 2.1 felix
fm
parents: 2051
diff changeset
  1224
2050
fm
parents: 2049
diff changeset
  1225
autoAcceptHolder
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1226
    autoAcceptHolder isNil ifTrue:[autoAcceptHolder := true asValue].
2050
fm
parents: 2049
diff changeset
  1227
    ^ autoAcceptHolder
fm
parents: 2049
diff changeset
  1228
!
fm
parents: 2049
diff changeset
  1229
fm
parents: 2049
diff changeset
  1230
exampleLanguageSelectionHolder
fm
parents: 2049
diff changeset
  1231
    exampleLanguageSelectionHolder isNil ifTrue:[
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1232
	exampleLanguageSelectionHolder := self exampleLanguageByDefault asValue.
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1233
	exampleLanguageSelectionHolder addDependent:self.
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1234
    ].
2050
fm
parents: 2049
diff changeset
  1235
    ^ exampleLanguageSelectionHolder
fm
parents: 2049
diff changeset
  1236
!
fm
parents: 2049
diff changeset
  1237
fm
parents: 2049
diff changeset
  1238
exampleLanguageTextHolder
fm
parents: 2049
diff changeset
  1239
    exampleLanguageTextHolder isNil ifTrue:[
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1240
	exampleLanguageTextHolder := '' asValue.
2050
fm
parents: 2049
diff changeset
  1241
    ].
fm
parents: 2049
diff changeset
  1242
    ^ exampleLanguageTextHolder.
fm
parents: 2049
diff changeset
  1243
!
fm
parents: 2049
diff changeset
  1244
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1245
ignoreCaseHolder
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1246
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1247
    ignoreCaseHolder isNil ifTrue:[
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1248
	ignoreCaseHolder := false asValue.
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1249
"/ if your app needs to be notified of changes, uncomment one of the lines below:
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1250
"/       ignoreCaseHolder addDependent:self.
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1251
	ignoreCaseHolder onChangeSend:#ignoreCaseHolderChanged to:self.
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1252
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1253
    ].
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1254
    ^ ignoreCaseHolder.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1255
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1256
    "Created: / 16-06-2007 / 06:45:04 / Administrador"
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1257
    "Modified: / 16-06-2007 / 19:32:15 / Administrador"
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1258
!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1259
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1260
keyStringAndLanguageSelectionTable
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1261
    keyStringsToLanguageMappings isNil ifTrue:[
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1262
	keyStringsToLanguageMappings := KeyStringsToLanguageMappings new.
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1263
    ].
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1264
    ^ keyStringsToLanguageMappings.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1265
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1266
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1267
keyStringAndLanguageSelectionTableColumnDescriptionHolder
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1268
    keyStringAndLanguageSelectionTableColumnDescriptionHolder isNil ifTrue:[
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1269
	keyStringAndLanguageSelectionTableColumnDescriptionHolder := ValueHolder new.
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1270
	keyStringAndLanguageSelectionTableColumnDescriptionHolder value:(self keyStringAndLanguageSelectionTableColumnDescription).
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1271
    ].
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1272
    ^ keyStringAndLanguageSelectionTableColumnDescriptionHolder.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1273
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1274
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1275
languageAtCol:colNr
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1276
    ^ shownLanguages at:colNr-1.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1277
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1278
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1279
languageShownHolderFor:lang
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1280
    |holder|
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1281
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1282
    languageShownHolders isNil ifTrue:[
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1283
	languageShownHolders := Dictionary new
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1284
    ].
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1285
    holder := languageShownHolders
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1286
		at:lang
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1287
		ifAbsentPut:[
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1288
		    |h|
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1289
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1290
		    h := true asValue.
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1291
		    h onChangeEvaluate:[
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1292
			h value ifTrue:[
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1293
			   self enableLanguageDisplayFor:lang
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1294
			] ifFalse:[
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1295
			   self disableLanguageDisplayFor:lang
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1296
			].
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1297
		    ].
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1298
		    h
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1299
		].
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1300
    ^ holder.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1301
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1302
2048
dcec4e818069 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2047
diff changeset
  1303
languageTextAcceptHolder
dcec4e818069 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2047
diff changeset
  1304
    languageTextAcceptHolder isNil ifTrue:[
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1305
	languageTextAcceptHolder := false asValue.
2048
dcec4e818069 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2047
diff changeset
  1306
    ].
dcec4e818069 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2047
diff changeset
  1307
    ^ languageTextAcceptHolder.
dcec4e818069 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2047
diff changeset
  1308
!
dcec4e818069 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2047
diff changeset
  1309
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1310
languageTextHolder
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1311
    languageTextHolder isNil ifTrue:[
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1312
	languageTextHolder := '' asValue.
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1313
    ].
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1314
    ^ languageTextHolder.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1315
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1316
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1317
languageTextModifiedHolder
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1318
    languageTextModifiedHolder isNil ifTrue:[
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1319
	languageTextModifiedHolder := false asValue.
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1320
    ].
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1321
    ^ languageTextModifiedHolder.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1322
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1323
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1324
languagesList
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1325
    languagesList isNil ifTrue:[
3601
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1326
        languagesList := List withAll:(keyStringsToLanguageMappings languages).
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1327
    ].
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1328
    ^ languagesList.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1329
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1330
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1331
originalTextHolder
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1332
    originalTextHolder isNil ifTrue:[
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1333
	originalTextHolder := '' asValue.
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1334
    ].
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1335
    ^ originalTextHolder.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1336
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1337
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1338
originalTextModifiedHolder
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1339
    originalTextModifiedHolder isNil ifTrue:[
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1340
	originalTextModifiedHolder := false asValue.
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1341
    ].
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1342
    ^ originalTextModifiedHolder.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1343
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1344
2323
9b257cbd0ea9 *** empty log message ***
fm
parents: 2163
diff changeset
  1345
pasteOriginalEnableHolder
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1346
   pasteOriginalEnableHolder isNil ifTrue:[pasteOriginalEnableHolder := false asValue].
2323
9b257cbd0ea9 *** empty log message ***
fm
parents: 2163
diff changeset
  1347
    ^ pasteOriginalEnableHolder
9b257cbd0ea9 *** empty log message ***
fm
parents: 2163
diff changeset
  1348
!
9b257cbd0ea9 *** empty log message ***
fm
parents: 2163
diff changeset
  1349
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1350
pastePreviousTranslationEnableHolder
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1351
   pastePreviousTranslationEnableHolder isNil ifTrue:[pastePreviousTranslationEnableHolder := false asValue].
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1352
    ^ pastePreviousTranslationEnableHolder
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1353
!
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1354
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1355
searchBarImageInfoLabelHolder
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1356
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1357
    searchBarImageInfoLabelHolder isNil ifTrue:[
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1358
	searchBarImageInfoLabelHolder := nil asValue .
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1359
    ].
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1360
    ^ searchBarImageInfoLabelHolder.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1361
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1362
    "Created: / 16-06-2007 / 10:06:28 / Administrador"
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1363
!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1364
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1365
searchBarInfoLabelHolder
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1366
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1367
    searchBarInfoLabelHolder isNil ifTrue:[
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1368
	searchBarInfoLabelHolder := '' asValue .
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1369
    ].
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1370
    ^ searchBarInfoLabelHolder.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1371
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1372
    "Created: / 16-06-2007 / 06:20:49 / Administrador"
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1373
!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1374
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1375
searchBoxVisible
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1376
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1377
    searchBoxVisible isNil ifTrue:[
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  1378
	searchBoxVisible := false asValue.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  1379
	searchBoxVisible
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  1380
	    onChangeEvaluate:[
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  1381
		self updateToolVisibility.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  1382
		searchBoxVisible value ifTrue:[
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  1383
		    searchTextView takeFocus.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  1384
		].
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  1385
	    ].
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1386
    ].
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1387
    ^ searchBoxVisible.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1388
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1389
    "Created: / 15-06-2007 / 18:15:52 / Administrador"
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1390
!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1391
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1392
searchForSimilarTranslationEnableHolder
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1393
   searchForSimilarTranslationEnableHolder isNil
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1394
	ifTrue:[searchForSimilarTranslationEnableHolder := true asValue].
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1395
    ^ searchForSimilarTranslationEnableHolder
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1396
!
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1397
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1398
searchTextHolder
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1399
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1400
    searchTextHolder isNil ifTrue:[
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1401
	searchTextHolder := ValueHolder new.
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1402
"/ if your app needs to be notified of changes, uncomment one of the lines below:
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1403
"/       userSelectedHolder addDependent:self.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1404
"/       userSelectedHolder onChangeSend:#searchTextHolderChanged to:self.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1405
    ].
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1406
    ^ searchTextHolder.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1407
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1408
    "Created: / 15-06-2007 / 18:06:08 / Administrador"
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1409
!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1410
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1411
searchTextModifiedHolder
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1412
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1413
    searchTextModifiedHolder isNil ifTrue:[
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1414
	searchTextModifiedHolder := false asValue .
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1415
"/ if your app needs to be notified of changes, uncomment one of the lines below:
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1416
"/       searchTextModifiedHolder addDependent:self.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1417
       searchTextModifiedHolder onChangeSend:#searchTextModifiedHolderChanged to:self.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1418
    ].
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1419
    ^ searchTextModifiedHolder.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1420
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1421
    "Created: / 15-06-2007 / 18:07:19 / Administrador"
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1422
!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1423
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1424
selectedKeyRow
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1425
    selectedKeyRow isNil ifTrue:[
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1426
	selectedKeyRow := ValueHolder new.
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1427
	selectedKeyRow onChangeSend:#selectionChanged to:self.
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1428
    ].
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1429
    ^ selectedKeyRow.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1430
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1431
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1432
showMissingTranslationsOnly
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1433
    showMissingTranslationsOnly isNil ifTrue:[
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1434
	showMissingTranslationsOnly := false asValue.
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1435
	showMissingTranslationsOnly onChangeSend:#showMissingTranslationsOnlyChanged to:self.
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1436
    ].
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1437
    ^ showMissingTranslationsOnly.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1438
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1439
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1440
shownLanguages
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1441
    shownLanguages isNil ifTrue:[
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1442
	shownLanguages := List new.
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1443
	shownLanguages addAll:(self languagesList).
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1444
	shownLanguages onChangeSend:#shownLanguagesChanged to:self.
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1445
    ].
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1446
    ^ shownLanguages.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1447
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1448
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1449
stopApplicationIconVisibleHolder
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1450
    stopApplicationIconVisibleHolder isNil ifTrue:[
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1451
	stopApplicationIconVisibleHolder := false asValue.
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1452
    ].
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1453
    ^ stopApplicationIconVisibleHolder.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1454
! !
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1455
2048
dcec4e818069 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2047
diff changeset
  1456
!InternationalLanguageTranslationEditor methodsFor:'change & update'!
dcec4e818069 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2047
diff changeset
  1457
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1458
languageTextHolderValue: aString
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1459
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1460
    self languageTextHolder value: aString.
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1461
    self languageTextModifiedHolder value:true.
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1462
!
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1463
2048
dcec4e818069 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2047
diff changeset
  1464
update:something with:aParameter from:changedObject
3594
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1465
    languageEditor modified ifTrue:[
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1466
        languageEditor accept
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1467
    ].    
2048
dcec4e818069 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2047
diff changeset
  1468
    changedObject == shownLanguages ifTrue:[
3594
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1469
         self shownLanguagesChanged.
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1470
         ^ self.
2048
dcec4e818069 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2047
diff changeset
  1471
    ].
2049
d10762e5d924 *** empty log message ***
fm
parents: 2048
diff changeset
  1472
    changedObject == languageTextAcceptHolder ifTrue:[
3594
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1473
         self updateLanguageTextModification.
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1474
         ^ self.
2049
d10762e5d924 *** empty log message ***
fm
parents: 2048
diff changeset
  1475
    ].
2050
fm
parents: 2049
diff changeset
  1476
    changedObject == exampleLanguageSelectionHolder ifTrue:[
3594
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1477
        self updateExampleLanguageText.
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1478
        ^ self.
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1479
    ].
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1480
    changedObject == showMissingTranslationsOnly ifTrue:[
3594
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1481
        self showMissingTranslationsOnlyChanged.
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1482
        ^ self.
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1483
    ].
3594
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1484
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1485
    "Modified: / 15-09-2018 / 12:17:07 / Claus Gittinger"
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1486
!
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1487
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1488
updateCopyPreviousTranslationButtonEnabled
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1489
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1490
     self pastePreviousTranslationEnableHolder value: self shouldCopyPreviousTranslationButtonBeEnabled
2050
fm
parents: 2049
diff changeset
  1491
!
fm
parents: 2049
diff changeset
  1492
fm
parents: 2049
diff changeset
  1493
updateExampleLanguageText
fm
parents: 2049
diff changeset
  1494
fm
parents: 2049
diff changeset
  1495
    self selectedKeyRow value isNil ifTrue:[^ self].
fm
parents: 2049
diff changeset
  1496
    self exampleLanguageTextHolder value:self currentExampleLanguageText
2049
d10762e5d924 *** empty log message ***
fm
parents: 2048
diff changeset
  1497
!
d10762e5d924 *** empty log message ***
fm
parents: 2048
diff changeset
  1498
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1499
updateKeyStringsToLanguageMappings
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1500
3601
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1501
    keyStringsToLanguageMappings
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1502
        at:lastSelectedKey language:lastLanguage put: self newLanguageText.
2049
d10762e5d924 *** empty log message ***
fm
parents: 2048
diff changeset
  1503
!
d10762e5d924 *** empty log message ***
fm
parents: 2048
diff changeset
  1504
2050
fm
parents: 2049
diff changeset
  1505
updateLanguageAndKeySelection
fm
parents: 2049
diff changeset
  1506
fm
parents: 2049
diff changeset
  1507
    self originalTextHolder value: self selectedKey.
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1508
    self languageTextHolder value: (self languageTextFromSelectedKeyFor: self currentLanguage).
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1509
    lastLanguage := self currentLanguage.
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1510
    lastSelectedKey := self selectedKey.
2050
fm
parents: 2049
diff changeset
  1511
!
fm
parents: 2049
diff changeset
  1512
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1513
updateLanguageTextModification
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1514
     self languageTextModifiedHolder value ifTrue:[
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1515
	(self autoAccept or:[Dialog confirm:'Accept changed translation ?']) ifTrue:[
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1516
	    self languageTextModifiedHolder value:false.
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1517
	    self languageTextHolder value:languageEditor contents.
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1518
	    lastLanguage notNil ifTrue:[self updateKeyStringsToLanguageMappings.]
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1519
	]
2049
d10762e5d924 *** empty log message ***
fm
parents: 2048
diff changeset
  1520
    ].
d10762e5d924 *** empty log message ***
fm
parents: 2048
diff changeset
  1521
!
d10762e5d924 *** empty log message ***
fm
parents: 2048
diff changeset
  1522
d10762e5d924 *** empty log message ***
fm
parents: 2048
diff changeset
  1523
updateOriginalTextModification
d10762e5d924 *** empty log message ***
fm
parents: 2048
diff changeset
  1524
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1525
    |answer|
2049
d10762e5d924 *** empty log message ***
fm
parents: 2048
diff changeset
  1526
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  1527
	self originalTextModifiedHolder value ifTrue:[
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  1528
	    answer := OptionBox
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  1529
			  request:'Accept changed original text (key) ?'
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  1530
			  label:'Original text (key) changed'
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  1531
			  image:(WarningBox iconBitmap)
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  1532
			  buttonLabels:#('Cancel' 'Accept' 'Accept As New')
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  1533
			  values:#(nil #accept #acceptAsNew)
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  1534
			  default:#acceptAsNew.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  1535
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  1536
	    answer isNil ifTrue:[^ self originalTextModifiedHolder value:false. ].
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  1537
	    answer == #accept ifTrue:[
3245
ff9a2e01e0a5 #BUGFIX
Stefan Vogel <sv@exept.de>
parents: 3189
diff changeset
  1538
    self shouldImplement.        ].
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  1539
	    answer == #acceptAsNew ifTrue:[
3245
ff9a2e01e0a5 #BUGFIX
Stefan Vogel <sv@exept.de>
parents: 3189
diff changeset
  1540
    self shouldImplement.        ].
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  1541
	].
2323
9b257cbd0ea9 *** empty log message ***
fm
parents: 2163
diff changeset
  1542
!
9b257cbd0ea9 *** empty log message ***
fm
parents: 2163
diff changeset
  1543
9b257cbd0ea9 *** empty log message ***
fm
parents: 2163
diff changeset
  1544
updatePasteOriginalButtonEnabled
9b257cbd0ea9 *** empty log message ***
fm
parents: 2163
diff changeset
  1545
9b257cbd0ea9 *** empty log message ***
fm
parents: 2163
diff changeset
  1546
     self pasteOriginalEnableHolder value: self shouldPasteOriginalButtonBeEnabled
2048
dcec4e818069 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2047
diff changeset
  1547
! !
dcec4e818069 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2047
diff changeset
  1548
2050
fm
parents: 2049
diff changeset
  1549
!InternationalLanguageTranslationEditor methodsFor:'dialogs'!
fm
parents: 2049
diff changeset
  1550
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1551
requestEncoderDialog
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1552
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1553
   |box val characterCollection|
2050
fm
parents: 2049
diff changeset
  1554
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1555
    val := '' asValue.
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1556
    box := Dialog new.
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1557
    (box addTextLabel:'Select or write the encoder') adjust:#left.
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1558
    box addVerticalSpace.
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1559
    characterCollection := CharacterEncoder supportedExternalEncodings
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1560
	inject: OrderedCollection new
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1561
	into:[:collection :each |
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1562
	    collection add: each first;
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1563
			yourself].
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1564
    (box addComboBoxOn:val) list: characterCollection.
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1565
    box addOkButton.
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1566
    box open.
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1567
    ^val value
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1568
!
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1569
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1570
requestEncoderStringFor: lang
3601
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1571
    "Returns an encoder string and updates the language's info"
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1572
  
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1573
    |encoderString encoder|
3601
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1574
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1575
    encoderString := self requestEncoderDialog.
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1576
    encoderString notEmpty ifTrue:[
3601
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1577
        encoder := CharacterEncoder encoderFor: encoderString ifAbsent:nil.
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1578
        encoder notNil ifTrue:[
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1579
            keyStringsToLanguageMappings atLanguage: lang putEncoder: encoder.
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1580
        ].
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1581
    ].
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1582
    ^encoderString
2050
fm
parents: 2049
diff changeset
  1583
!
fm
parents: 2049
diff changeset
  1584
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1585
requestFilename
2050
fm
parents: 2049
diff changeset
  1586
fm
parents: 2049
diff changeset
  1587
    |aFilename|
fm
parents: 2049
diff changeset
  1588
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1589
    aFilename := Dialog
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1590
	requestFileName:(resources string:'Name of resource file:')
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1591
	default:nil
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1592
	pattern:'*.rs'.
2050
fm
parents: 2049
diff changeset
  1593
fm
parents: 2049
diff changeset
  1594
    aFilename isEmptyOrNil ifTrue:[^ nil ].
fm
parents: 2049
diff changeset
  1595
    ^aFilename asFilename
fm
parents: 2049
diff changeset
  1596
!
fm
parents: 2049
diff changeset
  1597
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1598
requestFilenameFor: lang
3594
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1599
    "Returns a filename to save the language resource and updates the language's info"
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1600
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1601
    |aFilename|
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1602
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1603
    aFilename := Dialog
3594
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1604
        requestFileName:(resources string:'Name of resource file to save %1:' with:lang asString)
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1605
        default:nil
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1606
        pattern:'*.rs'.
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1607
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1608
    aFilename isEmptyOrNil ifTrue:[^ nil ].
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1609
    keyStringsToLanguageMappings atLanguage: lang putFilename: aFilename.
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1610
    ^aFilename asFilename
3594
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1611
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1612
    "Modified (format): / 15-09-2018 / 12:28:28 / Claus Gittinger"
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1613
!
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  1614
2050
fm
parents: 2049
diff changeset
  1615
requestLanguage
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1616
    ^ Dialog
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1617
	choose:(resources string:'For which language ?')
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1618
	fromList:languagesList
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1619
	lines:10.
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1620
!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1621
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1622
requestLanguageToSave
3594
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1623
    |question filename|
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1624
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1625
    question := resources string:'Which language do you want to save?'.
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1626
    
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1627
    lastLanguage notNil ifTrue:[
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1628
        filename := keyStringsToLanguageMappings filenameAt:lastLanguage.
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1629
        filename notNil ifTrue:[
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1630
            question := question , Character cr , 
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1631
                        (resources string:'(Last was "%1" in "%2")'
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1632
                                   with:lastLanguage
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1633
                                   with:(filename asFilename pathName)).
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1634
        ].    
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1635
    ].    
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1636
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1637
    ^ Dialog
3594
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1638
        choose:question
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1639
        fromList:languagesList
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1640
        lines:10
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1641
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1642
    "Modified: / 15-09-2018 / 12:39:30 / Claus Gittinger"
2410
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  1643
!
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  1644
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  1645
requestPackage
2419
e71445e7174c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2416
diff changeset
  1646
    |package allProjects projectsWithResources|
e71445e7174c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2416
diff changeset
  1647
3264
93f5deb3f9b6 #REFACTORING by Maren
matilk
parents: 3248
diff changeset
  1648
    allProjects := Smalltalk allPackageIDs.
2419
e71445e7174c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2416
diff changeset
  1649
    projectsWithResources := allProjects
3620
c0f9b9ddd6bd #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3601
diff changeset
  1650
                                select:[:pID |
c0f9b9ddd6bd #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3601
diff changeset
  1651
                                    |dir|
c0f9b9ddd6bd #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3601
diff changeset
  1652
                                    dir := Smalltalk projectDirectoryForPackage:pID.
c0f9b9ddd6bd #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3601
diff changeset
  1653
                                    dir notNil and:[ (dir asFilename construct:'resources') exists]
c0f9b9ddd6bd #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3601
diff changeset
  1654
                                ].
2410
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  1655
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  1656
    package := Dialog
3620
c0f9b9ddd6bd #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3601
diff changeset
  1657
        requestProject:(resources string:'Name of Package:')
c0f9b9ddd6bd #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3601
diff changeset
  1658
        from:projectsWithResources
c0f9b9ddd6bd #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3601
diff changeset
  1659
        initialAnswer:LastProject
c0f9b9ddd6bd #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3601
diff changeset
  1660
        suggestions:nil.
2410
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  1661
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  1662
    package isEmptyOrNil ifTrue:[^ nil ].
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  1663
    LastProject := package.
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  1664
    ^ package
2050
fm
parents: 2049
diff changeset
  1665
! !
fm
parents: 2049
diff changeset
  1666
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1667
!InternationalLanguageTranslationEditor methodsFor:'images'!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1668
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1669
restartSearchBarIcon
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1670
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1671
    ^ self class restartSearchBarIcon
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1672
!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1673
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1674
warningSearchBarIcon
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1675
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1676
    ^ self class warningSearchBarIcon
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1677
! !
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1678
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1679
!InternationalLanguageTranslationEditor methodsFor:'initialization & release'!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1680
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1681
closeRequest
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1682
    "asks for permission before closing"
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1683
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1684
    self hasUnsavedChanges ifTrue:[
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1685
	(Dialog
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1686
	    confirm:(resources string:'Close without saving ?')
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1687
	    default:false) ifFalse:[
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1688
	    ^ self
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1689
	]
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1690
    ].
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1691
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1692
    super closeRequest
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1693
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1694
3601
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1695
editedLanguage:aSingleLanguageKey
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1696
    self languagesList contents:{ aSingleLanguageKey }.
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1697
    self shownLanguages contents:{ aSingleLanguageKey }.
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1698
!
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1699
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1700
initialize
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1701
    modified := false.
2031
85947c4c6502 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2015
diff changeset
  1702
    inSingleFileMode := false.
3286
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  1703
    methodsUsingKey := Dictionary new.
3601
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1704
    keyStringsToLanguageMappings := KeyStringsToLanguageMappings new.
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1705
    languagesList := List withAll:(keyStringsToLanguageMappings languages).
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1706
    
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1707
    super initialize
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1708
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1709
2049
d10762e5d924 *** empty log message ***
fm
parents: 2048
diff changeset
  1710
languageEditorBuilt:aView
d10762e5d924 *** empty log message ***
fm
parents: 2048
diff changeset
  1711
    languageEditor := aView.
3594
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1712
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  1713
    "Modified: / 15-09-2018 / 12:16:22 / Claus Gittinger"
2049
d10762e5d924 *** empty log message ***
fm
parents: 2048
diff changeset
  1714
!
d10762e5d924 *** empty log message ***
fm
parents: 2048
diff changeset
  1715
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1716
postBuildDataSet:aView
2049
d10762e5d924 *** empty log message ***
fm
parents: 2048
diff changeset
  1717
    dataSetView := aView.
d10762e5d924 *** empty log message ***
fm
parents: 2048
diff changeset
  1718
    aView selectedColIndexHolder onChangeSend:#selectionChanged to:self.
3601
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1719
!
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1720
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1721
postBuildSearchBoxView: aBoxView
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1722
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1723
    searchBoxView := aBoxView
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1724
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1725
    "Created: / 15-06-2007 / 18:02:38 / Administrador"
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1726
!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1727
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1728
postBuildSearchTextView: anEditFieldView
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1729
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1730
    searchTextView := anEditFieldView
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1731
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1732
    "Created: / 15-06-2007 / 18:17:15 / Administrador"
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1733
!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1734
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1735
postBuildTranslationsPanel: aPanel
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1736
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1737
    translationsPanel := aPanel
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1738
!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1739
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1740
postBuildWith:aBuilder
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1741
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1742
    super postBuildWith:aBuilder.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1743
    self updateToolVisibility.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1744
! !
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1745
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1746
!InternationalLanguageTranslationEditor methodsFor:'menu actions'!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1747
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1748
addLanguage
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1749
    |lang|
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1750
2410
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  1751
    lang := Dialog request:(resources string:'New language (ISO symbol):').
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1752
    lang isEmptyOrNil ifTrue:[^ self].
2410
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  1753
    self addLanguage:lang
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  1754
!
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  1755
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  1756
addLanguage:langArg
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  1757
    |lang|
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  1758
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  1759
    lang := langArg asSymbol.
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1760
    (keyStringsToLanguageMappings includesLanguage:lang) ifTrue:[^ self ].
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1761
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1762
    keyStringsToLanguageMappings addLanguage:lang.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1763
    self languagesList add:lang.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1764
    self shownLanguages add:lang.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1765
    modified := true.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1766
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1767
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1768
addTranslation
3642
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
  1769
    |key|
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1770
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1771
    key := Dialog request:'New Key:'.
3626
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  1772
    key isEmptyOrNil ifTrue:[^self].
3642
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
  1773
    
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
  1774
    self addTranslationForKey:key
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
  1775
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
  1776
    "Modified: / 22-02-2019 / 09:25:17 / Claus Gittinger"
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
  1777
!
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
  1778
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
  1779
addTranslationForKey:newKey
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
  1780
    |index|
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
  1781
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
  1782
    newKey isEmptyOrNil ifTrue:[^self].
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
  1783
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
  1784
    (self includesKey:newKey) ifFalse:[
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
  1785
        keyStringsToLanguageMappings addKey:newKey.
3599
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
  1786
        modified := true.
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1787
    ].
3642
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
  1788
   index := keyStringsToLanguageMappings indexOfKey:newKey.
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
  1789
   self selectedKeyRow value:index.
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
  1790
9b49ded14b95 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3641
diff changeset
  1791
    "Created: / 22-02-2019 / 09:24:59 / Claus Gittinger"
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1792
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1793
3286
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  1794
browseReferringMethods
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  1795
    |selectedKey methods browser|
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  1796
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  1797
    selectedKey := self selectedKey.
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  1798
    selectedKey isNil ifTrue:[^ Dialog information: 'No selected key'].
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  1799
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  1800
    methods := methodsUsingKey at:selectedKey ifAbsent:nil.
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  1801
    methods isEmptyOrNil ifTrue:[
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  1802
	Dialog information:(resources stringWithCRs:'oops - no method remembered.\Please rerun the extract from XXX menu operation').
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  1803
	^ self.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  1804
    ].
3286
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  1805
    browser := UserPreferences systemBrowserClass browseMethods:methods.
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  1806
    browser autoSearch:selectedKey ignoreCase:true.
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  1807
!
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  1808
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1809
changeLastNameSpace
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1810
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1811
    |nameSpace defaultNameSpace|
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1812
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1813
    lastNameSpace notNil ifTrue:[defaultNameSpace := lastNameSpace name].
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1814
    nameSpace := Dialog requestNameSpace:'NameSpace:' title:'Search String in Name Space:' initialAnswer:defaultNameSpace.
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1815
    nameSpace isNil ifTrue:[^self].
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1816
    nameSpace := Smalltalk at:nameSpace asSymbol.
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1817
    nameSpace isNil ifTrue:[
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1818
	^Dialog information:(resources string:'No such nameSpace exists.')
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1819
    ].
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1820
    lastNameSpace := nameSpace.
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1821
!
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1822
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1823
changeLastPackage
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1824
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1825
    |package defaultPackage|
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1826
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1827
    lastPackage notNil ifTrue:[defaultPackage := lastPackage].
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1828
    package := Dialog
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1829
	    requestProject:'Package:'
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1830
	    initialAnswer:defaultPackage
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1831
	    suggestions:#('foo' 'bar' 'baz').
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1832
    package isNil ifTrue:[
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1833
	^ self "/ Dialog information:(resources string:'No such package exists.')
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1834
    ].
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1835
    lastPackage := package.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1836
!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1837
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1838
extractTranslationsFromClass
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1839
    |aClass newTranslations|
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1840
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1841
    aClass := Dialog
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1842
		requestClass:'Class to extract translations from:'
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1843
		okLabel:'OK'
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1844
		initialAnswer:(lastExtractedClass ? LastExtractedClass).
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1845
    aClass isNil ifTrue:[^ self ].
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1846
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1847
    lastExtractedClass := LastExtractedClass := aClass.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1848
2032
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  1849
    newTranslations := self extractTranslationsFromClass:aClass.
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  1850
    self addAllTranslations:newTranslations.
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  1851
!
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  1852
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1853
extractTranslationsFromNameSpace
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1854
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1855
    |newTranslations|
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1856
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1857
    self changeLastNameSpace.
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1858
    lastNameSpace isNil ifTrue:[^self.].
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1859
    newTranslations := OrderedCollection new.
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1860
    lastNameSpace allClassesDo:[:eachClass |
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1861
	newTranslations addAll:( self extractTranslationsFromClass:eachClass theNonMetaclass).
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1862
    ].
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1863
    self addAllTranslations:newTranslations.
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1864
!
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1865
2032
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  1866
extractTranslationsFromProject
3455
4ba13182f80f #BUGFIX by mawalch
mawalch
parents: 3454
diff changeset
  1867
    |projectID newTranslations initialAnswer suggestions|
4ba13182f80f #BUGFIX by mawalch
mawalch
parents: 3454
diff changeset
  1868
4ba13182f80f #BUGFIX by mawalch
mawalch
parents: 3454
diff changeset
  1869
    initialAnswer := lastExtractedProject ? LastExtractedProject.
4ba13182f80f #BUGFIX by mawalch
mawalch
parents: 3454
diff changeset
  1870
    suggestions := initialAnswer isNil ifTrue:[
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  1871
	OrderedCollection new
3455
4ba13182f80f #BUGFIX by mawalch
mawalch
parents: 3454
diff changeset
  1872
    ] ifFalse:[
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  1873
	OrderedCollection with:initialAnswer
3455
4ba13182f80f #BUGFIX by mawalch
mawalch
parents: 3454
diff changeset
  1874
    ].
4ba13182f80f #BUGFIX by mawalch
mawalch
parents: 3454
diff changeset
  1875
    projectID := Dialog requestProject:(resources string:'Package to extract translations from:') initialAnswer:initialAnswer suggestions:suggestions.
2032
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  1876
    projectID notNil ifTrue:[
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  1877
	projectID := projectID withoutSeparators asSymbol.
2032
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  1878
    ].
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  1879
    projectID isEmptyOrNil ifTrue:[^ self ].
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  1880
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  1881
    lastExtractedProject := LastExtractedProject := projectID.
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  1882
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1883
    newTranslations := Set new.
3282
4e75a66b42af #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3264
diff changeset
  1884
    self withWaitCursorDo:[
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  1885
	Smalltalk allClassesDo:[:eachClass |
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  1886
	    eachClass theNonMetaclass instAndClassMethodsDo:[:eachMethod |
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  1887
		eachMethod package == projectID ifTrue:[
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  1888
		    newTranslations addAll:( self extractTranslationsFromMethod:eachMethod ).
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  1889
		]
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  1890
	    ].
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  1891
	].
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  1892
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  1893
	self addAllTranslations:newTranslations.
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1894
    ].
3454
5488b2613628 #BUGFIX by mawalch
mawalch
parents: 3448
diff changeset
  1895
3189
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
  1896
    "Modified: / 19-02-2015 / 11:44:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
3455
4ba13182f80f #BUGFIX by mawalch
mawalch
parents: 3454
diff changeset
  1897
    "Modified: / 16-08-2017 / 12:29:21 / mawalch"
3189
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
  1898
!
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
  1899
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  1900
generateMissingTranslations: keys for: languages using: translator
3189
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
  1901
    keys do:[:string |
3601
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1902
        languages do:[:lang |
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1903
            | translation |
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1904
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1905
            translation := keyStringsToLanguageMappings at:string language:lang.
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1906
            translation isNil ifTrue:[
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1907
                translation := translator value: lang value: string.
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1908
                translation notNil ifTrue:[
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1909
                    keyStringsToLanguageMappings at: string language: lang put: translation.
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1910
                ].
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1911
            ].
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1912
        ].
3189
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
  1913
    ].
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
  1914
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
  1915
    "Created: / 19-02-2015 / 12:31:25 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
  1916
!
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
  1917
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
  1918
generateMissingTranslationsFor: languages
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  1919
    self
3601
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1920
        generateMissingTranslations: keyStringsToLanguageMappings keys
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1921
        for: languages
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1922
        using: [ :lang :string | '**%1** %2' bindWith: lang asUppercase with: string ]
3189
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
  1923
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
  1924
    "Created: / 19-02-2015 / 12:39:46 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
  1925
!
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
  1926
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
  1927
generateMissingTranslationsForAll
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
  1928
    self generateMissingTranslationsFor: keyStringsToLanguageMappings languages
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
  1929
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
  1930
    "Created: / 19-02-2015 / 12:40:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1931
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1932
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1933
importExistingTranslationsFromFile
2410
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  1934
    self information:'The import function is not available in this release'.
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1935
!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  1936
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1937
inspectCanvasMissingStrings
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1938
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1939
    |spec nameSpace missingStrings|
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1940
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1941
    missingStrings := OrderedCollection new.
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1942
    nameSpace := Dialog requestNameSpace:'NameSpace:' title:'Specify NameSpace to look for missing strings' initialAnswer:nil.
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1943
    nameSpace := Smalltalk at:nameSpace asSymbol.
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1944
    nameSpace isNil ifTrue:[
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1945
	^Dialog information:(resources string:'No such nameSpace exists.?')
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1946
    ].
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1947
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1948
    nameSpace allClassesDo:[:cls |
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1949
	cls theMetaclass methodsDo:[:m |
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1950
	    m hasResource ifTrue:[
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1951
		(m resources includesKey:#canvas) ifTrue:[
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1952
		    spec := (cls perform:m selector) decodeAsLiteralArray.
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1953
		    spec do:[:eachComponent |
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1954
			eachComponent translationKeysDo:[:k |
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1955
			    (self includesKey: k) ifFalse:[
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1956
				missingStrings add: k.
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1957
				Transcript showCR: k storeString, '                         ', m printString]]
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1958
		    ]
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1959
		]
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1960
	    ]
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1961
	]
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1962
    ].
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1963
    missingStrings asSet inspect
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1964
!
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1965
3601
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1966
menuNew    
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1967
    modified ifTrue:[
3601
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1968
        (Dialog
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1969
            confirm:(resources stringWithCRs:'Modified translations have not been changed.\\Create new translations set anyway ?')
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1970
            default:false) ifFalse:[^ self].
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1971
    ].
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1972
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1973
    keyStringsToLanguageMappings initialize.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1974
    keyStringsToLanguageMappings changed.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1975
3601
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1976
    self languagesList contents:keyStringsToLanguageMappings languages.
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  1977
    self shownLanguages contents:keyStringsToLanguageMappings languages.
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1978
    modified := false.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1979
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1980
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1981
menuOpen
2050
fm
parents: 2049
diff changeset
  1982
    |aFilename|
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1983
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1984
    self withWaitCursorDo:[
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1985
	aFilename := self requestFilename.
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1986
	aFilename isNil ifTrue:[^ self ].
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  1987
	self readResourceFile:aFilename.
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
  1988
    ]
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1989
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1990
2410
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  1991
menuOpenByPackage
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  1992
    self withWaitCursorDo:[
3638
0b8614c96523 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3629
diff changeset
  1993
        |package|
0b8614c96523 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3629
diff changeset
  1994
0b8614c96523 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3629
diff changeset
  1995
        package := self requestPackage.
0b8614c96523 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3629
diff changeset
  1996
        package isNil ifTrue:[^ self ].
0b8614c96523 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3629
diff changeset
  1997
        self readResourceFileForPackage:package.
2410
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  1998
    ]
3638
0b8614c96523 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3629
diff changeset
  1999
0b8614c96523 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3629
diff changeset
  2000
    "Modified (format): / 20-02-2019 / 11:47:01 / Claus Gittinger"
2410
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  2001
!
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  2002
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2003
menuSave
2050
fm
parents: 2049
diff changeset
  2004
"Saves the language selected in the fileName from where the language resource was obtained."
2053
8440fcd83b7b 2.1 felix
fm
parents: 2051
diff changeset
  2005
    |lang|
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2006
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  2007
    lang := self requestLanguageToSave.
2050
fm
parents: 2049
diff changeset
  2008
    lang isNil ifTrue:[^ self].
2053
8440fcd83b7b 2.1 felix
fm
parents: 2051
diff changeset
  2009
    self saveLanguage: lang
8440fcd83b7b 2.1 felix
fm
parents: 2051
diff changeset
  2010
!
8440fcd83b7b 2.1 felix
fm
parents: 2051
diff changeset
  2011
8440fcd83b7b 2.1 felix
fm
parents: 2051
diff changeset
  2012
menuSaveAll
3601
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2013
    "Saves all the languages in the fileName from where the language resource was obtained."
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2014
    keyStringsToLanguageMappings languagesInUse do:[:each | self saveLanguage: each].
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2015
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2016
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2017
menuSaveAs
2050
fm
parents: 2049
diff changeset
  2018
"Saves the language selected in the specified fileName."
fm
parents: 2049
diff changeset
  2019
     |lang aFilename|
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2020
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  2021
    lang := self requestLanguageToSave.
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2022
    lang isNil ifTrue:[^ self].
3629
3b7a40bf90cb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3627
diff changeset
  2023
    
2053
8440fcd83b7b 2.1 felix
fm
parents: 2051
diff changeset
  2024
    aFilename := self requestFilenameFor:lang.
2050
fm
parents: 2049
diff changeset
  2025
    aFilename isNil ifTrue:[^ self].
fm
parents: 2049
diff changeset
  2026
    self saveResourceFile:aFilename for:lang asSymbol
3629
3b7a40bf90cb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3627
diff changeset
  2027
3b7a40bf90cb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3627
diff changeset
  2028
    "Modified (format): / 30-10-2018 / 16:33:04 / Claus Gittinger"
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2029
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2030
3599
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
  2031
mergeLanguages
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
  2032
    |sourceLanguage destLanguage possibleDestinationLanguages|
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
  2033
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
  2034
    sourceLanguage := Dialog 
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
  2035
                        request:'Merge entries from:' 
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
  2036
                        initialAnswer:nil 
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
  2037
                        list:(self languagesList)
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
  2038
                        title:'Source language'.
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
  2039
    sourceLanguage isEmptyOrNil ifTrue:[^ self].
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
  2040
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
  2041
    possibleDestinationLanguages := self languagesList copyWithout:sourceLanguage.
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
  2042
    
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
  2043
    destLanguage := Dialog 
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
  2044
                        request:'Destination language:\(Missing entries in destination are filled in from source)' withCRs 
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
  2045
                        initialAnswer:(possibleDestinationLanguages size == 1
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
  2046
                                        ifTrue:[possibleDestinationLanguages first]
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
  2047
                                        ifFalse:[nil])
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
  2048
                        list:possibleDestinationLanguages
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
  2049
                        title:'Destination language'.
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
  2050
    destLanguage isEmptyOrNil ifTrue:[^ self].
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
  2051
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
  2052
    "/ all empty entries of dest are filled in from source
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
  2053
    keyStringsToLanguageMappings keys do:[:eachKey |
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
  2054
        |newXlation|
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
  2055
        
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
  2056
        (keyStringsToLanguageMappings at:eachKey language:destLanguage) isEmptyOrNil ifTrue:[
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
  2057
            newXlation := keyStringsToLanguageMappings at:eachKey language:sourceLanguage.
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
  2058
            newXlation notNil ifTrue:[
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
  2059
                self halt.
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
  2060
                keyStringsToLanguageMappings at:eachKey language:destLanguage put:newXlation.
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
  2061
            ]
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
  2062
        ]
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
  2063
    ]
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
  2064
!
5b4499069510 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3595
diff changeset
  2065
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2066
openDocumentation
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2067
    "This method was generated by the Browser.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2068
     It will be invoked when the menu-item 'help-documentation' is selected."
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2069
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2070
    "/ change below as required ...
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2071
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2072
    "/ to open an HTML viewer on some document (under 'doc/online/<language>/' ):
2413
655f1c52504c help file reference fixed
Claus Gittinger <cg@exept.de>
parents: 2410
diff changeset
  2073
    HTMLDocumentView openFullOnDocumentationFile:'tools/languageEditor/TOP.html'.
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2074
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2075
    "/ add application-specific help files under the 'doc/online/<language>/help/appName'
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2076
    "/ directory, and open a viewer with:
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2077
    "/ HTMLDocumentView openFullOnDocumentationFile:'help/<MyApplication>/TOP.html'.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2078
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2079
3629
3b7a40bf90cb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3627
diff changeset
  2080
openFileBrowserOnResourceDirectory
3b7a40bf90cb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3627
diff changeset
  2081
    |files dirs|
3b7a40bf90cb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3627
diff changeset
  2082
3b7a40bf90cb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3627
diff changeset
  2083
    files := keyStringsToLanguageMappings perLanguageInfo 
3b7a40bf90cb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3627
diff changeset
  2084
                keysAndValuesCollect:[:lang :eachInfo |
3b7a40bf90cb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3627
diff changeset
  2085
                    eachInfo at:#filename ifAbsent:nil
3b7a40bf90cb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3627
diff changeset
  2086
                ].
3b7a40bf90cb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3627
diff changeset
  2087
    files := files reject:[:f | f isNil].
3b7a40bf90cb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3627
diff changeset
  2088
    dirs := files collect:[:fn | fn asFilename directoryName] as:Set.
3b7a40bf90cb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3627
diff changeset
  2089
    dirs do:[:eachDir |
3b7a40bf90cb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3627
diff changeset
  2090
        UserPreferences current fileBrowserClass openOn:eachDir
3b7a40bf90cb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3627
diff changeset
  2091
    ]
3b7a40bf90cb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3627
diff changeset
  2092
3b7a40bf90cb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3627
diff changeset
  2093
    "Created: / 30-10-2018 / 16:32:21 / Claus Gittinger"
3b7a40bf90cb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3627
diff changeset
  2094
!
3b7a40bf90cb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3627
diff changeset
  2095
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2096
readResourceFile:aFilename
2031
85947c4c6502 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2015
diff changeset
  2097
    |lang|
85947c4c6502 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2015
diff changeset
  2098
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  2099
    lang := self requestLanguage.
2031
85947c4c6502 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2015
diff changeset
  2100
    lang isNil ifTrue:[^ self ].
85947c4c6502 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2015
diff changeset
  2101
3639
e8a2e6f41121 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3638
diff changeset
  2102
    self readResourceFile:aFilename asLanguage:(lang asSymbol)
e8a2e6f41121 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3638
diff changeset
  2103
e8a2e6f41121 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3638
diff changeset
  2104
    "Modified (format): / 20-02-2019 / 11:52:39 / Claus Gittinger"
2031
85947c4c6502 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2015
diff changeset
  2105
!
85947c4c6502 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2015
diff changeset
  2106
2410
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  2107
readResourceFileForPackage:aPackage
3640
278e1952a646 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3639
diff changeset
  2108
    |allLanguages lang packageDir resourceDir|
2410
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  2109
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  2110
    packageDir := Smalltalk packageDirectoryForPackageId:aPackage.
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  2111
    resourceDir := packageDir asFilename construct:'resources'.
3638
0b8614c96523 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3629
diff changeset
  2112
    resourceDir exists ifFalse:[
0b8614c96523 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3629
diff changeset
  2113
        Dialog information:'No resource directory present for package: ',aPackage.
0b8614c96523 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3629
diff changeset
  2114
        ^ self
0b8614c96523 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3629
diff changeset
  2115
    ].    
2410
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  2116
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  2117
    allLanguages := Set new.
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  2118
    resourceDir directoryContentsAsFilenamesDo:[:eachFile |
3627
9ee9d719f243 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3626
diff changeset
  2119
        eachFile suffix = 'rs' ifTrue:[
9ee9d719f243 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3626
diff changeset
  2120
            (('##.rs' match:eachFile baseName)
9ee9d719f243 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3626
diff changeset
  2121
            or:[('##-##.rs' match:eachFile baseName)]) ifTrue:[
9ee9d719f243 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3626
diff changeset
  2122
                allLanguages add:(eachFile withoutSuffix baseName)
9ee9d719f243 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3626
diff changeset
  2123
            ].
9ee9d719f243 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3626
diff changeset
  2124
        ].
2410
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  2125
    ].
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  2126
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  2127
    allLanguages addAll:languagesList.
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  2128
    allLanguages := allLanguages asSortedCollection.
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  2129
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2130
    lang := Dialog
3627
9ee9d719f243 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3626
diff changeset
  2131
        choose:(resources string:'For which language ?')
9ee9d719f243 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3626
diff changeset
  2132
        fromList:allLanguages
9ee9d719f243 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3626
diff changeset
  2133
        values:allLanguages
9ee9d719f243 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3626
diff changeset
  2134
        buttons:(resources array:#('All'))
9ee9d719f243 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3626
diff changeset
  2135
        values:#(all)
9ee9d719f243 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3626
diff changeset
  2136
        lines:10
9ee9d719f243 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3626
diff changeset
  2137
        cancel:nil.
2410
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  2138
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  2139
    lang isNil ifTrue:[^ self ].
3640
278e1952a646 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3639
diff changeset
  2140
    self readResourceFileForPackage:aPackage language:lang
278e1952a646 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3639
diff changeset
  2141
278e1952a646 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3639
diff changeset
  2142
    "Modified: / 20-02-2019 / 12:20:35 / Claus Gittinger"
278e1952a646 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3639
diff changeset
  2143
!
278e1952a646 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3639
diff changeset
  2144
278e1952a646 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3639
diff changeset
  2145
readResourceFileForPackage:aPackage language:lang
278e1952a646 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3639
diff changeset
  2146
    "lang may be a language (de, en) or #all"
278e1952a646 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3639
diff changeset
  2147
278e1952a646 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3639
diff changeset
  2148
    |allLanguages packageDir resourceDir langFile|
278e1952a646 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3639
diff changeset
  2149
278e1952a646 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3639
diff changeset
  2150
    packageDir := Smalltalk packageDirectoryForPackageId:aPackage.
278e1952a646 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3639
diff changeset
  2151
    resourceDir := packageDir asFilename construct:'resources'.
278e1952a646 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3639
diff changeset
  2152
    resourceDir exists ifFalse:[
278e1952a646 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3639
diff changeset
  2153
        Dialog information:'No resource directory present for package: ',aPackage.
278e1952a646 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3639
diff changeset
  2154
        ^ self
278e1952a646 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3639
diff changeset
  2155
    ].    
278e1952a646 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3639
diff changeset
  2156
278e1952a646 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3639
diff changeset
  2157
    lang = #all ifTrue:[
278e1952a646 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3639
diff changeset
  2158
        allLanguages := Set new.
278e1952a646 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3639
diff changeset
  2159
        resourceDir directoryContentsAsFilenamesDo:[:eachFile |
278e1952a646 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3639
diff changeset
  2160
            eachFile suffix = 'rs' ifTrue:[
278e1952a646 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3639
diff changeset
  2161
                (('##.rs' match:eachFile baseName)
278e1952a646 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3639
diff changeset
  2162
                or:[('##-##.rs' match:eachFile baseName)]) ifTrue:[
278e1952a646 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3639
diff changeset
  2163
                    allLanguages add:(eachFile withoutSuffix baseName)
278e1952a646 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3639
diff changeset
  2164
                ].
278e1952a646 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3639
diff changeset
  2165
            ].
278e1952a646 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3639
diff changeset
  2166
        ].
278e1952a646 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3639
diff changeset
  2167
278e1952a646 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3639
diff changeset
  2168
        allLanguages addAll:languagesList.
278e1952a646 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3639
diff changeset
  2169
        allLanguages := allLanguages asSortedCollection.
278e1952a646 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3639
diff changeset
  2170
3627
9ee9d719f243 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3626
diff changeset
  2171
        allLanguages do:[:lang |
9ee9d719f243 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3626
diff changeset
  2172
            self addLanguage:lang.
9ee9d719f243 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3626
diff changeset
  2173
            self readResourceFile:(resourceDir construct:lang,'.rs') asLanguage:lang.
9ee9d719f243 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3626
diff changeset
  2174
        ].
2410
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  2175
    ] ifFalse:[
3640
278e1952a646 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3639
diff changeset
  2176
        langFile := resourceDir construct:lang,'.rs'.
3627
9ee9d719f243 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3626
diff changeset
  2177
        self readResourceFile:langFile asLanguage:lang asSymbol
2410
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  2178
    ].
3627
9ee9d719f243 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3626
diff changeset
  2179
    self window label:('%1: %2' bindWith:self class nameWithoutPrefix with:aPackage)
9ee9d719f243 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3626
diff changeset
  2180
3640
278e1952a646 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3639
diff changeset
  2181
    "Created: / 20-02-2019 / 12:20:02 / Claus Gittinger"
2410
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  2182
!
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  2183
2050
fm
parents: 2049
diff changeset
  2184
removeLanguage
3246
034fe0de47bd #BUGFIX
Stefan Vogel <sv@exept.de>
parents: 3245
diff changeset
  2185
    |languagesToRemove|
034fe0de47bd #BUGFIX
Stefan Vogel <sv@exept.de>
parents: 3245
diff changeset
  2186
3601
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2187
    languagesToRemove := Dialog 
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2188
                            chooseMultiple:'Which language(s) do you want to remove?' 
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2189
                            fromList:languagesList lines:10.
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2190
3246
034fe0de47bd #BUGFIX
Stefan Vogel <sv@exept.de>
parents: 3245
diff changeset
  2191
    languagesToRemove isEmptyOrNil ifTrue:[^ self ].
034fe0de47bd #BUGFIX
Stefan Vogel <sv@exept.de>
parents: 3245
diff changeset
  2192
    (Dialog confirm: 'Are you sure to remove the languages: ', languagesToRemove printString) ifTrue:[
3601
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2193
          self languagesList removeAll:languagesToRemove.
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2194
          self shownLanguages removeAll:languagesToRemove.
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2195
    ].
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2196
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2197
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2198
removeTranslation
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2199
    |rowSelectionIndex selectedKey|
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2200
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2201
    rowSelectionIndex := self selectedKeyRow value.
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2202
    rowSelectionIndex isNil ifTrue:[^self].
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2203
    rowSelectionIndex ~~ 0 ifTrue:[
3601
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2204
        selectedKey := keyStringsToLanguageMappings keyAt:rowSelectionIndex ifAbsent:nil.
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2205
        selectedKey isNil ifTrue:[^self].
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2206
        (Dialog confirm:(resources string:'Really remove key %1' with:selectedKey)) ifTrue:[
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2207
            keyStringsToLanguageMappings removeKey:selectedKey.
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2208
        ].
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2209
    ].
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2210
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2211
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2212
runApplicationAndCollectTranslations
2047
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  2213
    |applicationClass newTranslations pseudoPack app startSelector|
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2214
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2215
    monitoredApplication notNil ifTrue:[
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2216
	monitoredApplication terminate.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2217
	[monitoredApplication notNil] whileTrue:[
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2218
	    Delay waitForSeconds:0.1
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2219
	].
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2220
    ].
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2221
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2222
    applicationClass := Dialog
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2223
		requestClass:'Application class to start and collect translations from:'
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2224
		okLabel:'OK'
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2225
		initialAnswer:(lastExtractedApplicationClass ? LastExtractedApplicationClass ).
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2226
    applicationClass isNil ifTrue:[^ self ].
3286
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  2227
    applicationClass isNameSpace ifTrue:[
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2228
	Dialog warn:'Entered class is a NameSpace'.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2229
	^ self.
2047
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  2230
    ].
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  2231
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  2232
    applicationClass isVisualStartable ifTrue:[
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2233
	startSelector := #open
2047
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  2234
    ] ifFalse:[
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2235
	startSelector := Dialog
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2236
		    request:'Entered class seems to be no application class. Ok to start using selector:'
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2237
		    initialAnswer:((applicationClass respondsTo:#'start')
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2238
					ifTrue:#'start'
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2239
					ifFalse:#'new')
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2240
		    okLabel:'START'
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2241
		    title:'Start Application'.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2242
	startSelector isNil ifTrue:[
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2243
	    ^ self
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2244
	].
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2245
	startSelector := startSelector asSymbol.
2047
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  2246
    ].
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2247
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2248
    lastExtractedApplicationClass := LastExtractedApplicationClass := applicationClass.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2249
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2250
    newTranslations := Set new.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2251
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2252
    pseudoPack := AccessCollectingPseudoResourcePack new.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2253
    pseudoPack realResourcePack:(applicationClass classResources).
3286
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  2254
    pseudoPack watchingTranslationEditor:self.
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2255
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2256
    self stopApplicationIconVisibleHolder value:true.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2257
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2258
    monitoredApplication :=
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2259
	[
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2260
	    [
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2261
		app := applicationClass new.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2262
		app resources:pseudoPack.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2263
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2264
		app perform:startSelector.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2265
		app window waitUntilVisible.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2266
		app window waitUntilClosed.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2267
	    ] ensure:[
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2268
		app closeRequest.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2269
		self stopApplicationIconVisibleHolder value:false.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2270
		monitoredApplication := nil.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2271
	    ].
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2272
	] fork.
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2273
!
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2274
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2275
searchStringInLastNameSpace
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2276
2323
9b257cbd0ea9 *** empty log message ***
fm
parents: 2163
diff changeset
  2277
    |selectedKey browser lastSearchPatterns|
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2278
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2279
    selectedKey := self selectedKey.
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2280
    selectedKey isNil ifTrue:[^Dialog information: 'No selected key'].
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2281
    browser := NewSystemBrowser new "open".
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2282
    browser allButOpen.
2323
9b257cbd0ea9 *** empty log message ***
fm
parents: 2163
diff changeset
  2283
    lastSearchPatterns := browser lastSearchPatterns.
9b257cbd0ea9 *** empty log message ***
fm
parents: 2163
diff changeset
  2284
    (lastSearchPatterns notNil and:[lastSearchPatterns first ~= selectedKey]) ifTrue:[
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2285
	browser lastSearchPatterns addFirst: selectedKey
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2286
    ].
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  2287
    SearchDialog lastStringSearchArea: #currentNameSpace.
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2288
    lastNameSpace isNil ifTrue:[
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2289
	self changeLastNameSpace.
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2290
    ].
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2291
    lastNameSpace notNil ifTrue:[
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2292
"/        browser navigationState selectedClasses value: lastNameSpace allClasses.
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2293
	browser navigationState nameSpaceFilter value: (OrderedCollection with:lastNameSpace name).
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2294
	browser navigationState selectedNamespaces value: (OrderedCollection with:lastNameSpace name).
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2295
    ].
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2296
    self withWaitCursorDo:[
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2297
	browser browseMenuMethodsWithString
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2298
    ].
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  2299
!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  2300
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  2301
searchStringInLastPackage
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  2302
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  2303
    | selectedKey browser lastSearchPatterns|
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  2304
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  2305
    selectedKey := self selectedKey.
3286
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  2306
    selectedKey isNil ifTrue:[^ Dialog information: 'No selected key'].
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  2307
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  2308
    browser := NewSystemBrowser new "open".
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  2309
    browser allButOpen.
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2310
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  2311
    lastSearchPatterns := browser lastSearchPatterns.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  2312
    (lastSearchPatterns notNil and:[lastSearchPatterns first ~= selectedKey]) ifTrue:[
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2313
	browser lastSearchPatterns addFirst: selectedKey
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  2314
    ].
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  2315
    SearchDialog lastStringSearchArea: #currentPackage.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  2316
    lastPackage isNil ifTrue:[
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2317
	self changeLastPackage.
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  2318
    ].
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  2319
    lastPackage notNil ifTrue:[
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  2320
"/        browser navigationState selectedClasses value: lastNameSpace allClasses.
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2321
	browser navigationState packageFilter value: (OrderedCollection with:lastPackage).
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2322
	browser navigationState selectedProjects value: (OrderedCollection with:lastPackage).
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  2323
    ].
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  2324
    self withWaitCursorDo:[
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2325
	browser
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2326
	    askForMethodAndSpawnSearchTitle:'String to Search for in Sources:'
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2327
	    browserLabel:'Methods containing "%1"'
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2328
	    searchWith:#( #'findString:in:ignoreCase:match:' #'findString:inMethods:ignoreCase:match:' )
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2329
	    searchWhat:#string
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2330
	    searchArea:#currentPackage
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2331
	    withCaseIgnore:false
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2332
	    withTextEntry:false
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2333
	    withMatch:true
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2334
	    withMethodList:false
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2335
	    setSearchPattern:[:brwsr :string :ignoreCase :doMatch|
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2336
				brwsr autoSearchPattern:string ignoreCase:ignoreCase.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2337
			     ]
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2338
	    initialText:selectedKey "/ does not work: ('''*',selectedKey,'*''') check match!!
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  2339
    ].
3626
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  2340
!
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  2341
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  2342
searchTranslation
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  2343
    |searched foundIn foundExactIn foundMatchIn|
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  2344
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  2345
    searched := Dialog request:'Key or Value to Search:'.
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  2346
    searched isEmptyOrNil ifTrue:[^self].
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  2347
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  2348
    foundIn := OrderedCollection new.
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  2349
    ResourcePack allInstancesDo:[:each |
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  2350
        each keysAndValuesDo:[:key :val |
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  2351
            |orig xlation|
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  2352
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  2353
            orig := key printString.
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  2354
            xlation := val printString.
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  2355
            (orig = searched or:[xlation = searched]) ifTrue:[
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  2356
                foundExactIn add:each    
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  2357
            ] ifFalse:[
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  2358
                ((orig includesString:searched caseSensitive:false) 
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  2359
                or:[xlation includesString:searched caseSensitive:false]) ifTrue:[
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  2360
                    foundIn add:each 
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  2361
                ] ifFalse:[
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  2362
                    ((searched match:orig caseSensitive:false) 
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  2363
                    or:[searched match:xlation caseSensitive:false]) ifTrue:[
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  2364
                        foundMatchIn add:each 
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  2365
                    ].
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  2366
                ].
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  2367
            ].
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  2368
        ].
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  2369
    ].
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  2370
self halt.
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  2371
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  2372
    "Created: / 25-10-2018 / 16:16:13 / Claus Gittinger"
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2373
! !
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2374
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2375
!InternationalLanguageTranslationEditor methodsFor:'menus dynamic'!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2376
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2377
disableLanguageDisplayFor:lang
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2378
    self shownLanguages remove:lang ifAbsent:[]
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2379
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2380
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2381
enableLanguageDisplayFor:newLang
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2382
    |shownLanguagesInOrder|
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2383
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2384
    (self shownLanguages includes:newLang) ifFalse:[
2048
dcec4e818069 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2047
diff changeset
  2385
"/        shownLanguagesInOrder := self languagesList
dcec4e818069 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2047
diff changeset
  2386
"/                                    select:[:lang | (self shownLanguages includes:lang)
dcec4e818069 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2047
diff changeset
  2387
"/                                                    or:[ lang = newLang ]].
dcec4e818069 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2047
diff changeset
  2388
"/        self shownLanguages contents:shownLanguagesInOrder.
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2389
	self shownLanguages add:newLang.
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2390
    ]
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2391
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2392
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2393
isLanguageShown:lang
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2394
    ^ self shownLanguages includes:lang
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2395
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2396
3189
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
  2397
menuSliceTranslateGenerate
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
  2398
    | menu |
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
  2399
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
  2400
    menu := Menu new.
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2401
    keyStringsToLanguageMappings notNil ifTrue:[
3601
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2402
        keyStringsToLanguageMappings languages do:[:lang |
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2403
            menu addItem:
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2404
                (MenuItem
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2405
                    label: (resources string: 'Generate Missing Translations - %1' with: lang asUppercase)
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2406
                    itemValue: [ self generateMissingTranslationsFor: (Array with: lang) ])
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2407
        ].
3189
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
  2408
    ].
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
  2409
    ^ menu
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
  2410
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
  2411
    "Created: / 19-02-2015 / 12:44:13 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
  2412
!
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
  2413
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2414
shownLanguagesMenu
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2415
    <resource: #programMenu >
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2416
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2417
    ^ [
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2418
	|m selected|
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2419
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2420
	m := Menu new.
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2421
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2422
	self languagesList do:[:lang |
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2423
	    |item|
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2424
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2425
	    item := MenuItem label:lang.
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2426
	    item indication:(self languageShownHolderFor:lang).
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2427
	    item hideMenuOnActivated:false.
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2428
	    m addItem:item.
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2429
	].
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2430
	m
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2431
    ].
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2432
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2433
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2434
toggleLanguageDisplayFor:lang
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2435
    (self shownLanguages includes:lang) ifTrue:[
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2436
	self disableLanguageDisplayFor:lang
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2437
    ] ifFalse:[
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2438
	self enableLanguageDisplayFor:lang
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2439
    ].
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2440
! !
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2441
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2442
!InternationalLanguageTranslationEditor methodsFor:'private-key extraction'!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2443
2032
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  2444
addAllTranslations:newTranslations
3286
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  2445
    "merge found xlations into the list of already present xlations"
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2446
2034
23d558e4d32e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2033
diff changeset
  2447
    |newTranslationKeys stringKeys nonStringKeys|
2032
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  2448
3245
ff9a2e01e0a5 #BUGFIX
Stefan Vogel <sv@exept.de>
parents: 3189
diff changeset
  2449
    newTranslationKeys := newTranslations select:[:k | k notEmptyOrNil and:[k isString not or:[k isBlank not]]].
2032
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  2450
    newTranslationKeys := newTranslationKeys select:[:k | (keyStringsToLanguageMappings includesKey:k) not].
3286
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  2451
    "/ follow the common-xlations algrithm of ResourcePack
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  2452
    "/ (which knows how to xlate strings with additional special chars.)
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2453
    newTranslationKeys :=
3601
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2454
        newTranslationKeys collect:[:oldKey |
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2455
            |newKey methods|
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2456
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2457
            (oldKey endsWith:' ...') ifTrue:[
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2458
                newKey := oldKey copyButLast:4.
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2459
            ] ifFalse:[ (oldKey endsWith:'...') ifTrue:[
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2460
                newKey := oldKey copyButLast:3.
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2461
            ] ifFalse:[ ('\.:?=,!! ' includes:oldKey last) ifTrue:[
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2462
                newKey := oldKey copyButLast:1.
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2463
            ] ifFalse:[ ((oldKey first == $() and:[ oldKey last == $) ]) ifTrue:[
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2464
                newKey := oldKey copyFrom:2 to:oldKey size - 1
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2465
            ] ifFalse:[ ((oldKey first == $[) and:[ oldKey last == $] ]) ifTrue:[
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2466
                newKey := oldKey copyFrom:2 to:oldKey size - 1
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2467
            ] ifFalse:[
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2468
                newKey :=oldKey
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2469
            ]]]]].
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2470
            "/ must attach oldKey-methods to newKey
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2471
            methods := methodsUsingKey at:oldKey ifAbsent:nil.
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2472
            methods notNil ifTrue:[
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2473
                (methodsUsingKey at:newKey ifAbsentPut:[Set new]) addAll:methods
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2474
            ].
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2475
            newKey
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2476
        ].
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2477
2034
23d558e4d32e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2033
diff changeset
  2478
    newTranslationKeys := newTranslationKeys asSet.
3246
034fe0de47bd #BUGFIX
Stefan Vogel <sv@exept.de>
parents: 3245
diff changeset
  2479
    newTranslationKeys := newTranslationKeys select:[:k | (keyStringsToLanguageMappings includesKey:k) not].
2034
23d558e4d32e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2033
diff changeset
  2480
2032
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  2481
    newTranslationKeys notEmpty ifTrue:[
3601
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2482
        stringKeys := newTranslationKeys select:[:k | k isString].
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2483
        nonStringKeys := newTranslationKeys select:[:k | k isString not].
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2484
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2485
        stringKeys := stringKeys asSortedCollection.
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2486
        keyStringsToLanguageMappings addKeys:stringKeys.
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2487
        keyStringsToLanguageMappings addKeys:nonStringKeys.
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2488
        modified := true.
2032
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  2489
    ].
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  2490
!
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  2491
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  2492
extractTranslationsFromClass:aClass
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  2493
    |newTranslations|
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  2494
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  2495
    newTranslations := Set new.
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  2496
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  2497
    self withWaitCursorDo:[
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2498
	"/ now, the hard part:
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2499
	"/ possible translations are in the specs,
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2500
	"/ and all arguments to (resources string:) messages.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2501
	aClass instAndClassMethodsDo:[:eachMethod |
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2502
	    newTranslations addAll:( self extractTranslationsFromMethod:eachMethod ).
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2503
	].
3248
Stefan Vogel <sv@exept.de>
parents: 3246
diff changeset
  2504
    ].
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2505
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2506
    newTranslations :=
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2507
	newTranslations select:[:eachTranslation|
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2508
	    (aClass resources at:eachTranslation ifAbsent:nil) isNil
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2509
	].
2032
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  2510
    ^ newTranslations
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  2511
!
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  2512
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2513
extractTranslationsFromHelpSpecMethod:aMethod
3286
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  2514
    "return strings which need translation from a help-spec method"
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  2515
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2516
    |codeStrings matcher parseTree resourceKeys|
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2517
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2518
    parseTree := RBParser
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2519
	    parseMethod:aMethod source
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2520
	    onError: [:str :pos | Transcript showCR:str. Transcript showCR:pos.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2521
				  nil].
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2522
    parseTree isNil ifTrue:[^ #() ].
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2523
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2524
    codeStrings  :=
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2525
	#(
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2526
		'`@dict addPairsFrom: `#helpKeysAndStrings'
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2527
		'^ `#lit'
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2528
	).
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2529
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2530
    resourceKeys := Set new.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2531
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2532
    matcher := ParseTreeSearcher new.
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2533
    matcher
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2534
	matchesAnyOf: codeStrings
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2535
	do: [:aNode :answer |
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2536
		|sel argNode arg|
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2537
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2538
		aNode isReturn ifTrue:[
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2539
		    "/ a ^ #(...)
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2540
		    aNode value isLiteralArray ifTrue:[
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2541
			aNode value value pairWiseDo:[:helpKey :helpString |
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2542
			    self rememberMethod:aMethod usingKey:helpString.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2543
			    resourceKeys add:helpString.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2544
			].
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2545
		    ].
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2546
		] ifFalse:[
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2547
		    sel := aNode selector.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2548
		    (sel startsWith:'addPairsFrom:') ifTrue:[
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2549
			argNode := aNode arguments at:1.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2550
			argNode isLiteralArray ifTrue:[
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2551
			    arg := argNode value.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2552
			    arg doWithIndex:[:el :index |
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2553
				index even ifTrue:[
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2554
				    el isString ifTrue:[
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2555
					self rememberMethod:aMethod usingKey:el.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2556
					resourceKeys add:el.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2557
				    ]
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2558
				].
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2559
			    ].
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2560
			] ifFalse:[
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2561
			    Transcript halt
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2562
				showCR:(resources
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2563
					    string:'Cannot derive resourceKey from non-literal array: %1 in %2'
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2564
					    with:argNode formattedCode
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2565
					    with:aMethod selector).
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2566
			].
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2567
		    ].
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2568
		].
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2569
		aNode
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2570
	    ].
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2571
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2572
    matcher executeTree: parseTree initialAnswer: nil.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2573
    ^ resourceKeys
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2574
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2575
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2576
extractTranslationsFromMenuSpecMethod:aMethod
3286
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  2577
    "return strings which need translation from a menu-spec method"
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  2578
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2579
    |menu resourceKeys|
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2580
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2581
    menu := aMethod mclass theNonMetaclass perform:aMethod selector.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2582
    menu isNil ifTrue:[ ^ #() ].
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2583
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2584
    (menu isKindOf:Menu) ifFalse:[
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2585
	menu := Menu new fromLiteralArrayEncoding:menu
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2586
    ].
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2587
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2588
    resourceKeys := Set new.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2589
    menu allItemsDo:[:aMenuItem |
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2590
	aMenuItem translateLabel ifTrue:[
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2591
	    (aMenuItem isSeparatorItem or:[aMenuItem isMenuSlice])  ifFalse:[
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2592
		self rememberMethod:aMethod usingKey:aMenuItem label.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2593
		resourceKeys add:aMenuItem label.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2594
	    ]
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2595
	]
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2596
    ].
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2597
    ^ resourceKeys
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2598
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2599
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2600
extractTranslationsFromMethod:aMethod
3286
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  2601
    "return strings which need translation from a method."
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2602
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2603
    |mResources|
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2604
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2605
    mResources := aMethod resources.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2606
    mResources notNil ifTrue:[
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2607
	(mResources includesKey:#menu) ifTrue:[
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2608
	     ^ self extractTranslationsFromMenuSpecMethod:aMethod.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2609
	].
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2610
	(mResources includesKey:#canvas) ifTrue:[
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2611
	     ^ self extractTranslationsFromUISpecMethod:aMethod.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2612
	].
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2613
	(mResources includesKey:#help) ifTrue:[
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2614
	     ^ self extractTranslationsFromHelpSpecMethod:aMethod.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2615
	].
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2616
	(mResources includesKey:#tableColumns) ifTrue:[
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2617
	     ^ self extractTranslationsFromTableColumnsSpecMethod:aMethod.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2618
	].
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2619
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2620
	^ self extractTranslationsFromSpecMethod:aMethod.
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2621
    ].
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2622
    ^ self extractTranslationsFromMethodsCode:aMethod
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2623
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2624
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2625
extractTranslationsFromMethodsCode:aMethod
3286
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  2626
    "return strings which need translation from a normal method.
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  2627
     detects messages to the resource translation mechanism"
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  2628
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2629
    |codeStrings matcher parseTree resourceKeys|
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2630
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2631
    parseTree := RBParser
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2632
	    parseMethod:aMethod source
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2633
	    onError: [:str :pos | Transcript showCR:str. Transcript showCR:pos.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2634
				  nil].
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2635
    parseTree isNil ifTrue:[^ #() ].
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2636
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2637
    codeStrings  :=
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2638
	#(
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2639
		'resources `@msg: `@args'
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2640
		'self resources `@msg: `@args'
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2641
		'self class resources `@msg: `@args'
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2642
		'self class classResources `@msg: `@args'
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2643
		'self classResources `@msg: `@args'
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2644
		'`V classResources `@msg: `@args'
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2645
	).
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2646
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2647
    resourceKeys := Set new.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2648
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2649
    matcher := ParseTreeSearcher new.
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2650
    matcher
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2651
	matchesAnyOf: codeStrings
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2652
	do: [:aNode :answer |
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2653
		|sel keyStringArgNode keyStringArg|
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2654
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2655
		sel := aNode selector.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2656
		((sel startsWith:'string:') or:[(sel startsWith:'at:') or:[sel startsWith:'stringWithCRs:']]) ifTrue:[
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2657
		    keyStringArgNode := aNode arguments at:1.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2658
		    (keyStringArg := self literalStringOrStringConcatenation:keyStringArgNode) notNil ifTrue:[
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2659
			self rememberMethod:aMethod usingKey:keyStringArg.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2660
			resourceKeys add:keyStringArg.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2661
		    ] ifFalse:[
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2662
			Transcript
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2663
			    showCR:(resources
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2664
				    string:'[LanguageTranslator] warning: Cannot derive resourceKey from non-string: %1 in %2'
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2665
				    with:keyStringArgNode formattedCode
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2666
				    with:aMethod whoString).
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2667
		    ].
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2668
		].
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2669
		aNode
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2670
	    ].
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2671
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2672
    matcher executeTree: parseTree initialAnswer: nil.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2673
    ^ resourceKeys
3189
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
  2674
4f828e688bf5 Support to automatically generate translations (for testing only)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3187
diff changeset
  2675
    "Modified: / 19-02-2015 / 11:42:04 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2676
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2677
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2678
extractTranslationsFromSpecMethod:aMethod
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2679
    ^ #()
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2680
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2681
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2682
extractTranslationsFromTableColumnsSpecMethod:aMethod
3286
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  2683
    "return strings which need translation from a table-spec method"
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  2684
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2685
    |columnDescription resourceKeys|
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2686
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2687
    columnDescription := aMethod mclass theNonMetaclass perform:aMethod selector.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2688
    columnDescription isNil ifTrue:[ ^ #() ].
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2689
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2690
    (columnDescription first isKindOf:DataSetColumnSpec) ifFalse:[
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2691
	columnDescription := columnDescription collect:[:el | DataSetColumnSpec new fromLiteralArrayEncoding:el].
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2692
    ].
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2693
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2694
    resourceKeys := Set new.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2695
    columnDescription do:[:aColumnSpec |
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2696
	aColumnSpec translateLabel ifTrue:[
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2697
	    self rememberMethod:aMethod usingKey:aColumnSpec label.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2698
	    resourceKeys add:aColumnSpec label.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2699
	]
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2700
    ].
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2701
    ^ resourceKeys
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2702
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2703
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2704
extractTranslationsFromUISpecMethod:aMethod
3286
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  2705
    "return strings which need translation from a UI-spec method"
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2706
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2707
    |spec resourceKeys visitor|
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2708
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2709
    spec := aMethod mclass theNonMetaclass perform:aMethod selector.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2710
    spec isNil ifTrue:[ ^ #() ].
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2711
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2712
    (spec isKindOf:UISpecification) ifFalse:[
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2713
	spec := UISpecification from:spec
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2714
    ].
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2715
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2716
    resourceKeys := Set new.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2717
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2718
    visitor := UISpecVisitor new.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2719
    spec acceptVisitor:visitor.
3286
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  2720
    visitor translatedLabels do:[:each |
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2721
	self rememberMethod:aMethod usingKey:each.
3286
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  2722
    ].
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2723
    ^ visitor translatedLabels
3284
4de194c0ee74 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3283
diff changeset
  2724
!
4de194c0ee74 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3283
diff changeset
  2725
4de194c0ee74 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3283
diff changeset
  2726
literalStringOrStringConcatenation:aParseNode
4de194c0ee74 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3283
diff changeset
  2727
    "nil if not a literal or a string concatenation"
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2728
3284
4de194c0ee74 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3283
diff changeset
  2729
    aParseNode isLiteralString ifTrue:[^ aParseNode value].
4de194c0ee74 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3283
diff changeset
  2730
    (aParseNode isMessage and:[aParseNode selector == #,]) ifTrue:[
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2731
	|leftString rightString|
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2732
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2733
	aParseNode receiver isLiteralString ifTrue:[
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2734
	    leftString := aParseNode receiver value
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2735
	] ifFalse:[
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2736
	    leftString := self literalStringOrStringConcatenation:aParseNode receiver.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2737
	].
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2738
	aParseNode arguments first isLiteralString ifTrue:[
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2739
	    rightString := aParseNode arguments first value
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2740
	] ifFalse:[
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2741
	    rightString := self literalStringOrStringConcatenation:aParseNode arguments first.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2742
	].
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2743
	(leftString notNil and:[rightString notNil]) ifTrue:[
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2744
	    ^ leftString , rightString
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2745
	].
3284
4de194c0ee74 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3283
diff changeset
  2746
    ].
4de194c0ee74 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3283
diff changeset
  2747
    ^ nil
3286
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  2748
!
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  2749
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  2750
recordNewTranslation:aString
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  2751
    "called from recorder, when the monitored application does a translation"
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2752
3286
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  2753
    self addAllTranslations:{ aString }
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  2754
!
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  2755
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  2756
rememberMethod:aMethod usingKey:aKey
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  2757
    (methodsUsingKey at:aKey ifAbsentPut:[Set new]) add:aMethod
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2758
! !
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2759
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2760
!InternationalLanguageTranslationEditor methodsFor:'queries'!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2761
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2762
autoAccept
2050
fm
parents: 2049
diff changeset
  2763
fm
parents: 2049
diff changeset
  2764
    ^ self autoAcceptHolder value
fm
parents: 2049
diff changeset
  2765
!
fm
parents: 2049
diff changeset
  2766
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2767
currentExampleLanguageText
2050
fm
parents: 2049
diff changeset
  2768
   "Returns the language text corresponding for the current selected key and the example language selection"
fm
parents: 2049
diff changeset
  2769
fm
parents: 2049
diff changeset
  2770
  ^self languageTextFromSelectedKeyFor: self exampleLanguageSelectionHolder value
fm
parents: 2049
diff changeset
  2771
!
fm
parents: 2049
diff changeset
  2772
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  2773
currentLanguage
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  2774
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2775
    |colSelectionIndex |
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  2776
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  2777
    colSelectionIndex := dataSetView selectedColIndex.
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  2778
    ^colSelectionIndex > 1 ifTrue:[ shownLanguages at:colSelectionIndex-1 ] ifFalse:nil.
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  2779
!
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  2780
2050
fm
parents: 2049
diff changeset
  2781
exampleLanguageByDefault
fm
parents: 2049
diff changeset
  2782
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2783
    ^self shownLanguages isEmpty
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2784
	ifTrue:[nil]
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2785
	ifFalse:[self shownLanguages first]
2050
fm
parents: 2049
diff changeset
  2786
!
fm
parents: 2049
diff changeset
  2787
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  2788
hasFirstRowSelection
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  2789
    self selectedKeyRow isNil ifTrue:[^false].
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  2790
    ^ self selectedKeyRow value > 1
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  2791
!
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  2792
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  2793
hasLanguageSelection
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  2794
    dataSetView selectedColIndex isNil ifTrue:[^false].
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  2795
    ^ dataSetView selectedColIndex > 1
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  2796
!
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  2797
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2798
hasUnsavedChanges
3641
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  2799
    ^ modified ? false
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  2800
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  2801
    "Modified: / 20-02-2019 / 12:33:42 / Claus Gittinger"
2050
fm
parents: 2049
diff changeset
  2802
!
fm
parents: 2049
diff changeset
  2803
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2804
includesKey: aKey
3601
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2805
    ^ keyStringsToLanguageMappings notNil
9afa4a73568a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3599
diff changeset
  2806
    and:[ keyStringsToLanguageMappings includesKey:aKey ]
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2807
!
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2808
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  2809
isSearchForSimilarTranslationEnabled
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  2810
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2811
    ^self searchForSimilarTranslationEnableHolder value
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  2812
!
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  2813
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  2814
languageTextFromKey: aKeyIndex for: language
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2815
    "Returns the language text corresponding for the aKeyIndex and the received language"
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  2816
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  2817
    language isNil ifTrue:[^''].
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2818
    ^keyStringsToLanguageMappings at: aKeyIndex language:language.
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  2819
!
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  2820
2050
fm
parents: 2049
diff changeset
  2821
languageTextFromSelectedKeyFor: language
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2822
    "Returns the language text corresponding for the current selected key and the received language"
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2823
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2824
    ^self languageTextFromKey: self selectedKey for: language
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  2825
!
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  2826
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  2827
shouldCopyPreviousTranslationButtonBeEnabled
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2828
    ^ self hasLanguageSelection
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2829
	and:[self hasFirstRowSelection]
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  2830
!
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  2831
2323
9b257cbd0ea9 *** empty log message ***
fm
parents: 2163
diff changeset
  2832
shouldPasteOriginalButtonBeEnabled
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2833
    ^ self hasLanguageSelection
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2834
	and:[self hasFirstRowSelection]
2323
9b257cbd0ea9 *** empty log message ***
fm
parents: 2163
diff changeset
  2835
!
9b257cbd0ea9 *** empty log message ***
fm
parents: 2163
diff changeset
  2836
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  2837
shouldSearchForSimilarTranslation
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  2838
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2839
    self isSearchForSimilarTranslationEnabled ifFalse:[^false].
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2840
    (self languageTextHolder value notNil and:[self languageTextHolder value notEmpty]) ifTrue:[^false].
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2841
    (self hasLanguageSelection and:[self selectedKeyRow notNil]) ifFalse:[^false].
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2842
    ^true
2050
fm
parents: 2049
diff changeset
  2843
! !
fm
parents: 2049
diff changeset
  2844
fm
parents: 2049
diff changeset
  2845
!InternationalLanguageTranslationEditor methodsFor:'read/write resourceFile'!
fm
parents: 2049
diff changeset
  2846
2053
8440fcd83b7b 2.1 felix
fm
parents: 2051
diff changeset
  2847
encoderAt: lang
8440fcd83b7b 2.1 felix
fm
parents: 2051
diff changeset
  2848
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2849
    self alwaysWriteUTF8Holder value ifTrue:[^CharacterEncoder encoderForUTF8].
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2850
    ^keyStringsToLanguageMappings encoderAt: lang.
2053
8440fcd83b7b 2.1 felix
fm
parents: 2051
diff changeset
  2851
!
8440fcd83b7b 2.1 felix
fm
parents: 2051
diff changeset
  2852
2050
fm
parents: 2049
diff changeset
  2853
printEditingWarningOn: aStream
fm
parents: 2049
diff changeset
  2854
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2855
    aStream nextPutAll: ';';
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2856
	    cr;
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2857
	    nextPutAll: '; WARNING:';
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2858
	    cr;
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2859
	    nextPutAll: '; this file contains national characters.';
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2860
	    cr;
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2861
	    nextPutAll: '; DO NOT EDIT this file with an old vi!!';
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2862
	    cr;
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2863
	    nextPutAll: ';';
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2864
	    cr;
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2865
	    cr.
2050
fm
parents: 2049
diff changeset
  2866
!
fm
parents: 2049
diff changeset
  2867
fm
parents: 2049
diff changeset
  2868
printEncoderFor: lang on: aStream
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2869
    |characterEncoder encoderString|
2050
fm
parents: 2049
diff changeset
  2870
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2871
    characterEncoder := self encoderAt: lang.
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2872
    encoderString := characterEncoder isNil
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2873
	ifTrue:[self requestEncoderStringFor: lang]
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2874
	ifFalse:[characterEncoder nameOfEncoding printString].
2050
fm
parents: 2049
diff changeset
  2875
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2876
    aStream nextPutAll: '#encoding';
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2877
	    space;
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2878
	    nextPutAll: encoderString;
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2879
	    cr;
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2880
	    cr.
2050
fm
parents: 2049
diff changeset
  2881
!
fm
parents: 2049
diff changeset
  2882
fm
parents: 2049
diff changeset
  2883
printLanguage: lang on: aStream
fm
parents: 2049
diff changeset
  2884
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2885
    self printEncoderFor: lang on: aStream.
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2886
    self printEditingWarningOn: aStream.
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2887
    self printLanguageMappingsFor: lang on: aStream.
2050
fm
parents: 2049
diff changeset
  2888
!
fm
parents: 2049
diff changeset
  2889
fm
parents: 2049
diff changeset
  2890
printLanguageMappingsFor: lang on: aStream
fm
parents: 2049
diff changeset
  2891
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2892
    |orderedAssociations maxKeySize characterEncoder|
2050
fm
parents: 2049
diff changeset
  2893
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2894
    characterEncoder := self encoderAt: lang.
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2895
    characterEncoder isNil ifTrue:[ characterEncoder := CharacterEncoder::NullEncoder ].
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2896
    orderedAssociations := keyStringsToLanguageMappings orderedLanguageMappingsAssociationsFor: lang.
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2897
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2898
    maxKeySize := keyStringsToLanguageMappings maxKeySizeForLanguage: lang.
2050
fm
parents: 2049
diff changeset
  2899
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2900
    orderedAssociations do:[:association |
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2901
	"use #basicStoreString to avoid implicit utf8Encoding for UnicodeStrings"
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2902
	aStream nextPutAll: ((characterEncoder encodeString:association key basicStoreString) paddedTo: maxKeySize) ;
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2903
	    tab;
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2904
	    nextPutAll: (characterEncoder encodeString: association value basicStoreString);
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2905
	    cr.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  2906
	].
2050
fm
parents: 2049
diff changeset
  2907
!
fm
parents: 2049
diff changeset
  2908
fm
parents: 2049
diff changeset
  2909
readResourceFile:aFilename asLanguage:lang
3595
ebf63823c259 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 3594
diff changeset
  2910
    |resourcePack inStream lineString encoding 
ebf63823c259 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 3594
diff changeset
  2911
     decoder sortedKeys remainingKeys lineNr|
2050
fm
parents: 2049
diff changeset
  2912
2410
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  2913
    aFilename exists ifFalse:[
3595
ebf63823c259 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 3594
diff changeset
  2914
        Dialog information:(resources string:'Language file: "%1" does not exist' with:aFilename baseName).
ebf63823c259 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 3594
diff changeset
  2915
        ^ self
2410
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  2916
    ].
2050
fm
parents: 2049
diff changeset
  2917
fm
parents: 2049
diff changeset
  2918
    resourcePack := ResourcePack new.
fm
parents: 2049
diff changeset
  2919
3595
ebf63823c259 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 3594
diff changeset
  2920
    inStream := LineNumberReadStream on:(aFilename readStream).
2050
fm
parents: 2049
diff changeset
  2921
    [inStream atEnd] whileFalse:[
3595
ebf63823c259 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 3594
diff changeset
  2922
        lineNr := inStream lineNumber.
ebf63823c259 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 3594
diff changeset
  2923
        lineString := inStream nextLine.
ebf63823c259 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 3594
diff changeset
  2924
        (lineString notEmpty
ebf63823c259 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 3594
diff changeset
  2925
        and:[ (lineString startsWith:';') not and:[ (lineString startsWith:'"/') not]]) ifTrue:[
ebf63823c259 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 3594
diff changeset
  2926
            ((lineString startsWith:'#') and:[(lineString startsWith:'#(') not]) ifTrue:[
ebf63823c259 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 3594
diff changeset
  2927
                lineString := (lineString copyFrom:2) withoutSeparators.
ebf63823c259 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 3594
diff changeset
  2928
                (lineString startsWith:'encoding ') ifTrue:[
ebf63823c259 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 3594
diff changeset
  2929
                    encoding := ResourcePack extractEncodingFromLine:lineString.
ebf63823c259 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 3594
diff changeset
  2930
                    decoder := CharacterEncoder encoderFor:encoding ifAbsent:nil.
ebf63823c259 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 3594
diff changeset
  2931
                ].
ebf63823c259 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 3594
diff changeset
  2932
            ] ifFalse:[
ebf63823c259 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 3594
diff changeset
  2933
                ResourcePack
ebf63823c259 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 3594
diff changeset
  2934
                    processResourceLine:lineString
ebf63823c259 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 3594
diff changeset
  2935
                    encoding:decoder
ebf63823c259 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 3594
diff changeset
  2936
                    file:aFilename pathName
ebf63823c259 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 3594
diff changeset
  2937
                    printErrorWith:[:msg | 
ebf63823c259 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 3594
diff changeset
  2938
                        Transcript 
ebf63823c259 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 3594
diff changeset
  2939
                            showCR:'%1[%2]: %3'
ebf63823c259 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 3594
diff changeset
  2940
                            with:(aFilename baseName)
ebf63823c259 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 3594
diff changeset
  2941
                            with:lineNr
ebf63823c259 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 3594
diff changeset
  2942
                            with:msg
ebf63823c259 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 3594
diff changeset
  2943
                    ]
ebf63823c259 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 3594
diff changeset
  2944
                    for:resourcePack
ebf63823c259 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 3594
diff changeset
  2945
                    keepUselessTranslations:true.
ebf63823c259 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 3594
diff changeset
  2946
            ].
ebf63823c259 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 3594
diff changeset
  2947
        ].
2050
fm
parents: 2049
diff changeset
  2948
    ].
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2949
    inStream close.
2050
fm
parents: 2049
diff changeset
  2950
fm
parents: 2049
diff changeset
  2951
    sortedKeys := (resourcePack keys select:[:k | k isString]) asSortedCollection.
fm
parents: 2049
diff changeset
  2952
    remainingKeys := resourcePack keys select:[:k | k isString not].
fm
parents: 2049
diff changeset
  2953
fm
parents: 2049
diff changeset
  2954
    keyStringsToLanguageMappings atLanguage: lang putFilename: aFilename.
2410
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  2955
    keyStringsToLanguageMappings atLanguage: lang putEncoder: decoder.
2050
fm
parents: 2049
diff changeset
  2956
fm
parents: 2049
diff changeset
  2957
    sortedKeys do:[:k |
3595
ebf63823c259 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 3594
diff changeset
  2958
        keyStringsToLanguageMappings at:k language:lang put:(resourcePack at:k) sendChange:false
2050
fm
parents: 2049
diff changeset
  2959
    ].
fm
parents: 2049
diff changeset
  2960
    remainingKeys do:[:k |
3595
ebf63823c259 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 3594
diff changeset
  2961
        keyStringsToLanguageMappings at:k language:lang put:(resourcePack at:k) sendChange:false
2050
fm
parents: 2049
diff changeset
  2962
    ].
2410
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  2963
    keyStringsToLanguageMappings changed.
3595
ebf63823c259 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 3594
diff changeset
  2964
ebf63823c259 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 3594
diff changeset
  2965
    "Modified: / 20-09-2018 / 11:09:39 / Claus Gittinger"
2050
fm
parents: 2049
diff changeset
  2966
!
fm
parents: 2049
diff changeset
  2967
2053
8440fcd83b7b 2.1 felix
fm
parents: 2051
diff changeset
  2968
saveLanguage: lang
3594
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  2969
    "Saves the language in the fileName from where the language resource was obtained."
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  2970
    |filename|
2053
8440fcd83b7b 2.1 felix
fm
parents: 2051
diff changeset
  2971
8440fcd83b7b 2.1 felix
fm
parents: 2051
diff changeset
  2972
    lang isNil ifTrue:[^ self].
3594
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  2973
    filename := keyStringsToLanguageMappings filenameAt:lang.
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  2974
    filename isNil ifTrue:[
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  2975
        "/ ask
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  2976
        filename := self requestFilenameFor: lang.
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  2977
        filename isNil ifTrue:[^ self].
2053
8440fcd83b7b 2.1 felix
fm
parents: 2051
diff changeset
  2978
    ].
3594
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  2979
    self saveResourceFile:filename for:lang asSymbol
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  2980
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  2981
    "Modified (format): / 15-09-2018 / 12:29:59 / Claus Gittinger"
2053
8440fcd83b7b 2.1 felix
fm
parents: 2051
diff changeset
  2982
!
8440fcd83b7b 2.1 felix
fm
parents: 2051
diff changeset
  2983
2050
fm
parents: 2049
diff changeset
  2984
saveResourceFile: aFilename for: lang
fm
parents: 2049
diff changeset
  2985
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2986
    |aStream |
2050
fm
parents: 2049
diff changeset
  2987
2163
641467b2f522 Search String
fm
parents: 2053
diff changeset
  2988
    keyStringsToLanguageMappings atLanguage: lang putFilename: aFilename.
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  2989
    aStream := FileStream newFileNamed: aFilename.
3764
e140f846dccf #QUALITY by exept
Claus Gittinger <cg@exept.de>
parents: 3744
diff changeset
  2990
    [
e140f846dccf #QUALITY by exept
Claus Gittinger <cg@exept.de>
parents: 3744
diff changeset
  2991
        self printLanguage: lang on: aStream.
e140f846dccf #QUALITY by exept
Claus Gittinger <cg@exept.de>
parents: 3744
diff changeset
  2992
        aStream flush
e140f846dccf #QUALITY by exept
Claus Gittinger <cg@exept.de>
parents: 3744
diff changeset
  2993
    ] ensure:[
e140f846dccf #QUALITY by exept
Claus Gittinger <cg@exept.de>
parents: 3744
diff changeset
  2994
        aStream close.
e140f846dccf #QUALITY by exept
Claus Gittinger <cg@exept.de>
parents: 3744
diff changeset
  2995
    ].
e140f846dccf #QUALITY by exept
Claus Gittinger <cg@exept.de>
parents: 3744
diff changeset
  2996
    DialogBox 
e140f846dccf #QUALITY by exept
Claus Gittinger <cg@exept.de>
parents: 3744
diff changeset
  2997
        information: 'The resource file for the language %1 was saved in the file: %2'
e140f846dccf #QUALITY by exept
Claus Gittinger <cg@exept.de>
parents: 3744
diff changeset
  2998
        with:lang printString storeString
e140f846dccf #QUALITY by exept
Claus Gittinger <cg@exept.de>
parents: 3744
diff changeset
  2999
        with:aFilename nameString
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3000
! !
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3001
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3002
!InternationalLanguageTranslationEditor methodsFor:'searching'!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3003
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3004
ignoreCaseHolderChanged
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3005
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3006
    self searchNextTextIncludingCurrentSelection: true.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3007
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3008
    "Created: / 16-06-2007 / 09:33:33 / Administrador"
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3009
!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3010
3641
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  3011
searchForSimilarTranslation
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  3012
    "Looks for a quite similar translation for the key and display a dialog with available options"
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  3013
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  3014
    |similarTranslationsAssociations selectedTranslation key|
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  3015
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  3016
    self shouldSearchForSimilarTranslation ifFalse:[^self].
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  3017
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  3018
    key := self selectedKey.
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  3019
    key isNil ifTrue:[^ self.].
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  3020
    
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  3021
    similarTranslationsAssociations := keyStringsToLanguageMappings searchForSimilarTranslation: key in: self currentLanguage.
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  3022
    similarTranslationsAssociations isEmpty ifTrue:[^self].
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  3023
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  3024
    similarTranslationsAssociations := similarTranslationsAssociations associations inject: OrderedCollection new into:[:collection :association |
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  3025
        collection detect:[:selectedAssociation |
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  3026
            selectedAssociation value sameAs: association value] ifNone:[collection add: association].
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  3027
        collection].
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  3028
    selectedTranslation := Dialog
3764
e140f846dccf #QUALITY by exept
Claus Gittinger <cg@exept.de>
parents: 3744
diff changeset
  3029
        choose:'Choose one if you consider it´s usefull to translate:
3641
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  3030
    ',
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  3031
        '<', key, '>  ', (self currentExampleLanguageText ifNil:[''])
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  3032
        fromList: (similarTranslationsAssociations collect:[:each |  '<', each key, '>  ', each value])
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  3033
        values: (similarTranslationsAssociations collect:[:each | each value])
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  3034
        lines:10
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  3035
        cancel: nil.
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  3036
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  3037
    selectedTranslation notNil ifTrue:[self languageTextHolderValue: selectedTranslation].
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  3038
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  3039
    "Modified (format): / 20-02-2019 / 12:27:41 / Claus Gittinger"
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  3040
!
507f252953da #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3640
diff changeset
  3041
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3042
searchNextText
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3043
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3044
    self searchNextTextIncludingCurrentSelection: false.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3045
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3046
    "Modified: / 16-06-2007 / 09:21:14 / Administrador"
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3047
!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3048
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3049
searchNextTextFromBeginning
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3050
    |searchText rowFoundIndex|
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3051
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3052
    searchText := searchTextView contents.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3053
    searchText isEmptyOrNil ifTrue:[^self].
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3054
    self objectsList isEmpty ifTrue:[^self].
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3055
    rowFoundIndex := self tableView findFirstRowWithString: searchText
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3056
		from:1
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3057
		to:self objectsList size
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3058
		ignoreCase:self ignoreCaseHolder value.
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3059
    rowFoundIndex isNil ifTrue:[
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3060
	self searchTextNotFound.
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3061
	^self
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3062
    ].
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3063
    self selectListIndex: rowFoundIndex
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3064
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3065
    "Created: / 16-06-2007 / 10:54:51 / Administrador"
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3066
    "Modified: / 19-06-2007 / 15:38:59 / Administrador"
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3067
!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3068
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3069
searchNextTextIncludingCurrentSelection: includeCurrentSelection
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3070
    |searchText currentSelectionIndex rowFoundIndex fromIndex listSize|
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3071
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3072
    self searchTextStarted.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3073
    searchText := searchTextView contents.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3074
    searchText isEmptyOrNil ifTrue:[^self].
3626
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  3075
    self objectsList isEmptyOrNil ifTrue:[^self].
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3076
    currentSelectionIndex := self currentSelectionIndex.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3077
    (currentSelectionIndex isNil or:[currentSelectionIndex == 0]) ifTrue:[
3626
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  3078
        self searchNextTextFromBeginning.
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  3079
        ^self.
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3080
    ].
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3081
    listSize := self objectsList size.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3082
    (currentSelectionIndex == listSize and:[includeCurrentSelection not]) ifTrue:[
3626
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  3083
        self searchNextTextReachEnd.
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  3084
        ^self.
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3085
    ].
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3086
    fromIndex := includeCurrentSelection
3626
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  3087
        ifTrue:[currentSelectionIndex]
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  3088
        ifFalse:[currentSelectionIndex + 1].
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3089
    rowFoundIndex := self tableView findFirstRowWithString: searchText
3626
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  3090
                from:fromIndex
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  3091
                to:listSize
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  3092
                ignoreCase:self ignoreCaseHolder value.
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3093
    rowFoundIndex isNil ifTrue:[
3626
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  3094
        self searchNextTextReachEnd.
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  3095
        ^self
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3096
    ].
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3097
    self selectListIndex: rowFoundIndex
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3098
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3099
    "Created: / 16-06-2007 / 09:20:57 / Administrador"
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3100
    "Modified: / 19-06-2007 / 15:38:06 / Administrador"
3626
4cc3a9c52aa7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3620
diff changeset
  3101
    "Modified: / 25-10-2018 / 16:25:18 / Claus Gittinger"
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3102
!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3103
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3104
searchNextTextReachEnd
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3105
    |message|
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3106
    message := 'End of list reached, starting from the beginning'.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3107
    self searchTextRestarted: message.
2330
58ace5744c59 *** empty log message ***
fm
parents: 2329
diff changeset
  3108
    Smalltalk beep.
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3109
    self searchNextTextFromBeginning.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3110
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3111
    "Created: / 16-06-2007 / 11:00:59 / Administrador"
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3112
!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3113
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3114
searchPreviousText
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3115
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3116
    |searchText currentSelectionIndex rowFoundIndex fromIndex|
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3117
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3118
    self searchTextStarted.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3119
    searchText := searchTextView contents.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3120
    searchText isEmptyOrNil ifTrue:[^self].
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3121
    self objectsList isEmpty ifTrue:[^self].
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3122
    currentSelectionIndex := self currentSelectionIndex.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3123
    currentSelectionIndex == 1 ifTrue:[
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3124
	self searchPreviousTextReachBeginning.
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3125
	^self.
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3126
    ].
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3127
    (currentSelectionIndex isNil or:[currentSelectionIndex == 0])
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3128
	ifTrue:[
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3129
	    self searchPreviousTextFromEnd.
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3130
	    ^self.
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3131
	]
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3132
	ifFalse:[fromIndex := currentSelectionIndex - 1].
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3133
    rowFoundIndex := self tableView findFirstRowWithString: searchText
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3134
		from: fromIndex
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3135
		to: 1
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3136
		by: -1
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3137
		ignoreCase:self ignoreCaseHolder value.
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3138
    rowFoundIndex isNil ifTrue:[
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3139
	self searchPreviousTextReachBeginning.
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3140
	^self
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3141
    ].
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3142
    self selectListIndex: rowFoundIndex.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3143
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3144
    "Modified: / 19-06-2007 / 15:38:16 / Administrador"
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3145
!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3146
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3147
searchPreviousTextFromEnd
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3148
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3149
    |searchText rowFoundIndex|
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3150
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3151
    searchText := searchTextView contents.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3152
    searchText isEmptyOrNil ifTrue:[^self].
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3153
    self objectsList isEmpty ifTrue:[^self].
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3154
    rowFoundIndex := self tableView findFirstRowWithString: searchText
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3155
		from: self objectsList size
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3156
		to: 1
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3157
		by: -1
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3158
		ignoreCase:self ignoreCaseHolder value.
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3159
    rowFoundIndex isNil ifTrue:[
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3160
	self searchTextNotFound.
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3161
	^self
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3162
    ].
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3163
    self selectListIndex: rowFoundIndex.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3164
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3165
    "Created: / 16-06-2007 / 10:55:43 / Administrador"
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3166
    "Modified: / 19-06-2007 / 15:38:26 / Administrador"
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3167
!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3168
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3169
searchPreviousTextReachBeginning
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3170
    |message|
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3171
    message := 'Beginning of list reached, starting from the end'.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3172
    self searchTextRestarted: message.
2330
58ace5744c59 *** empty log message ***
fm
parents: 2329
diff changeset
  3173
    Smalltalk beep.
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3174
    self searchPreviousTextFromEnd.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3175
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3176
    "Created: / 16-06-2007 / 11:01:23 / Administrador"
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3177
!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3178
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3179
searchTextModifiedHolderChanged
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3180
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3181
    self searchNextTextIncludingCurrentSelection: true.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3182
    self searchTextModifiedHolder setValue: false.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3183
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3184
"/Transcript showCR: 'searchTextModifiedHolderChanged: ',(self searchTextHolder value ? '').
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3185
"/Transcript showCR: 'searchTextView contents: ',(searchTextView contents ? '').
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3186
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3187
    "Created: / 15-06-2007 / 18:07:57 / Administrador"
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3188
    "Modified: / 16-06-2007 / 09:21:27 / Administrador"
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3189
!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3190
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3191
searchTextNotFound
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3192
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3193
    self selectListIndex: 0.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3194
    self searchBarImageInfoLabelHolder value: self warningSearchBarIcon.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3195
    self searchBarInfoLabelHolder value: 'Text not found'.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3196
    self setSearchTextNotFoundColors.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3197
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3198
    "Created: / 16-06-2007 / 06:51:01 / Administrador"
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3199
    "Modified: / 16-06-2007 / 11:43:53 / Administrador"
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3200
!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3201
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3202
searchTextRestarted: message
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3203
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3204
    self searchBarImageInfoLabelHolder value: self restartSearchBarIcon.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3205
    self searchBarInfoLabelHolder value: message.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3206
"/    self setSearchTextNotFoundColors.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3207
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3208
    "Created: / 16-06-2007 / 11:02:06 / Administrador"
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3209
!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3210
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3211
searchTextStarted
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3212
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3213
    self searchBarImageInfoLabelHolder value: nil.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3214
    self searchBarInfoLabelHolder value: ''.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3215
    self setSearchTextFoundColors.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3216
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3217
    "Created: / 16-06-2007 / 06:54:03 / Administrador"
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3218
    "Modified: / 16-06-2007 / 10:07:06 / Administrador"
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3219
!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3220
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3221
setSearchTextFoundColors
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3222
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3223
    searchTextView foregroundColor: Color black.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3224
    searchTextView backgroundColor: Color white.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3225
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3226
    "Created: / 16-06-2007 / 06:28:32 / Administrador"
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3227
!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3228
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3229
setSearchTextNotFoundColors
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3230
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3231
    searchTextView foregroundColor: Color white.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3232
    searchTextView backgroundColor: Color lightRed.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3233
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3234
    "Created: / 16-06-2007 / 06:29:00 / Administrador"
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3235
! !
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3236
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3237
!InternationalLanguageTranslationEditor methodsFor:'specs-dynamic'!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3238
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3239
columnInRow:row at:colIndex
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3240
    |lang|
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3241
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3242
    lang := self languageAtCol:colIndex.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3243
    ^ row atLanguage:lang
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3244
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3245
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3246
getBackgroundForRow:row rowNr:rowNr col:colIndex
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3247
    |lang|
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3248
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3249
    colIndex == 1 ifTrue:[^ nil].
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3250
    lang := self languageAtCol:colIndex.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3251
    ^ (row atLanguage:lang) isNil ifTrue:[Color red lightened] ifFalse:nil
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3252
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3253
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3254
keyStringAndLanguageSelectionTableColumnDescription
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3255
    |spec|
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3256
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3257
    spec := OrderedCollection new.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3258
2047
5f9b26862c57 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2035
diff changeset
  3259
    spec add:(self class keyTableColumn first).
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3260
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3261
    self shownLanguages do:[:lang |
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3262
	|entry|
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3263
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3264
	entry := self class languageTableColumn first.
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3265
	entry := entry copy replaceAll:#lang with:lang.
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3266
	spec add: entry
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3267
    ].
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3268
    ^ spec
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3269
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3270
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3271
keyStringInRow:row
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3272
    ^ row keyString
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3273
! !
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3274
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3275
!InternationalLanguageTranslationEditor methodsFor:'update'!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3276
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3277
updateToolVisibility
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3278
    | bottomOffset searchBarVisible |
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3279
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3280
    bottomOffset := 0.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3281
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3282
    searchBarVisible := self searchBoxVisible value.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3283
    searchBarVisible ifTrue:[
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3284
	bottomOffset := bottomOffset - searchBoxView height.
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3285
    ].
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3286
    translationsPanel layout bottomOffset:bottomOffset-1.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3287
    translationsPanel container notNil ifTrue:[
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3288
	translationsPanel containerChangedSize.
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3289
    ].
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3290
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3291
    "Created: / 16-06-2007 / 11:58:25 / Administrador"
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3292
! !
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3293
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3294
!InternationalLanguageTranslationEditor methodsFor:'user actions'!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3295
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3296
closeSearchBar
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3297
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3298
    self searchBoxVisible value: false.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3299
    self updateToolVisibility.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3300
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3301
    "Created: / 15-06-2007 / 18:03:05 / Administrador"
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3302
    "Modified: / 16-06-2007 / 11:58:52 / Administrador"
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3303
!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3304
2050
fm
parents: 2049
diff changeset
  3305
exampleLanguageSelectionChanged
fm
parents: 2049
diff changeset
  3306
fm
parents: 2049
diff changeset
  3307
   self updateExampleLanguageText.
fm
parents: 2049
diff changeset
  3308
!
fm
parents: 2049
diff changeset
  3309
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3310
languageTextAccepted
2416
98dbabd36558 changed #languageTextAccepted
Claus Gittinger <cg@exept.de>
parents: 2413
diff changeset
  3311
    |nextRowIndex selRow|
98dbabd36558 changed #languageTextAccepted
Claus Gittinger <cg@exept.de>
parents: 2413
diff changeset
  3312
98dbabd36558 changed #languageTextAccepted
Claus Gittinger <cg@exept.de>
parents: 2413
diff changeset
  3313
    selRow := self selectedKeyRow value.
98dbabd36558 changed #languageTextAccepted
Claus Gittinger <cg@exept.de>
parents: 2413
diff changeset
  3314
    selRow notNil ifTrue:[
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3315
	keyStringsToLanguageMappings size = selRow
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3316
	    ifTrue:[ self updateLanguageTextModification.]
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3317
	    ifFalse:[
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3318
		nextRowIndex := selRow + 1.
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3319
		self selectedKeyRow value: nextRowIndex]
2416
98dbabd36558 changed #languageTextAccepted
Claus Gittinger <cg@exept.de>
parents: 2413
diff changeset
  3320
    ].
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  3321
!
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  3322
2323
9b257cbd0ea9 *** empty log message ***
fm
parents: 2163
diff changeset
  3323
pasteOriginalInLanguageText
9b257cbd0ea9 *** empty log message ***
fm
parents: 2163
diff changeset
  3324
    <resource: #uiCallback>
9b257cbd0ea9 *** empty log message ***
fm
parents: 2163
diff changeset
  3325
9b257cbd0ea9 *** empty log message ***
fm
parents: 2163
diff changeset
  3326
    | originalText|
9b257cbd0ea9 *** empty log message ***
fm
parents: 2163
diff changeset
  3327
9b257cbd0ea9 *** empty log message ***
fm
parents: 2163
diff changeset
  3328
    originalText := self selectedKey.
9b257cbd0ea9 *** empty log message ***
fm
parents: 2163
diff changeset
  3329
    languageEditor selectAll.
9b257cbd0ea9 *** empty log message ***
fm
parents: 2163
diff changeset
  3330
    languageEditor pasteOrReplace:originalText.
9b257cbd0ea9 *** empty log message ***
fm
parents: 2163
diff changeset
  3331
    self languageTextModifiedHolder value:true.
9b257cbd0ea9 *** empty log message ***
fm
parents: 2163
diff changeset
  3332
!
9b257cbd0ea9 *** empty log message ***
fm
parents: 2163
diff changeset
  3333
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  3334
pastePreviousTranslationInLanguageText
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  3335
    "Obtain the text from the previous translation and paste it into the languageTextEditor"
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3336
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  3337
    | previousLanguageText previousLanguageRow|
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  3338
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  3339
    previousLanguageRow := dataSetView at:self selectedKeyRow value - 1
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3340
		ifAbsent:[^self].
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  3341
    previousLanguageText := previousLanguageRow atLanguage: self currentLanguage.
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  3342
    languageEditor selectAll.
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  3343
    languageEditor pasteOrReplace:previousLanguageText.
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  3344
    self languageTextModifiedHolder value:true.
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  3345
!
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  3346
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3347
search
3286
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  3348
    "make the searchbox visible"
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  3349
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3350
    self searchBoxVisible value: true.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3351
    self updateToolVisibility.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3352
    searchTextView takeFocus.
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3353
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3354
    "Modified: / 16-06-2007 / 11:58:44 / Administrador"
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3355
!
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3356
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3357
selectionChanged
2048
dcec4e818069 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2047
diff changeset
  3358
2049
d10762e5d924 *** empty log message ***
fm
parents: 2048
diff changeset
  3359
   self updateOriginalTextModification.
d10762e5d924 *** empty log message ***
fm
parents: 2048
diff changeset
  3360
   self updateLanguageTextModification.
d10762e5d924 *** empty log message ***
fm
parents: 2048
diff changeset
  3361
   self updateLanguageAndKeySelection.
2050
fm
parents: 2049
diff changeset
  3362
   self updateExampleLanguageText.
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3363
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  3364
   self updateCopyPreviousTranslationButtonEnabled.
2323
9b257cbd0ea9 *** empty log message ***
fm
parents: 2163
diff changeset
  3365
   self updatePasteOriginalButtonEnabled.
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  3366
2049
d10762e5d924 *** empty log message ***
fm
parents: 2048
diff changeset
  3367
   self originalTextModifiedHolder value:false.
d10762e5d924 *** empty log message ***
fm
parents: 2048
diff changeset
  3368
   self languageTextModifiedHolder value:false.
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  3369
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  3370
   self searchForSimilarTranslation.
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  3371
!
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  3372
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  3373
showMissingTranslationsOnlyChanged
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3374
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3375
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3376
shownLanguagesChanged
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3377
    self keyStringAndLanguageSelectionTableColumnDescriptionHolder
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3378
	value:(self keyStringAndLanguageSelectionTableColumnDescription).
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3379
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3380
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3381
stopApplication
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3382
    |p|
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3383
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3384
    (p := monitoredApplication) notNil ifTrue:[
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3385
	p terminate.
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3386
    ].
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3387
! !
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3388
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3389
!InternationalLanguageTranslationEditor::AccessCollectingPseudoResourcePack methodsFor:'accessing'!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3390
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3391
realResourcePack:something
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3392
    realResourcePack := something.
3286
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  3393
!
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  3394
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  3395
watchingTranslationEditor:something
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  3396
    watchingTranslationEditor := something.
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  3397
! !
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  3398
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  3399
!InternationalLanguageTranslationEditor::AccessCollectingPseudoResourcePack methodsFor:'resource pack protocol'!
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  3400
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  3401
forwardFor:aString
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  3402
    collectedKeys isNil ifTrue:[
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  3403
	collectedKeys := Set new.
3286
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  3404
    ].
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  3405
    collectedKeys add:aString.
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  3406
    watchingTranslationEditor notNil ifTrue:[
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  3407
	watchingTranslationEditor recordNewTranslation:aString.
3286
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  3408
    ].
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  3409
    ^ realResourcePack perform:(thisContext sender selector) withArguments:(thisContext sender args).
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  3410
!
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  3411
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  3412
string:aString
1ea9a6fbe2b4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3285
diff changeset
  3413
    ^ self forwardFor:aString
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3414
! !
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3415
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3416
!InternationalLanguageTranslationEditor::KeyStringsToLanguageMappings class methodsFor:'instance creation'!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3417
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3418
new
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3419
    ^ self basicNew initialize
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3420
! !
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3421
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3422
!InternationalLanguageTranslationEditor::KeyStringsToLanguageMappings methodsFor:'accessing'!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3423
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3424
addKey:aKey
2410
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  3425
    self addKey:aKey sendChange:true
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  3426
!
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  3427
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  3428
addKey:aKey sendChange:aBoolean
2031
85947c4c6502 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2015
diff changeset
  3429
    (keys includes:aKey) ifFalse:[
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3430
	keys add:aKey.
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3431
	aBoolean ifTrue:[ self changed ].
2031
85947c4c6502 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2015
diff changeset
  3432
    ]
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3433
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3434
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3435
addKeys:aCollectionOfKey
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3436
    keys addAll:aCollectionOfKey.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3437
    self changed.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3438
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3439
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3440
addLanguage:lang
2031
85947c4c6502 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2015
diff changeset
  3441
    (languages includes:lang) ifFalse:[
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3442
	languages add:lang.
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3443
	perLanguageMappings at:lang put:(OrderedDictionary new).
2031
85947c4c6502 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2015
diff changeset
  3444
    ]
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3445
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3446
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3447
at:aKey language:language
2032
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  3448
    ^ (perLanguageMappings at:language) at:aKey ifAbsent:nil
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3449
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3450
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3451
at:aKey language:language put:value
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3452
    self addKey:aKey.
2049
d10762e5d924 *** empty log message ***
fm
parents: 2048
diff changeset
  3453
    (perLanguageMappings at:language) at:aKey put:value.
d10762e5d924 *** empty log message ***
fm
parents: 2048
diff changeset
  3454
    (self rowForKey:aKey) changed
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3455
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3456
2410
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  3457
at:aKey language:language put:value sendChange:sendChange
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  3458
    self addKey:aKey sendChange:sendChange.
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  3459
    (perLanguageMappings at:language) at:aKey put:value.
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  3460
    (self rowForKey:aKey) changed
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  3461
!
a3b53393dcf3 added open by project
Claus Gittinger <cg@exept.de>
parents: 2330
diff changeset
  3462
2050
fm
parents: 2049
diff changeset
  3463
atLanguage: lang putEncoder: aDecoder
fm
parents: 2049
diff changeset
  3464
fm
parents: 2049
diff changeset
  3465
^(self languageInfoAt: lang) at: self encoderKey put: aDecoder
fm
parents: 2049
diff changeset
  3466
!
fm
parents: 2049
diff changeset
  3467
fm
parents: 2049
diff changeset
  3468
atLanguage: lang putFilename: aFilename
fm
parents: 2049
diff changeset
  3469
fm
parents: 2049
diff changeset
  3470
^(self languageInfoAt: lang) at: self fileNameKey put: aFilename
fm
parents: 2049
diff changeset
  3471
!
fm
parents: 2049
diff changeset
  3472
fm
parents: 2049
diff changeset
  3473
decoderKey
fm
parents: 2049
diff changeset
  3474
   ^#decoder
fm
parents: 2049
diff changeset
  3475
!
fm
parents: 2049
diff changeset
  3476
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3477
encoderAt:lang
2050
fm
parents: 2049
diff changeset
  3478
    ^ (self languageInfoAt:lang) at: self encoderKey ifAbsent:[nil]
fm
parents: 2049
diff changeset
  3479
!
fm
parents: 2049
diff changeset
  3480
fm
parents: 2049
diff changeset
  3481
encoderKey
fm
parents: 2049
diff changeset
  3482
   ^#encoder
fm
parents: 2049
diff changeset
  3483
!
fm
parents: 2049
diff changeset
  3484
fm
parents: 2049
diff changeset
  3485
fileNameKey
fm
parents: 2049
diff changeset
  3486
    ^ #filename
fm
parents: 2049
diff changeset
  3487
!
fm
parents: 2049
diff changeset
  3488
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3489
filenameAt:lang
2050
fm
parents: 2049
diff changeset
  3490
    ^ (self languageInfoAt:lang) at: self fileNameKey ifAbsent:[nil]
fm
parents: 2049
diff changeset
  3491
!
fm
parents: 2049
diff changeset
  3492
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3493
keyAt:index
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  3494
    ^ keys at:index ifAbsent:[nil].
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3495
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3496
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3497
keyAt:index ifAbsent:exceptionalValue
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3498
    ^ keys at:index ifAbsent:exceptionalValue.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3499
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3500
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3501
keys
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3502
    ^ keys
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3503
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3504
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3505
languageInfoAt: lang
2050
fm
parents: 2049
diff changeset
  3506
fm
parents: 2049
diff changeset
  3507
^self perLanguageInfo at: lang ifAbsentPut:[Dictionary new]
fm
parents: 2049
diff changeset
  3508
!
fm
parents: 2049
diff changeset
  3509
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3510
languages
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3511
    ^ languages
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3512
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3513
2053
8440fcd83b7b 2.1 felix
fm
parents: 2051
diff changeset
  3514
languagesInUse
8440fcd83b7b 2.1 felix
fm
parents: 2051
diff changeset
  3515
"Returns a collection of symbols for the languages that have mappings"
8440fcd83b7b 2.1 felix
fm
parents: 2051
diff changeset
  3516
8440fcd83b7b 2.1 felix
fm
parents: 2051
diff changeset
  3517
^self languages select:[:each | (self atLanguage: each) notEmpty]
8440fcd83b7b 2.1 felix
fm
parents: 2051
diff changeset
  3518
!
8440fcd83b7b 2.1 felix
fm
parents: 2051
diff changeset
  3519
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  3520
orderedLanguageMappingsAssociationsFor: language
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  3521
"Returns a collection of languageMappings associations (alphabetically ordered by keys) "
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  3522
    ^(self atLanguage: language) associations
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  3523
	    asSortedCollection:[:a :b | a key isArray or:[b key isArray or:[a key < b key]]].
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  3524
!
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  3525
2050
fm
parents: 2049
diff changeset
  3526
perLanguageInfo
fm
parents: 2049
diff changeset
  3527
    ^ perLanguageInfo
fm
parents: 2049
diff changeset
  3528
!
fm
parents: 2049
diff changeset
  3529
fm
parents: 2049
diff changeset
  3530
perLanguageInfo:something
fm
parents: 2049
diff changeset
  3531
    perLanguageInfo := something.
fm
parents: 2049
diff changeset
  3532
!
fm
parents: 2049
diff changeset
  3533
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3534
removeKey:aKey
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3535
    keys remove:aKey ifAbsent:[].
2032
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  3536
    perLanguageMappings do:[:eachMapping |
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3537
	eachMapping removeKey:aKey ifAbsent:[].
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3538
    ].
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3539
    self changed.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3540
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3541
2049
d10762e5d924 *** empty log message ***
fm
parents: 2048
diff changeset
  3542
rowForKey:aKey
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3543
    ^ rowPerKey
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3544
	    at:aKey
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3545
	    ifAbsentPut:[InternationalLanguageTranslationEditor::LanguageMappingRow new
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3546
			    key:aKey; mappings:self].
2049
d10762e5d924 *** empty log message ***
fm
parents: 2048
diff changeset
  3547
!
d10762e5d924 *** empty log message ***
fm
parents: 2048
diff changeset
  3548
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3549
size
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3550
    ^ keys size
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3551
! !
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3552
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3553
!InternationalLanguageTranslationEditor::KeyStringsToLanguageMappings methodsFor:'enumerating'!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3554
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3555
do:aBlock
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3556
    keys do:[:eachKey |
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3557
	aBlock value:(self rowForKey:eachKey).
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3558
    ].
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3559
! !
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3560
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3561
!InternationalLanguageTranslationEditor::KeyStringsToLanguageMappings methodsFor:'initialization'!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3562
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3563
initialize
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3564
    super initialize.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3565
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3566
    keys := OrderedSet new.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3567
    languages := OrderedCollection new.
2032
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  3568
    perLanguageMappings := Dictionary new.
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3569
    perLanguageInfo := Dictionary new.
2049
d10762e5d924 *** empty log message ***
fm
parents: 2048
diff changeset
  3570
    rowPerKey := Dictionary new.
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3571
2031
85947c4c6502 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2015
diff changeset
  3572
    self addLanguage:#'de'.
85947c4c6502 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2015
diff changeset
  3573
    self addLanguage:#'fr'.
3077
48211023a3c7 class: Tools::InternationalLanguageTranslationEditor
Claus Gittinger <cg@exept.de>
parents: 2880
diff changeset
  3574
    self addLanguage:#'en'.
48211023a3c7 class: Tools::InternationalLanguageTranslationEditor
Claus Gittinger <cg@exept.de>
parents: 2880
diff changeset
  3575
    self addLanguage:#'it'.
2031
85947c4c6502 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2015
diff changeset
  3576
    self addLanguage:#'es'.
85947c4c6502 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2015
diff changeset
  3577
    self addLanguage:(Smalltalk language).
85947c4c6502 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2015
diff changeset
  3578
85947c4c6502 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2015
diff changeset
  3579
    "/ self initializeDemoMappings.
85947c4c6502 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2015
diff changeset
  3580
!
85947c4c6502 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2015
diff changeset
  3581
85947c4c6502 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2015
diff changeset
  3582
initializeDemoMappings
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3583
    keys add:'open'.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3584
    keys add:'close'.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3585
    keys add:'yes'.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3586
    keys add:'no'.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3587
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3588
    self addLanguage:#'de'.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3589
    self addLanguage:#'fr'.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3590
3764
e140f846dccf #QUALITY by exept
Claus Gittinger <cg@exept.de>
parents: 3744
diff changeset
  3591
    self at:'open' language:#'de' put:'öffnen'.
e140f846dccf #QUALITY by exept
Claus Gittinger <cg@exept.de>
parents: 3744
diff changeset
  3592
    self at:'close' language:#'de' put:'schließen'.
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3593
    self at:'yes' language:#'de' put:'ja'.
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3594
    self at:'no' language:#'de' put:'nein'.
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3595
    self at:'cancel' language:#'de' put:'abbrechen'.
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3596
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3597
    self at:'open' language:#'fr' put:'ouvrir'.
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3598
    self at:'close' language:#'fr' put:'fermer'.
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3599
    self at:'yes' language:#'fr' put:'oui'.
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3600
    self at:'no' language:#'fr' put:'non'.
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3601
! !
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3602
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3603
!InternationalLanguageTranslationEditor::KeyStringsToLanguageMappings methodsFor:'private'!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3604
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3605
atLanguage:lang
2032
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  3606
    ^ perLanguageMappings at:lang
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3607
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3608
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3609
atLanguageIndex:idx
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3610
    |lang|
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3611
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3612
    lang := languages at:idx.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3613
    ^ self atLanguage:lang.
2032
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  3614
!
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  3615
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  3616
mappingAtLanguage:lang
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  3617
    ^ perLanguageMappings at:lang
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  3618
!
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  3619
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  3620
mappingAtLanguageIndex:idx
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  3621
    |lang|
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  3622
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  3623
    lang := languages at:idx.
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  3624
    ^ self mappingAtLanguage:lang.
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3625
! !
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3626
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3627
!InternationalLanguageTranslationEditor::KeyStringsToLanguageMappings methodsFor:'queries'!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3628
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3629
includesKey:aKey
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3630
    ^ keys includes:aKey
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3631
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3632
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3633
includesLanguage:lang
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3634
    ^ languages includes:lang
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3635
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3636
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3637
indexOfKey:aKey
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3638
    ^ keys indexOf:aKey
2050
fm
parents: 2049
diff changeset
  3639
!
fm
parents: 2049
diff changeset
  3640
fm
parents: 2049
diff changeset
  3641
maxKeySizeForLanguage: lang
fm
parents: 2049
diff changeset
  3642
fm
parents: 2049
diff changeset
  3643
^(self atLanguage: lang) keys inject: 0 into:[:maxSize :each |
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  3644
    (maxSize < each size and:[each size < 100])
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3645
	ifTrue:[each size]
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3646
	ifFalse:[maxSize].].
2051
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  3647
!
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  3648
88d16a7d0bd9 felix' fixes and additions
fm
parents: 2050
diff changeset
  3649
searchForSimilarTranslation: aKey in: language
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3650
    "Returns a collection of translation associations that corresponds to a quite similar key comparing with aKey"
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3651
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3652
    |similarAssociations|
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3653
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3654
    similarAssociations:=
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3655
    (self mappingAtLanguage: language) associationsSelect:[:each |
3522
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  3656
	|eachKey|
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  3657
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  3658
	eachKey := eachKey.
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  3659
	eachKey isString
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  3660
	and:[(eachKey sameAs: aKey)
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  3661
	     or:[(aKey asUppercase startsWith: eachKey asUppercase)
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  3662
	     or:[((eachKey asUppercase levenshteinTo: aKey asUppercase)/ eachKey size) < 0.3
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  3663
	 ]]]
2a319ce12319 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 3455
diff changeset
  3664
	 and:[each value notEmptyOrNil]
2327
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3665
    ].
a1db8e464b02 *** empty log message ***
fm
parents: 2323
diff changeset
  3666
    ^similarAssociations
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3667
! !
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3668
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3669
!InternationalLanguageTranslationEditor::LanguageMappingRow methodsFor:'accessing'!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3670
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3671
atLanguage:language
2032
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  3672
    |translation|
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  3673
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  3674
    translation := (mappings mappingAtLanguage:language) at:key ifAbsent:nil.
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  3675
    ^ translation isNil ifTrue:nil ifFalse:[translation printString]
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3676
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3677
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3678
columnAt:columnNr
2032
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  3679
    ^ (mappings mappingAtLanguageIndex:columnNr-1) at: key ifAbsent:nil
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3680
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3681
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3682
key:something
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3683
    key := something.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3684
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3685
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3686
keyString
2032
cc2edbb9ebfc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2031
diff changeset
  3687
    ^ key printString
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3688
!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3689
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3690
mappings:something
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3691
    mappings := something.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3692
! !
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3693
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3694
!InternationalLanguageTranslationEditor::UISpecVisitor methodsFor:'accessing'!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3695
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3696
translatedLabels
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3697
    ^ translatedLabels ? #()
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3698
! !
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3699
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3700
!InternationalLanguageTranslationEditor::UISpecVisitor methodsFor:'visiting'!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3701
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3702
visitObject:anObject with:aParameter
2033
2c1264ae2c1c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2032
diff changeset
  3703
    |l|
2c1264ae2c1c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2032
diff changeset
  3704
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3705
    (anObject isKindOf:UISpecification) ifTrue:[
2434
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3706
	(anObject respondsTo:#translateLabel) ifTrue:[
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3707
	    anObject translateLabel == true ifTrue:[
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3708
		translatedLabels isNil ifTrue:[
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3709
		    translatedLabels := Set new.
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3710
		].
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3711
		l := anObject perform:#label ifNotUnderstood:nil.
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3712
		l notNil ifTrue:[
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3713
		    translatedLabels add:l.
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3714
		].
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3715
	    ].
6ad1f853d2e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2433
diff changeset
  3716
	].
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3717
    ].
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3718
    self visitChildrenOf:anObject.
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3719
! !
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3720
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3721
!InternationalLanguageTranslationEditor class methodsFor:'documentation'!
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3722
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3723
version
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3724
    ^ '$Header$'
3246
034fe0de47bd #BUGFIX
Stefan Vogel <sv@exept.de>
parents: 3245
diff changeset
  3725
!
034fe0de47bd #BUGFIX
Stefan Vogel <sv@exept.de>
parents: 3245
diff changeset
  3726
034fe0de47bd #BUGFIX
Stefan Vogel <sv@exept.de>
parents: 3245
diff changeset
  3727
version_CVS
034fe0de47bd #BUGFIX
Stefan Vogel <sv@exept.de>
parents: 3245
diff changeset
  3728
    ^ '$Header$'
2015
8f226ff9b5e6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  3729
! !
3594
cfbc0a29b030 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3522
diff changeset
  3730