fixed searching bugs
new preferences fixed load bugs original commit: d44b20eb9934fe09d3a652f35401bf4c3d22cf0e
This commit is contained in:
parent
f577471106
commit
7e5c7231eb
|
@ -15,12 +15,18 @@
|
|||
|
||||
(mred:debug:printf 'invoke "mred:edit@")
|
||||
|
||||
(mred:preferences:set-preference-default 'mred:verify-change-format #f)
|
||||
(mred:preferences:set-preference-default 'mred:verify-change-format #f
|
||||
(lambda (x)
|
||||
(or (not x)
|
||||
(eq? x #t))))
|
||||
|
||||
(define-struct range (start end b/w-bitmap color))
|
||||
(define-struct rectangle (left top width height b/w-bitmap color))
|
||||
|
||||
(mred:preferences:set-preference-default 'mred:auto-set-wrap? #f)
|
||||
(mred:preferences:set-preference-default 'mred:auto-set-wrap? #f
|
||||
(lambda (x)
|
||||
(or (not x)
|
||||
(eq? x #t))))
|
||||
|
||||
(define make-snip%
|
||||
(let ([sl (make-object wx:style-list%)])
|
||||
|
|
|
@ -40,7 +40,10 @@
|
|||
#t]
|
||||
[else #f])))
|
||||
|
||||
(mred:preferences:set-preference-default 'mred:show-periods-in-dirlist #f)
|
||||
(mred:preferences:set-preference-default 'mred:show-periods-in-dirlist #f
|
||||
(lambda (x)
|
||||
(or (not x)
|
||||
(eq? x #t))))
|
||||
|
||||
(define finder-dialog%
|
||||
(class mred:container:dialog-box% (save-mode? replace-ok? multi-mode?
|
||||
|
@ -538,7 +541,11 @@
|
|||
(mred:preferences:set-preference-default 'mred:file-dialogs
|
||||
(if (eq? wx:platform 'unix)
|
||||
'common
|
||||
'std))
|
||||
'std)
|
||||
(lambda (x)
|
||||
(or (eq? x 'common)
|
||||
(eq? x 'std))))
|
||||
|
||||
(define put-file
|
||||
(lambda args
|
||||
(apply (case (mred:preferences:get-preference 'mred:file-dialogs)
|
||||
|
|
|
@ -44,7 +44,11 @@
|
|||
(send keymap map-function key func))
|
||||
(make-meta-prefix-list key))))
|
||||
|
||||
(mred:preferences:set-preference-default 'mred:delete-forward? (not (eq? wx:platform 'unix)))
|
||||
(mred:preferences:set-preference-default 'mred:delete-forward?
|
||||
(not (eq? wx:platform 'unix))
|
||||
(lambda (x)
|
||||
(or (not x)
|
||||
(eq? x #t))))
|
||||
|
||||
; This installs the standard keyboard mapping
|
||||
(define setup-global-keymap
|
||||
|
@ -52,7 +56,10 @@
|
|||
(let* ([rcs
|
||||
(let ([last-checkin-string ""])
|
||||
(mred:preferences:set-preference-default
|
||||
'rcs-pathname (list "/usr/local/RCS/" "/usr/bin/" "/usr/local/bin/"))
|
||||
'rcs-pathname (list "/usr/local/RCS/" "/usr/bin/" "/usr/local/bin/")
|
||||
(lambda (x)
|
||||
(and (list? x)
|
||||
(andmap string? x))))
|
||||
(lambda (edit event)
|
||||
(let/ec k
|
||||
(let* ([rcs-binaries (list "ci" "co" "rlog")]
|
||||
|
|
|
@ -24,6 +24,7 @@
|
|||
(define-struct un/marshall (marshall unmarshall))
|
||||
(define-struct marshalled (data))
|
||||
(define-struct pref (value))
|
||||
(define-struct default (value checker))
|
||||
|
||||
(define guard
|
||||
(lambda (when p value thunk)
|
||||
|
@ -83,14 +84,22 @@
|
|||
((debug-info-handler))))))])
|
||||
(cond
|
||||
[(marshalled? ans)
|
||||
(let* ([unmarshalled (unmarshall p ans)]
|
||||
[default
|
||||
(let* ([default-s
|
||||
(hash-table-get
|
||||
defaults p
|
||||
(lambda ()
|
||||
(error 'get-preference
|
||||
"no default pref for: ~a~n"
|
||||
p)))]
|
||||
[default (default-value default-s)]
|
||||
[checker (default-checker default-s)]
|
||||
[unmarshalled (let ([unmarsh (unmarshall p ans)])
|
||||
(if (checker unmarsh)
|
||||
unmarsh
|
||||
(begin
|
||||
(printf "WARNING: ~s rejecting invalid pref ~s in favor of ~s~n"
|
||||
p unmarsh default)
|
||||
default)))]
|
||||
[_ (mred:debug:printf 'prefs "get-preference checking callbacks: ~a to ~a"
|
||||
p unmarshalled)]
|
||||
[pref (if (check-callbacks p unmarshalled)
|
||||
|
@ -140,16 +149,19 @@
|
|||
(mred:debug:printf 'prefs "finished setting prefs to default values")))
|
||||
|
||||
(define set-preference-default
|
||||
(lambda (p value)
|
||||
(lambda (p value checker)
|
||||
(mred:debug:printf 'prefs "setting default value for ~a to ~a" p value)
|
||||
(hash-table-get preferences p
|
||||
(lambda ()
|
||||
(hash-table-put! preferences p (make-pref value))))
|
||||
(hash-table-put! defaults p value)))
|
||||
(hash-table-put! defaults p (make-default value checker))))
|
||||
|
||||
;; this is here becuase exit has to come before
|
||||
;; prefs.ss in the loading order.
|
||||
(set-preference-default 'mred:verify-exit #t)
|
||||
(set-preference-default 'mred:verify-exit #t
|
||||
(lambda (x)
|
||||
(or (not x)
|
||||
(eq? x #t))))
|
||||
|
||||
(define save-user-preferences
|
||||
(let ([marshall-pref
|
||||
|
|
Loading…
Reference in New Issue
Block a user