aboutsummaryrefslogtreecommitdiffstats
path: root/lisp/cus-edit.el
diff options
context:
space:
mode:
authorJuri Linkov <[email protected]>2006-01-23 01:21:24 +0000
committerJuri Linkov <[email protected]>2006-01-23 01:21:24 +0000
commit192e44fc8e81000009ffa0374078c8476bd35ba4 (patch)
tree411a03b56bbb465b95025cab18e07b1e0d6a3e01 /lisp/cus-edit.el
parentde8ad208b1e42925d6e9ea237d9bbd02c02b21b0 (diff)
(custom-buffer-create-internal): Use widget type
`custom-manual' instead of `info-link' and don't set properties `button-face' and `mouse-face' explicitly. (custom-browse-group-tag, custom-browse-variable-tag) (custom-browse-face-tag): Inherit from widget class `custom-group-link' instead of `push-button'. (custom-button-unraised): Inherit from `underline' face. (custom-link): Inherit from `link' face. Fix doc and group. (custom-add-parent-links, custom-group-value-create): Don't set properties `button-face' and `mouse-face' explicitly for `custom-group-link' widget. (custom-group-link): Add properties `button-face' and `mouse-face' to widget definition. (custom-field-keymap): New variable. Put `custom-field-keymap' to editable-field's :keymap property. (custom-mode): Fix docstring: substitute keybindings for `widget-forward' and `widget-backward' from `widget-keymap', `widget-complete' from `custom-field-keymap', replace old `Custom-move-and-invoke' with `widget-move-and-invoke'. Untabify.
Diffstat (limited to 'lisp/cus-edit.el')
-rw-r--r--lisp/cus-edit.el69
1 files changed, 30 insertions, 39 deletions
diff --git a/lisp/cus-edit.el b/lisp/cus-edit.el
index 286027ac46..87dc594b0f 100644
--- a/lisp/cus-edit.el
+++ b/lisp/cus-edit.el
@@ -1470,18 +1470,14 @@ See "
(if custom-raised-buttons
"`Raised' text indicates"
"Square brackets indicate")))
- (widget-create 'info-link
+ (widget-create 'custom-manual
:tag "Custom file"
- :button-face 'custom-link
- :mouse-face 'highlight
"(emacs)Saving Customizations")
(widget-insert
" for information on how to save in a different file.\n
See ")
- (widget-create 'info-link
+ (widget-create 'custom-manual
:tag "Help"
- :button-face 'custom-link
- :mouse-face 'highlight
:help-echo "Read the online help."
"(emacs)Easy Customization")
(widget-insert " for more information.\n\n")
@@ -1497,10 +1493,8 @@ Make your editing in this buffer take effect for this session."
(if (not custom-buffer-verbose-help)
(progn
(widget-insert " ")
- (widget-create 'info-link
+ (widget-create 'custom-manual
:tag "Help"
- :button-face 'custom-link
- :mouse-face 'highlight
:help-echo "Read the online help."
"(emacs)Easy Customization")))
(when (or custom-file user-init-file)
@@ -1648,7 +1642,7 @@ item in another window.\n\n"))
(let ((custom-buffer-style 'tree))
(custom-toggle-parent widget)))
-(define-widget 'custom-browse-group-tag 'push-button
+(define-widget 'custom-browse-group-tag 'custom-group-link
"Show parent in other window when activated."
:tag "Group"
:tag-glyph "folder"
@@ -1658,7 +1652,7 @@ item in another window.\n\n"))
(let ((parent (widget-get widget :parent)))
(customize-group-other-window (widget-value parent))))
-(define-widget 'custom-browse-variable-tag 'push-button
+(define-widget 'custom-browse-variable-tag 'custom-group-link
"Show parent in other window when activated."
:tag "Option"
:tag-glyph "option"
@@ -1668,7 +1662,7 @@ item in another window.\n\n"))
(let ((parent (widget-get widget :parent)))
(customize-variable-other-window (widget-value parent))))
-(define-widget 'custom-browse-face-tag 'push-button
+(define-widget 'custom-browse-face-tag 'custom-group-link
"Show parent in other window when activated."
:tag "Face"
:tag-glyph "face"
@@ -2010,13 +2004,7 @@ and `face'."
:group 'custom-faces)
(defface custom-button-unraised
- '((((min-colors 88)
- (class color) (background light)) :foreground "blue1" :underline t)
- (((class color) (background light)) :foreground "blue" :underline t)
- (((min-colors 88)
- (class color) (background dark)) :foreground "cyan1" :underline t)
- (((class color) (background dark)) :foreground "cyan" :underline t)
- (t :underline t))
+ '((t :inherit underline))
"Face for custom buffer buttons if `custom-raised-buttons' is nil."
:version "22.1"
:group 'custom-faces)
@@ -2071,15 +2059,10 @@ and `face'."
(put 'custom-state-face 'face-alias 'custom-state)
(defface custom-link
- '((((min-colors 88)
- (class color) (background light)) :foreground "blue1" :underline t)
- (((class color) (background light)) :foreground "blue" :underline t)
- (((min-colors 88)
- (class color) (background dark)) :foreground "cyan1" :underline t)
- (((class color) (background dark)) :foreground "cyan" :underline t)
- (t :underline t))
- "Face for Info links in customization buffers."
- :group 'info)
+ '((t :inherit link))
+ "Face for links in customization buffers."
+ :version "22.1"
+ :group 'custom-faces)
(define-widget 'custom 'default
"Customize a user option."
@@ -2246,8 +2229,6 @@ If INITIAL-STRING is non-nil, use that rather than \"Parent groups:\"."
(insert " ")
(push (widget-create-child-and-convert
widget 'custom-group-link
- :button-face 'custom-link
- :mouse-face 'highlight
:tag (custom-unlispify-tag-name symbol)
symbol)
buttons)
@@ -3607,6 +3588,8 @@ restoring it to the state of a face that has never been customized."
(define-widget 'custom-group-link 'link
"Show parent in other window when activated."
+ :button-face 'custom-link
+ :mouse-face 'highlight
:help-echo "Create customization buffer for this group."
:action 'custom-group-link-action)
@@ -3805,8 +3788,6 @@ If GROUPS-ONLY non-nil, return only those members that are groups."
(if (eq custom-buffer-style 'links)
(push (widget-create-child-and-convert
widget 'custom-group-link
- :button-face 'custom-link
- :mouse-face 'highlight
:tag "Go to Group"
symbol)
buttons)
@@ -4400,6 +4381,15 @@ The format is suitable for use with `easy-menu-define'."
["Erase Customization" Custom-reset-standard t]
["Info" (info "(emacs)Easy Customization") t]))
+(defvar custom-field-keymap
+ (let ((map (copy-keymap widget-field-keymap)))
+ (define-key map "\C-c\C-c" 'Custom-set)
+ (define-key map "\C-x\C-s" 'Custom-save)
+ map)
+ "Keymap used inside editable fields in customization buffers.")
+
+(widget-put (get 'editable-field 'widget-type) :keymap custom-field-keymap)
+
(defun Custom-goto-parent ()
"Go to the parent group listed at the top of this buffer.
If several parents are listed, go to the first of them."
@@ -4425,17 +4415,18 @@ If several parents are listed, go to the first of them."
The following commands are available:
-Move to next button or editable field. \\[widget-forward]
-Move to previous button or editable field. \\[widget-backward]
-\\<widget-field-keymap>\
+\\<widget-keymap>\
+Move to next button, link or editable field. \\[widget-forward]
+Move to previous button, link or editable field. \\[widget-backward]
+\\<custom-field-keymap>\
Complete content of editable text field. \\[widget-complete]
\\<custom-mode-map>\
-Invoke button under the mouse pointer. \\[Custom-move-and-invoke]
-Invoke button under point. \\[widget-button-press]
+Invoke button under the mouse pointer. \\[widget-move-and-invoke]
+Invoke button under point. \\[widget-button-press]
Set all options from current text. \\[Custom-set]
Make values in current text permanent. \\[Custom-save]
-Make text match actual option values. \\[Custom-reset-current]
-Reset options to permanent settings. \\[Custom-reset-saved]
+Make text match actual option values. \\[Custom-reset-current]
+Reset options to permanent settings. \\[Custom-reset-saved]
Erase customizations; set options
and buffer text to the standard values. \\[Custom-reset-standard]