;; Common Lisp bindings for GTK+ v2.x
-;; Copyright 2000-2005 Espen S. Johnsen <espen@users.sf.net>
+;; Copyright 2000-2006 Espen S. Johnsen <espen@users.sf.net>
;;
;; Permission is hereby granted, free of charge, to any person obtaining
;; a copy of this software and associated documentation files (the
;; TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
;; SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-;; $Id: gtkwidget.lisp,v 1.21 2006-04-10 18:42:08 espen Exp $
+;; $Id: gtkwidget.lisp,v 1.23 2006-04-26 12:11:21 espen Exp $
(in-package "GTK")
(slot-boundp widget 'name) (not (zerop (length (widget-name widget)))))
(print-unreadable-object (widget stream :type t :identity nil)
(format stream "~S at 0x~X"
- (widget-name widget) (sap-int (foreign-location widget))))
+ (widget-name widget) (pointer-address (foreign-location widget))))
(call-next-method)))
(defmethod shared-initialize ((widget widget) names &key (visible nil visible-p))
+ (declare (ignore names))
(when (and visible-p (not visible)) ; widget explicit set as not visible
(setf (user-data widget 'hidden-p) t)
(signal-connect widget 'show
(defmethod compute-signal-function ((widget widget) signal function object)
+ (declare (ignore signal))
(if (eq object :parent)
#'(lambda (&rest args)
(if (slot-boundp widget 'parent)
(defbinding widget-size-request
(widget &optional (requisition (make-instance 'requisition))) nil
(widget widget)
- (requisition requisition :return))
+ (requisition requisition :in/return))
(defbinding widget-get-child-requisition
(widget &optional (requisition (make-instance 'requisition))) nil
(widget widget)
- (requisition requisition :return))
+ (requisition requisition :in/return))
(defbinding widget-size-allocate () nil
(widget widget)
(event gdk:event))
(defun (setf widget-cursor) (cursor-type widget)
- (let ((cursor (make-instance 'gdk:cursor :type cursor-type)))
- (gdk:window-set-cursor (widget-window widget) cursor)))
+ (warn "(SETF WIDGET-CURSOR) is deprecated, use WIDGET-SET-CURSOR instead")
+ (widget-set-cursor widget cursor-type))
+
+(defun widget-set-cursor (widget cursor &rest args)
+ (gdk:window-set-cursor (widget-window widget)
+ (apply #'gdk:ensure-cursor cursor args)))
(defbinding %widget-get-parent-window () gdk:window
(widget widget))