gtk: The return value from draw signal handlers is ignored.
authorMatt Birkholz <matt@birkholz.chandler.az.us>
Thu, 30 Aug 2012 19:04:08 +0000 (12:04 -0700)
committerMatt Birkholz <matt@birkholz.chandler.az.us>
Thu, 30 Aug 2012 19:04:08 +0000 (12:04 -0700)
Also fixed a missing argument to gtk_adjustment_set_lower, and tried
to make peek-gtk-adjustment more helpful.

doc/gtk/gtk.texinfo
src/gtk/fix-layout.scm
src/gtk/gtk-widget.scm

index 1cc206037388ee1501bd39a65d3b334d5b25ef99..7dec4120bbdd8ad1bbb33410ec3a063b3ad1b9af 100644 (file)
@@ -962,9 +962,6 @@ closure, else it cannot be GCed.
 @deffn Procedure set-gtk-widget-draw-callback! widget callback
 Arranges for @var{callback} to be applied to @var{widget} and a cairo
 context clipped to the area to be re-drawn.
-@var{Callback} should return @code{#t} or @code{#f} to indicate
-whether the @code{"draw"} signal has been handled(?), else a warning
-is issued.
 @end deffn
 
 @deffn Procedure set-gtk-widget-event-callback! widget callback
index 17717b5db889ee41a3a15087bdc8aeb81b46e822..fc3b123c1836a3cba3d8c9a9498d7c10b0c65a61 100644 (file)
@@ -416,8 +416,7 @@ USA.
                            (C-call "cairo_restore" cr))))
                    (fix-drawing-display-list drawing)))
                (%trace2 ";draw area "x","y" "w"x"h
-                        " of "layout" (no drawing!).\n"))
-           #t)))))
+                        " of "layout" (no drawing!).\n")))))))
 
 (define (set-fix-layout-scroll-size! widget width height)
   ;; Tells WIDGET to adjust its scrollable extent.  Notifies any
@@ -713,8 +712,7 @@ USA.
     (C-call "gtk_render_handle" style cr
            0. 0.
            (->flonum (fix-rect-width geom))
-           (->flonum (fix-rect-height geom)))
-    #t))
+           (->flonum (fix-rect-height geom)))))
 
 (define (resizer-enter-handler resizer)
   (%trace ";resizer-enter-handler\n")
index dc43c6dc693b0659def0704bf91caa96976160e8..3cf96294c99c3600104747c6db93d9927b4e2703 100644 (file)
@@ -57,14 +57,14 @@ USA.
          (old-step-incr (f->e (C-call "gtk_adjustment_get_step_increment" alien)))
          (old-page-incr (f->e (C-call "gtk_adjustment_get_page_increment" alien))))
       (if (not (int:= new-lower old-lower))
-         (C-call "gtk_adjustment_set_lower" (->flonum new-lower)))
+         (C-call "gtk_adjustment_set_lower" alien (->flonum new-lower)))
       (if (not (int:= new-upper old-upper))
          (C-call "gtk_adjustment_set_upper" alien (->flonum new-upper)))
       (if (not (int:= new-value old-value))
          (C-call "gtk_adjustment_set_value" alien (->flonum new-value)))
       (if (not (int:= new-page-size old-page-size))
-         (C-call "gtk_adjustment_set_page_size"
-                 alien (->flonum new-page-size)))
+         (C-call "gtk_adjustment_set_page_size" alien (->flonum
+                                                       new-page-size)))
       (if (not (int:= new-step-incr old-step-incr))
          (C-call "gtk_adjustment_set_step_increment"
                  alien (->flonum new-step-incr)))
@@ -82,13 +82,14 @@ USA.
 
 (define (peek-gtk-adjustment adjustment)
   ;; For debugging...
-  (list
-   (C-call "gtk_adjustment_get_lower" adjustment)
-   (C-call "gtk_adjustment_get_upper" adjustment)
-   (C-call "gtk_adjustment_get_value" adjustment)
-   (C-call "gtk_adjustment_get_page_size" adjustment)
-   (C-call "gtk_adjustment_get_step_increment" adjustment)
-   (C-call "gtk_adjustment_get_page_increment" adjustment)))
+  (let ((alien (gobject-alien adjustment)))
+    (list
+     'lower (C-call "gtk_adjustment_get_lower" alien)
+     'upper (C-call "gtk_adjustment_get_upper" alien)
+     'value (C-call "gtk_adjustment_get_value" alien)
+     'page-size (C-call "gtk_adjustment_get_page_size" alien)
+     'step-increment (C-call "gtk_adjustment_get_step_increment" alien)
+     'page-increment (C-call "gtk_adjustment_get_page_increment" alien))))
 \f
 ;;; GtkWidgets
 
@@ -242,11 +243,9 @@ USA.
 
 (define (make-draw-callback callback)
   (named-lambda (draw-callback widget cr)
-    (let ((handled? (callback widget cr)))
-      (cond ((eq? handled? #t) 1)
-           ((eq? handled? #f) 0)
-           (else (warn "Draw callback not boolean:" callback)
-                 0)))))
+    (callback widget cr)
+    ;; This is ignored in _gtk_widget_draw_internal:
+    1))
 
 (define (set-gtk-widget-event-callback! widget callback)
   (guarantee-gtk-widget widget 'set-gtk-widget-event-callback!)