From 63ff193e474be458cd154723496dcd50abe44d16 Mon Sep 17 00:00:00 2001 From: Robby Findler Date: Sun, 21 Dec 2008 07:21:28 +0000 Subject: [PATCH] added preference that disables overwrite mode svn: r12917 original commit: c2685be3a90fd1977388d6759c12f0c7bbee5ba0 --- collects/framework/private/keymap.ss | 11 ++++++----- collects/framework/private/main.ss | 2 ++ collects/framework/private/preferences.ss | 4 ++++ 3 files changed, 12 insertions(+), 5 deletions(-) diff --git a/collects/framework/private/keymap.ss b/collects/framework/private/keymap.ss index 4c84f95c..8fe8fec9 100644 --- a/collects/framework/private/keymap.ss +++ b/collects/framework/private/keymap.ss @@ -860,8 +860,9 @@ [toggle-overwrite (λ (edit event) - (send edit set-overwrite-mode - (not (send edit get-overwrite-mode))))] + (when (preferences:get 'framework:overwrite-mode-keybindings) + (send edit set-overwrite-mode + (not (send edit get-overwrite-mode)))))] [down-into-embedded-editor (λ (text event) @@ -1016,7 +1017,7 @@ (add "forward-to-next-embedded-editor" forward-to-next-embedded-editor) (add "back-to-prev-embedded-editor" back-to-prev-embedded-editor) - (add "toggle-overwrite" toggle-overwrite) + (add "toggle-overwrite (when enabled in prefs)" toggle-overwrite) (add "exit" (λ (edit event) (let ([frame (send edit get-frame)]) @@ -1241,8 +1242,8 @@ (map "c:space" "toggle-anchor") - (map "insert" "toggle-overwrite") - (map-meta "o" "toggle-overwrite") + (map "insert" "toggle-overwrite (when enabled in prefs)") + (map-meta "o" "toggle-overwrite (when enabled in prefs)") (map-meta "g" "goto-line") diff --git a/collects/framework/private/main.ss b/collects/framework/private/main.ss index bf02b824..97a074b8 100644 --- a/collects/framework/private/main.ss +++ b/collects/framework/private/main.ss @@ -20,6 +20,8 @@ (application-preferences-handler (λ () (preferences:show-dialog))) +(preferences:set-default 'framework:overwrite-mode-keybindings #f boolean?) + (preferences:set-default 'framework:ask-about-paste-normalization #t boolean?) (preferences:set-default 'framework:do-paste-normalization #t boolean?) diff --git a/collects/framework/private/preferences.ss b/collects/framework/private/preferences.ss index 55967d03..5bb3db1d 100644 --- a/collects/framework/private/preferences.ss +++ b/collects/framework/private/preferences.ss @@ -447,6 +447,10 @@ the state transitions / contracts are: 'framework:do-paste-normalization (string-constant normalize-string-preference) values values) + (make-check editor-panel + 'framework:overwrite-mode-keybindings + (string-constant enable-overwrite-mode-keybindings) + values values) (editor-panel-procs editor-panel))))]) (add-editor-checkbox-panel)))