anchor.diff:  ;; License along with this library; if not, write to the Free Software
   ;; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   
  -;; $Id: gdk.lisp,v 1.1 2000-08-14 16:44:39 espen Exp $
  +;; $Id: gdk.lisp,v 1.2 2000-08-23 17:32:30 espen Exp $
   
   
   (in-package "GDK")
  
positive.code: 
  ;;; Pixmaps
  
  (define-foreign pixmap-new (width height depth &key window) pixmap
    (width int)
    (height int)
    (depth int)
    (window (or null window)))
  					
  
  (define-foreign %pixmap-colormap-create-from-xpm () pixmap
    (window (or null window))
    (colormap (or null colormap))
  
negative.code:   '%event-free)
  
  (deftype-method translate-from-alien
      event (type-spec location &optional (alloc :reference))
    `(let ((location ,location))
       (unless (null-pointer-p location)
         (let ((event-class
  	      (find-event-class
  	       (funcall (get-reader-function 'event-type) location 0))))
  	 ,(ecase alloc
  	    (:copy '(ensure-alien-instance event-class location))
  	    (:static '(ensure-alien-instance event-class location :static t))
  	    (:reference '(ensure-alien-instance
  			  event-class (%event-copy location))))))))
  
  
  (define-foreign event-poll-fd () int)
  