[pypy-svn] r5959 - pypy/trunk/src/pypy/translator/tool/pygame

arigo at codespeak.net arigo at codespeak.net
Sat Aug 14 15:02:35 CEST 2004


Author: arigo
Date: Sat Aug 14 15:02:35 2004
New Revision: 5959

Modified:
   pypy/trunk/src/pypy/translator/tool/pygame/drawgraph.py
   pypy/trunk/src/pypy/translator/tool/pygame/graphviewer.py
Log:
Minor tweaks.


Modified: pypy/trunk/src/pypy/translator/tool/pygame/drawgraph.py
==============================================================================
--- pypy/trunk/src/pypy/translator/tool/pygame/drawgraph.py	(original)
+++ pypy/trunk/src/pypy/translator/tool/pygame/drawgraph.py	Sat Aug 14 15:02:35 2004
@@ -124,8 +124,8 @@
 
 class GraphRenderer:
     MARGIN = 0.2
-    SCALEMIN = 25
-    SCALEMAX = 90
+    SCALEMIN = 30
+    SCALEMAX = 100
     FONTCACHE = {}
     
     def __init__(self, screen, graphlayout, scale=75):
@@ -144,7 +144,7 @@
         self.width = int((w + 2*self.MARGIN)*scale)
         self.height = int((h + 2*self.MARGIN)*scale)
         self.bboxh = h
-        size = int(14 * scale / 75)
+        size = max(4, int(15 * (scale-10) / 75))
         if size in self.FONTCACHE:
             self.font = self.FONTCACHE[size]
         else:

Modified: pypy/trunk/src/pypy/translator/tool/pygame/graphviewer.py
==============================================================================
--- pypy/trunk/src/pypy/translator/tool/pygame/graphviewer.py	(original)
+++ pypy/trunk/src/pypy/translator/tool/pygame/graphviewer.py	Sat Aug 14 15:02:35 2004
@@ -37,11 +37,18 @@
         graphs = [self.translator.getflowgraph(func) for func in functions]
         layout = build_layout(graphs)
         self.viewer = GraphRenderer(self.screen, layout, self.SCALE)
-        # center horizonally
-        self.viewer.setoffset((self.viewer.width - self.width) // 2, 0)
+        # center and scale to view the whole graph
+        self.viewer.setoffset((self.viewer.width - self.width) // 2,
+                              (self.viewer.height - self.height) // 2)
+        f = min(float(self.width-40) / self.viewer.width,
+                float(self.height-40) / self.viewer.height)
+        if f < 1.0:
+            self.viewer.shiftscale(f)
         self.sethighlight()
         self.statusbarinfo = None
         self.must_redraw = True
+        self.setstatusbar('Drag left mouse button to scroll; '
+                          'drag right mouse button to zoom')
 
     def setstatusbar(self, text, fgcolor=(255,255,80), bgcolor=(128,0,0)):
         info = (text, fgcolor, bgcolor)
@@ -141,7 +148,7 @@
     from pypy.translator.translator import Translator
     from pypy.translator.test import snippet
     
-    t = Translator(snippet.poor_man_range)
+    t = Translator(snippet.powerset)
     t.simplify()
     a = t.annotate([int])
     a.simplify()



More information about the Pypy-commit mailing list