;;; widget.el --- a library of user interface components
;;
-;; Copyright (C) 1996-1997, 2001-2011 Free Software Foundation, Inc.
+;; Copyright (C) 1996-1997, 2001-2016 Free Software Foundation, Inc.
;;
;; Author: Per Abrahamsen <abraham@dina.kvl.dk>
;; Keywords: help, extensions, faces, hypermedia
-;; Version: 1.9920
;; X-URL: http://www.dina.kvl.dk/~abraham/custom/
;; Package: emacs
;; :button-face-get :button-face :value-face :keymap :entry-from
;; :entry-to :help-echo :documentation-property :tab-order)
-(put 'define-widget 'doc-string-elt 3) ;`declare' doesn't work in functions.
(defun define-widget (name class doc &rest args)
"Define a new widget type named NAME from CLASS.
* (widget-create NAME)
-* (apply 'widget-create CLASS ARGS)
+* (apply #\\='widget-create CLASS ARGS)
The third argument DOC is a documentation string for the widget."
+ (declare (doc-string 3))
+ ;;
+ (unless (or (null doc) (stringp doc))
+ (error "widget documentation must be nil or a string."))
(put name 'widget-type (cons class args))
(put name 'widget-documentation (purecopy doc))
name)
;; This is used by external widget code (in W3, at least).
-(defalias 'widget-plist-member 'plist-member)
+(define-obsolete-function-alias 'widget-plist-member #'plist-member "25.2")
;;; The End.