gzz-commits
[Top][All Lists]
Advanced

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

[Gzz-commits] gzz/gfx/demo gldemo.py xupdf.py


From: Tuomas J. Lukka
Subject: [Gzz-commits] gzz/gfx/demo gldemo.py xupdf.py
Date: Wed, 18 Sep 2002 03:20:06 -0400

CVSROOT:        /cvsroot/gzz
Module name:    gzz
Changes by:     Tuomas J. Lukka <address@hidden>        02/09/18 03:20:06

Modified files:
        gfx/demo       : gldemo.py xupdf.py 

Log message:
        Approx. right: the two zoom forms

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gfx/demo/gldemo.py.diff?tr1=1.16&tr2=1.17&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gfx/demo/xupdf.py.diff?tr1=1.3&tr2=1.4&r1=text&r2=text

Patches:
Index: gzz/gfx/demo/gldemo.py
diff -c gzz/gfx/demo/gldemo.py:1.16 gzz/gfx/demo/gldemo.py:1.17
*** gzz/gfx/demo/gldemo.py:1.16 Tue Sep 17 11:37:44 2002
--- gzz/gfx/demo/gldemo.py      Wed Sep 18 03:20:06 2002
***************
*** 204,213 ****
            currentScene.key(s)
        AbstractUpdateManager.chg()
      def mouse(self, e):
-       print currentScene
        if hasattr(currentScene, "mouse"):
            currentScene.mouse(e)
!       print "MOUSE: '%s'"%e
      def timeout(self, o):
        print str(System.currentTimeMillis()) + " TIMEOUT ",o
        currentScene.timeout(o)
--- 204,212 ----
            currentScene.key(s)
        AbstractUpdateManager.chg()
      def mouse(self, e):
        if hasattr(currentScene, "mouse"):
            currentScene.mouse(e)
!       # print "MOUSE: '%s'"%e
      def timeout(self, o):
        print str(System.currentTimeMillis()) + " TIMEOUT ",o
        currentScene.timeout(o)
Index: gzz/gfx/demo/xupdf.py
diff -c gzz/gfx/demo/xupdf.py:1.3 gzz/gfx/demo/xupdf.py:1.4
*** gzz/gfx/demo/xupdf.py:1.3   Tue Sep 17 14:20:42 2002
--- gzz/gfx/demo/xupdf.py       Wed Sep 18 03:20:06 2002
***************
*** 57,120 ****
                              0, 0,  0, 1])
      return (pap, pw, ph)
  
! pap = [
      pdfpaper(p) for p in prect
  ]
  
! def placepapers(vs, cs2, papers, key, x, y, h):
      # The height in coords
      ph = papers[0][2]
!     curx = x
      for i in range(0, len(papers)):
        cs1 = vs.coords.affineCoordsys(0, key+"_"+str(i), 10,
!               curx, y, h/ph, 0, 0, h/ph)
        curx += 1.02 * h/ph * papers[i][1]
        pq = GZZGL.createFisheyePaperQuad(
            papers[i][0], 0, 0, papers[i][1], papers[i][2], 21, 21)
        vs.map.put(pq, cs1, cs2)
        
  
! class XuPDFScene:
      def __init__(self):
!       self.x = self.y = 0
      def key(self, key):
        pass
      def mouse(self, ev):
!       print "Mousehere ",ev
        if ev.getID() == ev.MOUSE_CLICKED:
!           self.x -= ev.getX() - screensize[0]/2
            # self.y -= ev.getY() - screensize[1]/2
!           self.y = ev.getY() 
!           print "Mouse ",self.x,self.y
            AbstractUpdateManager.chg()
      def scene(self, vs):
!       putnoc(vs, background((0.3,0.5,0.4)))
!       putnoc(vs, getDListNocoords("""
!           Disable TEXTURE_2D
!           LineWidth 2
!           Color 0 0 0
!           Begin LINE_LOOP
!           Vertex 0 0
!           Vertex 0 %(h)s
!           Vertex %(w)s %(h)s
!           Vertex %(w)s 0
!           End
!           Enable TEXTURE_2D
!       """ % { "w": screensize[0], "h": screensize[1] } ) )
! 
! #     cs2 = vs.coords.affineCoordsys(0, "2", 8.5, 
! #             screensize[0]/2, 0.9 * screensize[1]/2, 100, 0,0,70)
        cs2 = vs.coords.affineCoordsys(0, "2", 9.0, 
!               screensize[0]/2, self.y, 150, 0,0, 100)
!       placepapers(vs, cs2, pap, "foo", self.x, 0, 768)
! #     for i in range(0,len(pap)):
! #         pq = GZZGL.createFisheyePaperQuad(
! #             pap[i][0], 0, 0, pap[i][1], pap[i][2], 21, 21)
! #         cs1 = vs.coords.affineCoordsys(0, "1_"+str(i), 10,
! #             self.x + 290 * i, self.y, 
! #                 200, 0, 0, 200 )
! #         vs.map.put(pq, cs1, cs2)
! 
  
! currentScene = XuPDFScene()
  
--- 57,151 ----
                              0, 0,  0, 1])
      return (pap, pw, ph)
  
! globalpap = [
      pdfpaper(p) for p in prect
  ]
  
! def placepapers(vs, cs2, papers, key, x, y, paperx, papery, h):
      # The height in coords
      ph = papers[0][2]
!     curx = x - h/ph * paperx
!     ycoord = y - h/ph * papery
!     print "x,y for place: ",curx, ycoord
      for i in range(0, len(papers)):
        cs1 = vs.coords.affineCoordsys(0, key+"_"+str(i), 10,
!               curx, ycoord, h/ph, 0, 0, h/ph)
        curx += 1.02 * h/ph * papers[i][1]
        pq = GZZGL.createFisheyePaperQuad(
            papers[i][0], 0, 0, papers[i][1], papers[i][2], 21, 21)
        vs.map.put(pq, cs1, cs2)
        
+ # Paper coordinates of current focus
+ globalx = 0
+ globaly = 0
  
! def bg(vs):
!     putnoc(vs, background((0.3,0.5,0.4)))
!     putnoc(vs, getDListNocoords("""
!       Disable TEXTURE_2D
!       LineWidth 2
!       Color 0 0 0
!       Begin LINE_LOOP
!       Vertex 0 0
!       Vertex 0 %(h)s
!       Vertex %(w)s %(h)s
!       Vertex %(w)s 0
!       End
!       Enable TEXTURE_2D
!     """ % { "w": screensize[0], "h": screensize[1] } ) )
! 
! class XuPDFScene_PDFContext:
      def __init__(self):
!       self.yheight = 100
!     def key(self, key):
!       global currentScene
!       if key == 'z':
!           currentScene = XuPDFScene_PDFZoom()
!     def mouse(self, ev):
!       global globalx, globaly
!       if ev.getID() == ev.MOUSE_CLICKED:
!           scale = 0.01
!           globalx += (ev.getX() - screensize[0]/2) * scale
!           globaly += (ev.getY() - screensize[1]/2)  * scale
!           print "Mouse ",globalx, globaly
!           AbstractUpdateManager.chg()
!     def scene(self, vs):
!       bg(vs)
!       print "Context"
!       cs2 = vs.coords.affineCoordsys(0, "2", 2, 
!               screensize[0]/2, 0.9 * screensize[1]/2, 50, 0,0,50)
! 
!       placepapers(vs, cs2, globalpap, "foo", 
!               screensize[0]/2, 0.9 * screensize[1]/2, 
!               globalx, globaly,
!               self.yheight)
!     
! 
! class XuPDFScene_PDFZoom:
      def key(self, key):
+       print "Key: ",key
+       global currentScene
+       if key == 'z':
+           currentScene = XuPDFScene_PDFContext()
        pass
      def mouse(self, ev):
!       global globalx, globaly
        if ev.getID() == ev.MOUSE_CLICKED:
!           scale = globalpap[0][2] / screensize[1]
!           globalx += (ev.getX() - screensize[0]/2) * scale
            # self.y -= ev.getY() - screensize[1]/2
!           globaly = ev.getY() * scale
!           print "Mouse ",globalx, globaly
            AbstractUpdateManager.chg()
      def scene(self, vs):
!       bg(vs)
        cs2 = vs.coords.affineCoordsys(0, "2", 9.0, 
!               screensize[0]/2, globaly / globalpap[0][2] * screensize[1], 
!                   150, 0,0, 100)
!       placepapers(vs, cs2, globalpap, "foo", screensize[0]/2, 
!               globaly / globalpap[0][2] * screensize[1], 
!                   globalx, globaly, 
!                   768)
  
! currentScene = XuPDFScene_PDFZoom()
  




reply via email to

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