;; 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.30 2008/04/11 18:42:40 espen Exp $
+;; $Id: gtkwidget.lisp,v 1.32 2008/11/25 22:17:08 espen Exp $
(in-package "GTK")
(defmethod compute-signal-function ((widget widget) signal function object args)
(let ((wrapper
(if (eq object :parent)
- #'(lambda (&rest emission-args)
- (let ((all-args (nconc (rest emission-args) args)))
+ #'(lambda (widget &rest emission-args)
+ (let ((all-args (nconc emission-args args)))
(if (slot-boundp widget 'parent)
(apply function (widget-parent widget) all-args)
;; Delay until parent is set
(signal-connect widget 'parent-set
#'(lambda (old-parent)
(declare (ignore old-parent))
- (apply #'signal-emit widget signal (rest emission-args)))
+ (apply #'signal-emit widget signal emission-args))
:remove t))))
(call-next-method))))
(if *widget-display-as-default-in-signal-handler-p*
- #'(lambda (&rest args)
+ #'(lambda (widget &rest args)
(let ((display (when (slot-boundp widget 'window)
(gdk:drawable-display (widget-window widget)))))
(gdk:with-default-display (display)
- (apply wrapper args))))
+ (apply wrapper widget args))))
wrapper)))
(widget widget)
(label widget))
+#?(pkg-exists-p "gtk+-2.0" :atleast-version "2.14.0")
+(defbinding widget-get-snapshot () gdk:pixmap
+ (widget widget)
+ (clip-rect (or null gdk:rectangle)))
+
;;; Additional bindings and functions