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