[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] Changes to emacs/lisp/button.el
From: |
Miles Bader |
Subject: |
[Emacs-diffs] Changes to emacs/lisp/button.el |
Date: |
Wed, 02 Mar 2005 04:12:57 -0500 |
Index: emacs/lisp/button.el
diff -c emacs/lisp/button.el:1.15 emacs/lisp/button.el:1.16
*** emacs/lisp/button.el:1.15 Sat Feb 19 13:26:00 2005
--- emacs/lisp/button.el Wed Mar 2 09:12:54 2005
***************
*** 1,6 ****
;;; button.el --- clickable buttons
;;
! ;; Copyright (C) 2001 Free Software Foundation, Inc.
;;
;; Author: Miles Bader <address@hidden>
;; Keywords: extensions
--- 1,6 ----
;;; button.el --- clickable buttons
;;
! ;; Copyright (C) 2001, 2005 Free Software Foundation, Inc.
;;
;; Author: Miles Bader <address@hidden>
;; Keywords: extensions
***************
*** 298,321 ****
`make-text-button'.
Also see `insert-text-button'."
! (let (prop val)
! (while properties
! (setq prop (pop properties))
! (setq val (pop properties))
! ;; Note that all the following code is basically equivalent to
! ;; `button-put', but we can do it much more efficiently since we
! ;; already have BEG and END.
! (cond ((memq prop '(type :type))
! ;; We translate a `type' property into a `category'
! ;; property, since that's what's actually used by
! ;; text-properties for inheritance.
! (setq prop 'category)
! (setq val (button-category-symbol val)))
! ((eq prop 'category)
! ;; Disallow setting the `category' property directly.
! (error "Button `category' property may not be set directly")))
! ;; Add the property.
! (put-text-property beg end prop val)))
;; Return something that can be used to get at the button.
beg)
--- 298,320 ----
`make-text-button'.
Also see `insert-text-button'."
! (let ((type-entry
! (or (plist-member properties 'type)
! (plist-member properties :type))))
! ;; Disallow setting the `category' property directly.
! (when (plist-get properties 'category)
! (error "Button `category' property may not be set directly"))
! (if (null type-entry)
! ;; The user didn't specify a `type' property, use the default.
! (setq properties (cons 'category (cons 'default-button properties)))
! ;; The user did specify a `type' property. Translate it into a
! ;; `category' property, which is what's actually used by
! ;; text-properties for inheritance.
! (setcar type-entry 'category)
! (setcar (cdr type-entry)
! (button-category-symbol (car (cdr type-entry))))))
! ;; Now add all the text properties at once
! (add-text-properties beg end properties)
;; Return something that can be used to get at the button.
beg)
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] Changes to emacs/lisp/button.el,
Miles Bader <=