emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/lisp/wid-edit.el


From: Dave Love
Subject: [Emacs-diffs] Changes to emacs/lisp/wid-edit.el
Date: Mon, 09 Sep 2002 18:19:54 -0400

Index: emacs/lisp/wid-edit.el
diff -c emacs/lisp/wid-edit.el:1.111 emacs/lisp/wid-edit.el:1.112
*** emacs/lisp/wid-edit.el:1.111        Sat Jul 20 18:15:15 2002
--- emacs/lisp/wid-edit.el      Tue Jul 23 15:20:53 2002
***************
*** 722,739 ****
                     (list type)
                   (copy-sequence type)))
         (current widget)
         (keys args))
      ;; First set the :args keyword.
      (while (cdr current)              ;Look in the type.
!       (if (keywordp (car (cdr current)))
!         (setq current (cdr (cdr current)))
        (setcdr current (list :args (cdr current)))
        (setq current nil)))
!     (while args                               ;Look in the args.
!       (if (keywordp (nth 0 args))
!         (setq args (nthcdr 2 args))
!       (widget-put widget :args args)
!       (setq args nil)))
      ;; Then Convert the widget.
      (setq type widget)
      (while type
--- 722,753 ----
                     (list type)
                   (copy-sequence type)))
         (current widget)
+        done
         (keys args))
      ;; First set the :args keyword.
      (while (cdr current)              ;Look in the type.
!       (if (and (keywordp (cadr current))
!              ;; If the last element is a keyword,
!              ;; it is still the :args element,
!              ;; even though it is a keyword.
!              (cddr current))
!         (if (eq (cadr current) :args)
!             ;; If :args is explicitly specified, obey it.
!             (setq current nil)
!           ;; Some other irrelevant keyword.
!           (setq current (cdr (cdr current))))
        (setcdr current (list :args (cdr current)))
        (setq current nil)))
!     (while (and args (not done))      ;Look in ARGS.
!       (cond ((eq (car args) :args)
!            ;; Handle explicit specification of :args.
!            (setq args (cadr args)
!                  done t))
!           ((keywordp (car args))
!            (setq args (cddr args)))
!           (t (setq done t))))
!     (when done
!       (widget-put widget :args args))
      ;; Then Convert the widget.
      (setq type widget)
      (while type




reply via email to

[Prev in Thread] Current Thread [Next in Thread]