Tools__InternationalLanguageTranslationEditor.st
changeset 2048 dcec4e818069
parent 2047 5f9b26862c57
child 2049 d10762e5d924
equal deleted inserted replaced
2047:5f9b26862c57 2048:dcec4e818069
     8 		showMissingTranslationsOnly
     8 		showMissingTranslationsOnly
     9 		keyStringAndLanguageSelectionTableColumnDescriptionHolder
     9 		keyStringAndLanguageSelectionTableColumnDescriptionHolder
    10 		languageShownHolders dataSetView lastExtractedClass
    10 		languageShownHolders dataSetView lastExtractedClass
    11 		lastExtractedApplicationClass stopApplicationIconVisibleHolder
    11 		lastExtractedApplicationClass stopApplicationIconVisibleHolder
    12 		monitoredApplication originalTextModifiedHolder
    12 		monitoredApplication originalTextModifiedHolder
    13 		languageTextModifiedHolder inSingleFileMode lastExtractedProject'
    13 		languageTextModifiedHolder languageTextAcceptHolder
       
    14 		inSingleFileMode lastExtractedProject lastLanguage
       
    15 		lastSelectedKey'
    14 	classVariableNames:'LastExtractedClass LastExtractedApplicationClass
    16 	classVariableNames:'LastExtractedClass LastExtractedApplicationClass
    15 		LastExtractedProject'
    17 		LastExtractedProject'
    16 	poolDictionaries:''
    18 	poolDictionaries:''
    17 	category:'Interface-UIPainter'
    19 	category:'Interface-UIPainter'
    18 !
    20 !
    92 
    94 
    93     "Do not manually edit this!! If it is corrupted,
    95     "Do not manually edit this!! If it is corrupted,
    94      the UIPainter may not be able to read the specification."
    96      the UIPainter may not be able to read the specification."
    95 
    97 
    96     "
    98     "
    97      UIPainter new openOnClass:InternationalLanguageTranslationEditor andSelector:#windowSpec
    99      UIPainter new openOnClass:Tools::InternationalLanguageTranslationEditor andSelector:#windowSpec
    98      InternationalLanguageTranslationEditor new openInterface:#windowSpec
   100      Tools::InternationalLanguageTranslationEditor new openInterface:#windowSpec
    99      InternationalLanguageTranslationEditor open
   101      Tools::InternationalLanguageTranslationEditor open
   100     "
   102     "
   101 
   103 
   102     <resource: #canvas>
   104     <resource: #canvas>
   103 
   105 
   104     ^ 
   106     ^ 
   178                           name: 'LanguageText'
   180                           name: 'LanguageText'
   179                           layout: (LayoutFrame 0 0 30 0 0 1 0 1)
   181                           layout: (LayoutFrame 0 0 30 0 0 1 0 1)
   180                           model: languageTextHolder
   182                           model: languageTextHolder
   181                           hasHorizontalScrollBar: true
   183                           hasHorizontalScrollBar: true
   182                           hasVerticalScrollBar: true
   184                           hasVerticalScrollBar: true
       
   185                           acceptChannel: languageTextAcceptHolder
   183                           modifiedChannel: languageTextModifiedHolder
   186                           modifiedChannel: languageTextModifiedHolder
   184                         )
   187                         )
   185                        )
   188                        )
   186                      
   189                      
   187                     )
   190                     )
   530                     h
   533                     h
   531                 ].
   534                 ].
   532     ^ holder.
   535     ^ holder.
   533 !
   536 !
   534 
   537 
       
   538 languageTextAcceptHolder
       
   539     languageTextAcceptHolder isNil ifTrue:[
       
   540         languageTextAcceptHolder := false asValue.
       
   541     ].
       
   542     ^ languageTextAcceptHolder.
       
   543 !
       
   544 
   535 languageTextHolder
   545 languageTextHolder
   536     languageTextHolder isNil ifTrue:[
   546     languageTextHolder isNil ifTrue:[
   537         languageTextHolder := '' asValue.
   547         languageTextHolder := '' asValue.
   538     ].
   548     ].
   539     ^ languageTextHolder.
   549     ^ languageTextHolder.
   584 
   594 
   585 shownLanguages
   595 shownLanguages
   586     shownLanguages isNil ifTrue:[
   596     shownLanguages isNil ifTrue:[
   587         shownLanguages := List new.
   597         shownLanguages := List new.
   588         shownLanguages addAll:(self languagesList).
   598         shownLanguages addAll:(self languagesList).
       
   599         "/ shownLanguages addDependent:self. 
   589         shownLanguages onChangeSend:#shownLanguagesChanged to:self.
   600         shownLanguages onChangeSend:#shownLanguagesChanged to:self.
   590     ].
   601     ].
   591     ^ shownLanguages.
   602     ^ shownLanguages.
   592 !
   603 !
   593 
   604 
   594 stopApplicationIconVisibleHolder
   605 stopApplicationIconVisibleHolder
   595     stopApplicationIconVisibleHolder isNil ifTrue:[
   606     stopApplicationIconVisibleHolder isNil ifTrue:[
   596         stopApplicationIconVisibleHolder := false asValue.
   607         stopApplicationIconVisibleHolder := false asValue.
   597     ].
   608     ].
   598     ^ stopApplicationIconVisibleHolder.
   609     ^ stopApplicationIconVisibleHolder.
       
   610 ! !
       
   611 
       
   612 !InternationalLanguageTranslationEditor methodsFor:'change & update'!
       
   613 
       
   614 update:something with:aParameter from:changedObject
       
   615     changedObject == shownLanguages ifTrue:[
       
   616          self shownLanguagesChanged.
       
   617          ^ self.
       
   618     ].
   599 ! !
   619 ! !
   600 
   620 
   601 !InternationalLanguageTranslationEditor methodsFor:'initialization & release'!
   621 !InternationalLanguageTranslationEditor methodsFor:'initialization & release'!
   602 
   622 
   603 closeRequest
   623 closeRequest
   911 
   931 
   912 enableLanguageDisplayFor:newLang
   932 enableLanguageDisplayFor:newLang
   913     |shownLanguagesInOrder|
   933     |shownLanguagesInOrder|
   914 
   934 
   915     (self shownLanguages includes:newLang) ifFalse:[
   935     (self shownLanguages includes:newLang) ifFalse:[
   916         shownLanguagesInOrder := self languagesList
   936 "/        shownLanguagesInOrder := self languagesList
   917                                     select:[:lang | (self shownLanguages includes:lang)
   937 "/                                    select:[:lang | (self shownLanguages includes:lang)
   918                                                     or:[ lang = newLang ]].
   938 "/                                                    or:[ lang = newLang ]].
   919         self shownLanguages contents:shownLanguagesInOrder.
   939 "/        self shownLanguages contents:shownLanguagesInOrder.
       
   940         self shownLanguages add:newLang.
   920     ]
   941     ]
   921 !
   942 !
   922 
   943 
   923 isLanguageShown:lang
   944 isLanguageShown:lang
   924     ^ self shownLanguages includes:lang
   945     ^ self shownLanguages includes:lang
  1241 
  1262 
  1242 !InternationalLanguageTranslationEditor methodsFor:'user actions'!
  1263 !InternationalLanguageTranslationEditor methodsFor:'user actions'!
  1243 
  1264 
  1244 selectionChanged
  1265 selectionChanged
  1245     |rowSelectionIndex colSelectionIndex language selectedKey originalText languageText
  1266     |rowSelectionIndex colSelectionIndex language selectedKey originalText languageText
  1246      answer|
  1267      answer newText autoAccept|
       
  1268 
       
  1269     autoAccept := true.
       
  1270 
       
  1271     self originalTextModifiedHolder value ifTrue:[ 
       
  1272         answer := OptionBox 
       
  1273                       request:'Accept changed original text (key) ?' 
       
  1274                       label:'Original text (key) changed'
       
  1275                       image:(WarningBox iconBitmap)
       
  1276                       buttonLabels:#('Cancel' 'Accept' 'Accept As New')
       
  1277                       values:#(nil #accept #acceptAsNew)
       
  1278                       default:#acceptAsNew.
       
  1279 
       
  1280         answer isNil ifTrue:[^ self ].
       
  1281         answer == #accept ifTrue:[
       
  1282 self halt.        ].
       
  1283         answer == #acceptAsNew ifTrue:[
       
  1284 self halt.        ].
       
  1285     ].
       
  1286     self languageTextModifiedHolder value ifTrue:[ 
       
  1287         (autoAccept or:[Dialog confirm:'Accept changed translation ?']) ifTrue:[
       
  1288             languageTextAcceptHolder value:true.
       
  1289 self halt.
       
  1290             lastLanguage notNil ifTrue:[
       
  1291                 newText := self languageTextHolder value asCollectionOfLines first.
       
  1292                 keyStringsToLanguageMappings at:lastSelectedKey language:lastLanguage put:newText.
       
  1293             ]
       
  1294         ]
       
  1295     ].
  1247 
  1296 
  1248     colSelectionIndex := dataSetView selectedColIndex.
  1297     colSelectionIndex := dataSetView selectedColIndex.
  1249     language := colSelectionIndex > 1 ifTrue:[ shownLanguages at:colSelectionIndex-1 ] ifFalse:nil.
  1298     language := colSelectionIndex > 1 ifTrue:[ shownLanguages at:colSelectionIndex-1 ] ifFalse:nil.
  1250 
  1299 
  1251     rowSelectionIndex := self selectedKeyRow value.
  1300     rowSelectionIndex := self selectedKeyRow value.
  1258                 languageText := languageText storeString.
  1307                 languageText := languageText storeString.
  1259             ]
  1308             ]
  1260         ]
  1309         ]
  1261     ].
  1310     ].
  1262 
  1311 
  1263     self originalTextModifiedHolder value ifTrue:[ 
       
  1264         answer := OptionBox 
       
  1265                       request:'Accept changed original text (key) ?' 
       
  1266                       label:'Original text (key) changed'
       
  1267                       image:(WarningBox iconBitmap)
       
  1268                       buttonLabels:#('Cancel' 'Accept' 'Accept As New')
       
  1269                       values:#(nil #accept #acceptAsNew)
       
  1270                       default:#acceptAsNew.
       
  1271 
       
  1272         answer isNil ifTrue:[^ self ].
       
  1273         answer == #accept ifTrue:[
       
  1274 self halt.        ].
       
  1275         answer == #acceptAsNew ifTrue:[
       
  1276 self halt.        ].
       
  1277     ].
       
  1278     self languageTextModifiedHolder value ifTrue:[ self halt.
       
  1279         (Dialog confirm:'Accept changed translation ?') ifTrue:[
       
  1280             self halt.
       
  1281         ]
       
  1282     ].
       
  1283 
       
  1284     self originalTextHolder value:originalText.
  1312     self originalTextHolder value:originalText.
  1285     self languageTextHolder value:languageText.
  1313     self languageTextHolder value:languageText.
  1286 
  1314 
  1287     self originalTextModifiedHolder value:false.
  1315     self originalTextModifiedHolder value:false.
  1288     self languageTextModifiedHolder value:false.
  1316     self languageTextModifiedHolder value:false.
       
  1317 
       
  1318     lastLanguage := language.
       
  1319     lastSelectedKey := selectedKey.
  1289 !
  1320 !
  1290 
  1321 
  1291 shownLanguagesChanged
  1322 shownLanguagesChanged
  1292     self keyStringAndLanguageSelectionTableColumnDescriptionHolder 
  1323     self keyStringAndLanguageSelectionTableColumnDescriptionHolder 
  1293         value:(self keyStringAndLanguageSelectionTableColumnDescription).
  1324         value:(self keyStringAndLanguageSelectionTableColumnDescription).