diff lisp/gui.el @ 398:74fd4e045ea6 r21-2-29

Import from CVS: tag r21-2-29
author cvs
date Mon, 13 Aug 2007 11:13:30 +0200
parents c42ec1d1cded
children 697ef44129c6
line wrap: on
line diff
--- a/lisp/gui.el	Mon Aug 13 11:12:06 2007 +0200
+++ b/lisp/gui.el	Mon Aug 13 11:13:30 2007 +0200
@@ -64,6 +64,7 @@
 				 menubar-visible-p nil
 				 has-modeline-p nil
 				 default-toolbar-visible-p nil
+				 default-gutter-visible-p nil
 				 modeline-shadow-thickness 0
 				 left ,(+ fleft (- (/ fwidth 2)
 						   (/ (* dfwidth fontw)
@@ -82,7 +83,7 @@
   "True if OBJECT is a GUI button."
   (and (vectorp object)
        (> (length object) 0)
-       (eq 'gui-button (aref object 0))))
+       (eq 'button (aref object 0))))
 
 (make-face 'gui-button-face "Face used for gui buttons")
 (if (not (face-differs-from-default-p 'gui-button-face))
@@ -97,26 +98,15 @@
   "Make a GUI button whose label is STRING and whose action is ACTION.
 If the button is inserted in a buffer and then clicked on, and ACTION
 is non-nil, ACTION will be called with one argument, USER-DATA."
-  (vector 'gui-button
-	  (if (featurep 'xpm)
-	      (xpm-button-create
-	       string gui-button-shadow-thickness
-	       (color-instance-name (face-foreground-instance 'gui-button-face))
-	       (color-instance-name (face-background-instance 'gui-button-face)))
-	    (xbm-button-create string gui-button-shadow-thickness))
-	  action user-data))
+  (vector 'button
+	  :descriptor string
+	  :face 'gui-button-face
+	  :callback `(funcall (quote ,action) (quote ,user-data))))
 
 (defun insert-gui-button (button &optional pos buffer)
   "Insert GUI button BUTTON at POS in BUFFER."
   (check-argument-type 'gui-button-p button)
-  (let ((annotation
-	 (make-annotation (make-glyph (car (aref button 1)))
-			  pos 'text buffer nil
-			  (make-glyph (cadr (aref button 1)))))
-	(action (aref button 2)))
-    (and action
-	 (progn
-	   (set-annotation-action annotation action)
-	   (set-annotation-data annotation (aref button 3))))))
+  (make-annotation (make-glyph button)
+			       pos 'text buffer nil))
 
 ;;; gui.el ends here