guile-gtk-general
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: canvas coordinates in guile-gnome-platform 2.7.96


From: Jan Nieuwenhuizen
Subject: Re: canvas coordinates in guile-gnome-platform 2.7.96
Date: Mon, 24 Jan 2005 16:34:32 +0100
User-agent: Gnus/5.1003 (Gnus v5.10.3) Emacs/21.3.50 (gnu/linux)

Greg Troxel writes:

> (world-to-window *canvas* 10 20 0 0)

Try the patch below.  You should be able run this wtw.scm

    #! /bin/sh
    exec guile-gnome-0 -s $0 "$@"
    !#

    (use-modules (srfi srfi-8)
                 (gnome canvas))

    (debug-enable 'backtrace)

    (define (stderr string . rest)
      (apply format (current-error-port) string rest)
      (force-output (current-error-port)))

    (define canvas-width 300)
    (define canvas-height canvas-width)

    (define (main)
      (let ((canvas (make <gnome-canvas>)))
        (set-size-request canvas canvas-width canvas-height)

        (set-pixels-per-unit canvas 2)
        (receive (r x y)
                 (world-to-window canvas 1.0 1.0)
                 (stderr "result: ~S (~S, ~S)\n" r x y))))

    (main)

 
    $ guile-gnome-0 --debug -s wtw.scm
    result: #<unspecified> (2.0, 2.0)

Haven't committed this to GNA yet, as pulling

   tla get address@hidden/dists--dev--0 gg
   cd gg
   tla build-config -r configs/gnu.org/dev

still gets me the modules from the 2004 branch?  Should
configs/gnu.org/dev be updated?

Jan.


* looking for address@hidden/libgnomecanvas--dev--0--patch-10 to compare with
* comparing to address@hidden/libgnomecanvas--dev--0--patch-10
M  gnome/gw/canvas-spec.scm
M  examples/canvas.scm
M  ChangeLog

* modified files

--- orig/ChangeLog
+++ mod/ChangeLog
@@ -1,3 +1,13 @@
+2005-01-24  Jan Nieuwenhuizen  <address@hidden>
+
+       * examples/canvas.scm (main): Add return parameter example call
+       using receive.
+
+2005-01-23  Jan Nieuwenhuizen  <address@hidden>
+
+       * gnome/gw/canvas-spec.scm (initialize): Add return parameter
+       override for double*.
+
 2004-11-16  Jan Nieuwenhuizen  <address@hidden>
 
        * examples/canvas.scm: Add line.


--- orig/examples/canvas.scm
+++ mod/examples/canvas.scm
@@ -21,7 +21,8 @@
 ;; 59 Temple Place - Suite 330        Fax:    +1-617-542-2652
 ;; Boston, MA  02111-1307,  USA       address@hidden
 
-(use-modules (gnome gtk)
+(use-modules (srfi srfi-8)
+            (gnome gtk)
             (gnome gtk gdk-event)
             (gnome canvas))
 
@@ -117,6 +118,12 @@
     ;; (set-size-request button canvas-width 20) ?
     (set-child-packing vbox button #f #f 0 'end)
     (set-size-request canvas canvas-width canvas-height)
+
+    (set-pixels-per-unit canvas output-scale)
+    (receive (r x y)
+            (world-to-window canvas 1.0 1.0)
+            (stderr "result: ~S (~S, ~S)\n" r x y))
+    (set-pixels-per-unit canvas 1.0)
     
     (show-all window)
     (gtk-main)))


--- orig/gnome/gw/canvas-spec.scm
+++ mod/gnome/gw/canvas-spec.scm
@@ -64,4 +64,6 @@
   (next-method ws (cons #:module (cons '(gnome gw canvas) initargs)))
   (if #f
       (wrap-custom-pointer! "GnomeCanvasPoints"))
+  (add-type-alias! ws "double" 'double)
+  (add-type-rule! ws '(("double*" "*")) '(double out))
   (load-defs-with-overrides ws "gnome/defs/libgnomecanvas.defs"))





-- 
Jan Nieuwenhuizen <address@hidden> | GNU LilyPond - The music typesetter
http://www.xs4all.nl/~jantien       | http://www.lilypond.org




reply via email to

[Prev in Thread] Current Thread [Next in Thread]