Added Jens Axel's case sensitive searching fix. also PR 7886
svn: r2266
This commit is contained in:
parent
1c21a8bd2b
commit
dac3f9b7d3
|
@ -1610,6 +1610,13 @@
|
||||||
|
|
||||||
[button-panel (make-object horizontal-panel% dialog)]
|
[button-panel (make-object horizontal-panel% dialog)]
|
||||||
|
|
||||||
|
[prefs-panel (make-object horizontal-panel% dialog)]
|
||||||
|
[sensitive-check-box-callback (λ () (send find-edit toggle-case-sensitive))]
|
||||||
|
[sensitive-check-box (make-object check-box%
|
||||||
|
(string-constant find-case-sensitive)
|
||||||
|
prefs-panel (λ (x y) (sensitive-check-box-callback)))]
|
||||||
|
[dummy (begin (send sensitive-check-box set-value (send find-edit get-case-sensitive?))
|
||||||
|
(send prefs-panel set-alignment 'center 'center))]
|
||||||
[update-texts
|
[update-texts
|
||||||
(λ ()
|
(λ ()
|
||||||
(send find-edit stop-searching)
|
(send find-edit stop-searching)
|
||||||
|
@ -1874,10 +1881,11 @@
|
||||||
string
|
string
|
||||||
searching-direction
|
searching-direction
|
||||||
search-anchor
|
search-anchor
|
||||||
'eof #t #t #t)])
|
'eof #t case-sensitive? #t)])
|
||||||
(cond
|
(cond
|
||||||
[(not first-pos)
|
[(not first-pos)
|
||||||
(if wrap?
|
(if wrap?
|
||||||
|
(begin
|
||||||
(let-values ([(found-edit pos)
|
(let-values ([(found-edit pos)
|
||||||
(find-string-embedded
|
(find-string-embedded
|
||||||
top-searching-edit
|
top-searching-edit
|
||||||
|
@ -1885,15 +1893,20 @@
|
||||||
searching-direction
|
searching-direction
|
||||||
(if (eq? 'forward searching-direction)
|
(if (eq? 'forward searching-direction)
|
||||||
0
|
0
|
||||||
(send searching-edit last-position)))])
|
(send searching-edit last-position))
|
||||||
|
'eof #t case-sensitive? #f)])
|
||||||
(if (not pos)
|
(if (not pos)
|
||||||
(not-found found-edit #f)
|
(not-found found-edit #f)
|
||||||
(found found-edit pos)))
|
(found found-edit pos))))
|
||||||
(not-found found-edit #f))]
|
(not-found found-edit #f))]
|
||||||
[else
|
[else
|
||||||
(found found-edit first-pos)]))))))))
|
(found found-edit first-pos)]))))))))
|
||||||
(field
|
(field [dont-search #f]
|
||||||
[dont-search #f])
|
[case-sensitive? (preferences:get 'framework:case-sensitive-search?)])
|
||||||
|
(define/public (toggle-case-sensitive)
|
||||||
|
(set! case-sensitive? (not case-sensitive?))
|
||||||
|
(preferences:set 'framework:case-sensitive-search? case-sensitive?))
|
||||||
|
(define/public (get-case-sensitive?) case-sensitive?)
|
||||||
(define/public (stop-searching)
|
(define/public (stop-searching)
|
||||||
(set! dont-search #t))
|
(set! dont-search #t))
|
||||||
(define/public (start-searching)
|
(define/public (start-searching)
|
||||||
|
@ -2161,6 +2174,7 @@
|
||||||
(set-search-direction direction)
|
(set-search-direction direction)
|
||||||
(send find-edit search #t beep?)))
|
(send find-edit search #t beep?)))
|
||||||
|
|
||||||
|
(define sensitive-check-box #f)
|
||||||
(define search-panel #f)
|
(define search-panel #f)
|
||||||
(define search-gui-built? #f)
|
(define search-gui-built? #f)
|
||||||
(define dir-radio #f)
|
(define dir-radio #f)
|
||||||
|
@ -2237,6 +2251,15 @@
|
||||||
(set-search-direction forward)
|
(set-search-direction forward)
|
||||||
(reset-search-anchor (get-text-to-search)))))))
|
(reset-search-anchor (get-text-to-search)))))))
|
||||||
|
|
||||||
|
(define _10
|
||||||
|
(begin
|
||||||
|
(set! sensitive-check-box (make-object check-box%
|
||||||
|
(string-constant find-case-sensitive)
|
||||||
|
middle-right-panel
|
||||||
|
(λ (x y) (send find-edit toggle-case-sensitive))))
|
||||||
|
(send sensitive-check-box set-value (get-field case-sensitive? find-edit))))
|
||||||
|
|
||||||
|
|
||||||
(define hide/undock-pane (make-object horizontal-panel% middle-right-panel))
|
(define hide/undock-pane (make-object horizontal-panel% middle-right-panel))
|
||||||
(define hide-button (make-object button% (string-constant hide)
|
(define hide-button (make-object button% (string-constant hide)
|
||||||
hide/undock-pane
|
hide/undock-pane
|
||||||
|
|
|
@ -21,6 +21,9 @@
|
||||||
|
|
||||||
(application-preferences-handler (λ () (preferences:show-dialog)))
|
(application-preferences-handler (λ () (preferences:show-dialog)))
|
||||||
|
|
||||||
|
(preferences:set-default 'framework:case-sensitive-search?
|
||||||
|
#f
|
||||||
|
boolean?)
|
||||||
(preferences:set-default 'framework:basic-canvas-background
|
(preferences:set-default 'framework:basic-canvas-background
|
||||||
(send the-color-database find-color "white")
|
(send the-color-database find-color "white")
|
||||||
(λ (x) (is-a? x color%)))
|
(λ (x) (is-a? x color%)))
|
||||||
|
|
|
@ -466,6 +466,7 @@ please adhere to these guidelines:
|
||||||
(forward "Forward")
|
(forward "Forward")
|
||||||
(backward "Backward")
|
(backward "Backward")
|
||||||
(hide "Hide")
|
(hide "Hide")
|
||||||
|
(find-case-sensitive "Case sensitive") ;; the check box in both the docked & undocked search
|
||||||
|
|
||||||
;;; multi-file-search
|
;;; multi-file-search
|
||||||
(mfs-multi-file-search-menu-item "Search in Files...")
|
(mfs-multi-file-search-menu-item "Search in Files...")
|
||||||
|
|
Loading…
Reference in New Issue
Block a user