TextView.st
changeset 5757 6b9528edde06
parent 5741 f18b564ed955
child 5760 9a0b5601b3f4
child 5764 a88d15f79b65
equal deleted inserted replaced
5756:8bf39c14ecda 5757:6b9528edde06
   504                    extent: (Point 429 24)
   504                    extent: (Point 429 24)
   505                  )
   505                  )
   506                 (CheckBoxSpec
   506                 (CheckBoxSpec
   507                    label: 'Select Lines'
   507                    label: 'Select Lines'
   508                    name: 'CheckBox3'
   508                    name: 'CheckBox3'
       
   509                    layout: (LayoutFrame 0 0.0 0 0 0 1.0 24 0)
   509                    activeHelpKey: selectLines
   510                    activeHelpKey: selectLines
   510                    level: 0
   511                    level: 0
   511                    initiallyInvisible: true
   512                    initiallyInvisible: true
   512                    tabable: true
   513                    tabable: true
   513                    model: selectLines
   514                    model: selectLinesHolder
   514                    translateLabel: true
   515                    translateLabel: true
   515                    extent: (Point 302 24)
       
   516                  )
   516                  )
   517                 (CheckBoxSpec
   517                 (CheckBoxSpec
   518                    label: 'Wrap at End of Text (forward only)'
   518                    label: 'Wrap at End of Text (forward only)'
   519                    name: 'CheckBox7'
   519                    name: 'CheckBox7'
   520                    activeHelpKey: searchWithWrap
   520                    activeHelpKey: searchWithWrap
   552                          enableChannel: replaceBoolean
   552                          enableChannel: replaceBoolean
   553                          model: replaceTextHolder
   553                          model: replaceTextHolder
   554                          acceptOnReturn: true
   554                          acceptOnReturn: true
   555                          acceptOnTab: true
   555                          acceptOnTab: true
   556                          acceptOnPointerLeave: true
   556                          acceptOnPointerLeave: true
   557                          extent: (Point 299 24)
   557                          extent: (Point 284 24)
   558                        )
   558                        )
   559                       )
   559                       )
   560                     
   560                     
   561                    )
   561                    )
   562                    extent: (Point 429 24)
   562                    extent: (Point 429 24)
  2227      Q: is it a good idea to preserve the last searchstring between views?
  2227      Q: is it a good idea to preserve the last searchstring between views?
  2228      cg: yes - turns out to be useful and less confusing than keeping last per view
  2228      cg: yes - turns out to be useful and less confusing than keeping last per view
  2229     "
  2229     "
  2230     |searchBox patternHolder caseHolder matchHolder matchWithRegexHolder wrapAtEndHolder
  2230     |searchBox patternHolder caseHolder matchHolder matchWithRegexHolder wrapAtEndHolder
  2231      fwd ign match initialString
  2231      fwd ign match initialString
  2232      bindings bldr doSearch modal searchVariableHolder selectedVariable searchFullWordHolder
  2232      bindings bldr doSearch modal searchVariableHolder selectedVariable searchFullWordHolder selectLinesHolder
  2233      replaceBooleanEnabledHolder replaceBooleanHolder replaceTextHolder
  2233      replaceBooleanEnabledHolder replaceBooleanHolder replaceTextHolder
  2234      replaceAllBooleanHolder replacePreserveCaseBooleanHolder
  2234      replaceAllBooleanHolder replacePreserveCaseBooleanHolder
  2235      searchAtBeginOfLineOnlyHolder updateReturnKeyBehavior|
  2235      searchAtBeginOfLineOnlyHolder updateReturnKeyBehavior|
  2236 
  2236 
  2237     searchBarActionBlock notNil ifTrue:[
  2237     searchBarActionBlock notNil ifTrue:[
  2263     matchWithRegexHolder := (LastSearchWasMatchWithRegex ? false) asValue.
  2263     matchWithRegexHolder := (LastSearchWasMatchWithRegex ? false) asValue.
  2264     wrapAtEndHolder := (LastSearchWasWrapAtEndOfText ? false) asValue.
  2264     wrapAtEndHolder := (LastSearchWasWrapAtEndOfText ? false) asValue.
  2265     searchVariableHolder := (lastSearchWasVariableSearch ? false) asValue.
  2265     searchVariableHolder := (lastSearchWasVariableSearch ? false) asValue.
  2266     searchFullWordHolder := false asValue.
  2266     searchFullWordHolder := false asValue.
  2267     searchAtBeginOfLineOnlyHolder := false asValue.
  2267     searchAtBeginOfLineOnlyHolder := false asValue.
       
  2268     selectLinesHolder := false asValue.
  2268     replaceBooleanHolder := ("LastSearchWasReplace ?" false) asValue.
  2269     replaceBooleanHolder := ("LastSearchWasReplace ?" false) asValue.
  2269     replaceAllBooleanHolder := false asValue.
  2270     replaceAllBooleanHolder := false asValue.
  2270     replacePreserveCaseBooleanHolder := false asValue.
  2271     replacePreserveCaseBooleanHolder := false asValue.
  2271     replaceTextHolder := (LastSearchReplacedString ? '') asValue.
  2272     replaceTextHolder := (LastSearchReplacedString ? '') asValue.
  2272     replaceBooleanEnabledHolder := self isReadOnly not asValue.
  2273     replaceBooleanEnabledHolder := self isReadOnly not asValue.
  2320             pattern := patternHolder value.
  2321             pattern := patternHolder value.
  2321             pattern notEmptyOrNil ifTrue:[
  2322             pattern notEmptyOrNil ifTrue:[
  2322                 searchAction := 
  2323                 searchAction := 
  2323                     [
  2324                     [
  2324                         self searchUsingSpec:(
  2325                         self searchUsingSpec:(
  2325                             ListView::SearchSpec new
  2326                             self class searchSpec new
  2326                                 pattern:pattern
  2327                                 pattern:pattern
  2327                                 ignoreCase:lastSearchIgnoredCase
  2328                                 ignoreCase:lastSearchIgnoredCase
  2328                                 match: lastSearchWasMatch 
  2329                                 match: lastSearchWasMatch 
  2329                                 regexMatch:matchWithRegexHolder value 
  2330                                 regexMatch:matchWithRegexHolder value 
  2330                                 variable: searchVariableHolder value
  2331                                 variable: searchVariableHolder value
  2441 
  2442 
  2442     bindings at:#searchFullWord put:searchFullWordHolder.
  2443     bindings at:#searchFullWord put:searchFullWordHolder.
  2443     bindings at:#searchFullWordEnabled put:true.
  2444     bindings at:#searchFullWordEnabled put:true.
  2444     bindings at:#searchAtBeginOfLineOnly put:searchAtBeginOfLineOnlyHolder.
  2445     bindings at:#searchAtBeginOfLineOnly put:searchAtBeginOfLineOnlyHolder.
  2445     bindings at:#wrapAtEndOfTextHolder put:wrapAtEndHolder.
  2446     bindings at:#wrapAtEndOfTextHolder put:wrapAtEndHolder.
       
  2447     bindings at:#selectLinesHolder put:selectLinesHolder.
  2446     
  2448     
  2447     bindings at:#replaceEnabled put:replaceBooleanEnabledHolder.
  2449     bindings at:#replaceEnabled put:replaceBooleanEnabledHolder.
  2448     bindings at:#replaceBoolean put:replaceBooleanHolder.
  2450     bindings at:#replaceBoolean put:replaceBooleanHolder.
  2449     bindings at:#replaceAllBoolean put:replaceAllBooleanHolder.
  2451     bindings at:#replaceAllBoolean put:replaceAllBooleanHolder.
  2450     bindings at:#replacePreserveCaseBoolean put:replacePreserveCaseBooleanHolder.
  2452     bindings at:#replacePreserveCaseBoolean put:replacePreserveCaseBooleanHolder.
  2519         self objectAttributeAt:#currentModelessSearchBox put:searchBox.
  2521         self objectAttributeAt:#currentModelessSearchBox put:searchBox.
  2520     ]
  2522     ]
  2521 
  2523 
  2522     "Modified: / 11-07-2006 / 11:18:38 / fm"
  2524     "Modified: / 11-07-2006 / 11:18:38 / fm"
  2523     "Created: / 08-03-2012 / 14:02:59 / cg"
  2525     "Created: / 08-03-2012 / 14:02:59 / cg"
       
  2526 !
       
  2527 
       
  2528 replace:someText
       
  2529     "replace the selection by someText. I am readonly, so this is a no-op here.
       
  2530      Subclasses may redefine me."
       
  2531 
       
  2532     ^ self.
  2524 !
  2533 !
  2525 
  2534 
  2526 save
  2535 save
  2527     "save contents into a file
  2536     "save contents into a file
  2528      - ask user for filename using a fileSelectionBox."
  2537      - ask user for filename using a fileSelectionBox."