+;; (defbinding widget-set-double-buffered () nil
+;; (widget widget)
+;; (double-buffered boolean))
+
+;; (defbinding widget-set-redraw-on-allocate () nil
+;; (widget widget)
+;; (redraw-on-allocate boolean))
+
+(defbinding widget-set-scroll-adjustments () boolean
+ (widget widget)
+ (hadjustment (or null adjustment))
+ (vadjustment (or null adjustment)))
+
+(defbinding widget-mnemonic-activate () boolean
+ (widget widget)
+ (group-cycling boolean))
+
+(defbinding widget-class-find-style-property (class name) param
+ ((type-class-peek class) pointer)
+ (name string))
+
+(defbinding widget-class-list-style-properties (class)
+ (vector (copy-of param) n-properties)
+ ((type-class-peek class) pointer)
+ (n-properties unsigned-int :out))
+
+(defbinding widget-region-intersect () pointer ;gdk:region
+ (widget widget)
+ (region pointer)) ;gdk:region))
+
+(defbinding widget-send-expose () boolean
+ (widget widget)
+ (event gdk:event))
+
+(defbinding %widget-style-get-property () nil
+ (widget widget)
+ (name string)
+ (value gvalue))
+
+(defun style-property-value (widget style)
+ (let* ((name (string-downcase style))
+ (param (widget-class-find-style-property (class-of widget) name)))
+ (if (not param)
+ (error "~A has no such style property: ~A" widget style)
+ (with-gvalue (gvalue (param-value-type param))
+ (%widget-style-get-property widget (string-downcase style) gvalue)))))
+
+(defbinding widget-get-accessible () atk:object