-;;; wid-browse.el --- Functions for browsing widgets.
+;;; wid-browse.el --- functions for browsing widgets
;;
-;; Copyright (C) 1997 Free Software Foundation, Inc.
+;; Copyright (C) 1997, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
;;
;; Author: Per Abrahamsen <abraham@dina.kvl.dk>
;; Keywords: extensions
-;; Version: 1.90
-;; X-URL: http://www.dina.kvl.dk/~abraham/custom/
+
+;; This file is part of GNU Emacs.
+
+;; GNU Emacs is free software; you can redistribute it and/or modify
+;; it under the terms of the GNU General Public License as published by
+;; the Free Software Foundation; either version 2, or (at your option)
+;; any later version.
+
+;; GNU Emacs is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU General Public License for more details.
+
+;; You should have received a copy of the GNU General Public License
+;; along with GNU Emacs; see the file COPYING. If not, write to the
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;;
(defvar widget-browse-mode-map nil
"Keymap for `widget-browse-mode'.")
-
+
(unless widget-browse-mode-map
(setq widget-browse-mode-map (make-sparse-keymap))
(set-keymap-parent widget-browse-mode-map widget-keymap)
(define-key widget-browse-mode-map "q" 'bury-buffer))
-(easy-menu-define widget-browse-mode-customize-menu
+(easy-menu-define widget-browse-mode-customize-menu
widget-browse-mode-map
"Menu used in widget browser buffers."
(customize-menu-create 'widgets))
-(easy-menu-define widget-browse-mode-menu
+(easy-menu-define widget-browse-mode-menu
widget-browse-mode-map
"Menu used in widget browser buffers."
'("Widget"
(use-local-map widget-browse-mode-map)
(easy-menu-add widget-browse-mode-customize-menu)
(easy-menu-add widget-browse-mode-menu)
- (run-hooks 'widget-browse-mode-hook))
+ (run-mode-hooks 'widget-browse-mode-hook))
+
+(put 'widget-browse-mode 'mode-class 'special)
;;; Commands.
(defun widget-browse-at (pos)
"Browse the widget under point."
(interactive "d")
- (let* ((field (get-text-property pos 'field))
- (button (get-text-property pos 'button))
- (doc (get-text-property pos 'widget-doc))
+ (let* ((field (get-char-property pos 'field))
+ (button (get-char-property pos 'button))
+ (doc (get-char-property pos 'widget-doc))
(text (cond (field "This is an editable text area.")
(button "This is an active area.")
(doc "This is documentation text.")
;;;###autoload
(defun widget-browse (widget)
"Create a widget browser for WIDGET."
- (interactive (list (completing-read "Widget: "
+ (interactive (list (completing-read "Widget: "
obarray
(lambda (symbol)
(get symbol 'widget-type))
(get widget 'widget-type)
(and (consp widget)
(get (widget-type widget) 'widget-type)))
- (error "Not a widget."))
+ (error "Not a widget"))
;; Create the buffer.
(if (symbolp widget)
(let ((buffer (format "*Browse %s Widget*" widget)))
(kill-buffer (get-buffer-create "*Browse Widget*"))
(switch-to-buffer (get-buffer-create "*Browse Widget*")))
(widget-browse-mode)
-
+
;; Quick way to get out.
;; (widget-create 'push-button
;; :action (lambda (widget &optional event)
:action 'widget-browse-action)
(defun widget-browse-action (widget &optional event)
- ;; Create widget browser for WIDGET's :value.
+ ;; Create widget browser for WIDGET's :value.
(widget-browse (widget-get widget :value)))
(defun widget-browse-value-create (widget)
;;; Widget Minor Mode.
(defvar widget-minor-mode nil
- "I non-nil, we are in Widget Minor Mode.")
- (make-variable-buffer-local 'widget-minor-mode)
+ "If non-nil, we are in Widget Minor Mode.")
+(make-variable-buffer-local 'widget-minor-mode)
(defvar widget-minor-mode-map nil
"Keymap used in Widget Minor Mode.")
(interactive "P")
(cond ((null arg)
(setq widget-minor-mode (not widget-minor-mode)))
- ((<= 0 arg)
+ ((<= arg 0)
(setq widget-minor-mode nil))
(t
(setq widget-minor-mode t)))
(add-to-list 'minor-mode-alist '(widget-minor-mode " Widget"))
-(add-to-list 'minor-mode-map-alist
+(add-to-list 'minor-mode-map-alist
(cons 'widget-minor-mode widget-minor-mode-map))
;;; The End:
(provide 'wid-browse)
-;; wid-browse.el ends here
+;;; arch-tag: d5ffb18f-8984-4735-8502-edf70456db21
+;;; wid-browse.el ends here