anchor.diff:  		     :initarg :label-text-style
                        :accessor gadget-label-text-style)))
   
  +(defmethod compose-space ((pane labelled-gadget))
  +  (with-sheet-medium (medium pane)
  +    (multiple-value-bind (width height)
  +	(text-size medium (gadget-label pane)
  +		   :text-style (gadget-label-text-style pane))
  +      ;; FIXME remove explicit values
  +      ;; instead use spacer pane in derived classes
  +      (let ((tw (* 1.3 width))
  +	    (th (* 2.5 height)))
  +	(make-space-requirement :width tw :height th
  +				:max-width tw :max-height th
  +				:min-width tw :min-height th)))))
  +
   (defclass labelled-gadget-mixin (labelled-gadget)
     ;; Try to be compatible with Lispworks' CLIM.
     ())
  
positive.code: ;; PUSH-BUTTON gadget
  ;;
  
  (defclass push-button (action-gadget labelled-gadget-mixin) ())
    
  (defclass push-button-pane  (push-button)
    ((show-as-default-p :type (member '(t nil))
  
negative.code: (defun gadgetp (object)
    (typep object 'gadget))
  
  ;;
  ;; gadget's colors
  ;;
  