;; From GdkAppLaunchContext

(define-property display
  (of-object "GdkAppLaunchContext")
  (prop-type "GParamObject")
  (docs "Display")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

;; From GdkDragContext

;; From GdkDisplay

(define-signal opened
  (of-object "GdkDisplay")
  (return-type "void")
  (when "last")
)

(define-signal closed
  (of-object "GdkDisplay")
  (return-type "void")
  (when "last")
  (parameters
    '("gboolean" "p0")
  )
)

;; From GdkDisplayManager

(define-signal display-opened
  (of-object "GdkDisplayManager")
  (return-type "void")
  (when "last")
  (parameters
    '("GdkDisplay*" "p0")
  )
)

(define-property default-display
  (of-object "GdkDisplayManager")
  (prop-type "GParamObject")
  (docs "The default display for GDK")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

;; From GdkPixbuf

(define-property colorspace
  (of-object "GdkPixbuf")
  (prop-type "GParamEnum")
  (docs "The colorspace in which the samples are interpreted")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

(define-property n-channels
  (of-object "GdkPixbuf")
  (prop-type "GParamInt")
  (docs "The number of samples per pixel")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

(define-property has-alpha
  (of-object "GdkPixbuf")
  (prop-type "GParamBoolean")
  (docs "Whether the pixbuf has an alpha channel")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

(define-property bits-per-sample
  (of-object "GdkPixbuf")
  (prop-type "GParamInt")
  (docs "The number of bits per sample")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

(define-property width
  (of-object "GdkPixbuf")
  (prop-type "GParamInt")
  (docs "The number of columns of the pixbuf")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

(define-property height
  (of-object "GdkPixbuf")
  (prop-type "GParamInt")
  (docs "The number of rows of the pixbuf")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

(define-property rowstride
  (of-object "GdkPixbuf")
  (prop-type "GParamInt")
  (docs "The number of bytes between the start of a row and the start of the next row")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

(define-property pixels
  (of-object "GdkPixbuf")
  (prop-type "GParamPointer")
  (docs "A pointer to the pixel data of the pixbuf")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

(define-property pixel-bytes
  (of-object "GdkPixbuf")
  (prop-type "GParamBoxed")
  (docs "Readonly pixel data")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

;; From GdkPixbufAnimation

;; From GdkPixbufLoader

(define-signal closed
  (of-object "GdkPixbufLoader")
  (return-type "void")
  (when "last")
)

(define-signal size-prepared
  (of-object "GdkPixbufLoader")
  (return-type "void")
  (when "last")
  (parameters
    '("gint" "p0")
    '("gint" "p1")
  )
)

(define-signal area-prepared
  (of-object "GdkPixbufLoader")
  (return-type "void")
  (when "last")
)

(define-signal area-updated
  (of-object "GdkPixbufLoader")
  (return-type "void")
  (when "last")
  (parameters
    '("gint" "p0")
    '("gint" "p1")
    '("gint" "p2")
    '("gint" "p3")
  )
)

;; GdkRGBA is neither a GObject nor a GInterface. Not checked for signals and properties.

;; From GdkScreen

(define-signal composited-changed
  (of-object "GdkScreen")
  (return-type "void")
  (when "last")
)

(define-signal size-changed
  (of-object "GdkScreen")
  (return-type "void")
  (when "last")
)

(define-signal monitors-changed
  (of-object "GdkScreen")
  (return-type "void")
  (when "last")
)

(define-property font-options
  (of-object "GdkScreen")
  (prop-type "GParamPointer")
  (docs "The default font options for the screen")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

(define-property resolution
  (of-object "GdkScreen")
  (prop-type "GParamDouble")
  (docs "The resolution for fonts on the screen")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

;; From GdkVisual

;; From GdkWindow

(define-signal pick-embedded-child
  (of-object "GdkWindow")
  (return-type "GdkWindow*")
  (when "last")
  (parameters
    '("gdouble" "p0")
    '("gdouble" "p1")
  )
)

(define-signal to-embedder
  (of-object "GdkWindow")
  (return-type "void")
  (when "last")
  (parameters
    '("gdouble" "p0")
    '("gdouble" "p1")
    '("gpointer" "p2")
    '("gpointer" "p3")
  )
)

(define-signal from-embedder
  (of-object "GdkWindow")
  (return-type "void")
  (when "last")
  (parameters
    '("gdouble" "p0")
    '("gdouble" "p1")
    '("gpointer" "p2")
    '("gpointer" "p3")
  )
)

(define-signal create-surface
  (of-object "GdkWindow")
  (return-type "CairoSurface*")
  (when "last")
  (parameters
    '("gint" "p0")
    '("gint" "p1")
  )
)

(define-property cursor
  (of-object "GdkWindow")
  (prop-type "GParamObject")
  (docs "Cursor")
  (readable #t)
  (writable #t)
  (construct-only #f)
)

;; From GdkGLContext

(define-property display
  (of-object "GdkGLContext")
  (prop-type "GParamObject")
  (docs "The GDK display used to create the GL context")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

(define-property window
  (of-object "GdkGLContext")
  (prop-type "GParamObject")
  (docs "The GDK window bound to the GL context")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

(define-property shared-context
  (of-object "GdkGLContext")
  (prop-type "GParamObject")
  (docs "The GL context this context shares data with")
  (readable #t)
  (writable #t)
  (construct-only #t)
)

