dabo Commit
Revision 5188
Date: 2009-04-21 17:47:58 -0700 (Tue, 21 Apr 2009)
Author: Paul
Trac: http://trac.dabodev.com/changeset/5188

Changed:
U   branches/paul_reporting/dabo/lib/caselessDict.py
U   branches/paul_reporting/dabo/lib/reportWriter.py

Log:
This commit makes my invoice report print correctly again (once I 
changed some expressions to refer to TotalHeight instead of Height).


Diff:
Modified: branches/paul_reporting/dabo/lib/caselessDict.py
===================================================================
--- branches/paul_reporting/dabo/lib/caselessDict.py    2009-04-21 21:41:01 UTC 
(rev 5187)
+++ branches/paul_reporting/dabo/lib/caselessDict.py    2009-04-22 00:47:58 UTC 
(rev 5188)
@@ -24,7 +24,7 @@
                return dict.__getitem__(self, key.lower())
 
        def __delitem__(self, key):
-               dict.__delitem__(self, key)
+               dict.__delitem__(self, key.lower())
                del(self._OriginalCase[key.lower()])
 
        def __contains__(self, key):

Modified: branches/paul_reporting/dabo/lib/reportWriter.py
===================================================================
--- branches/paul_reporting/dabo/lib/reportWriter.py    2009-04-21 21:41:01 UTC 
(rev 5187)
+++ branches/paul_reporting/dabo/lib/reportWriter.py    2009-04-22 00:47:58 UTC 
(rev 5188)
@@ -700,6 +700,7 @@
        """Represents a frameset."""
        def initAvailableProps(self):
                super(Frameset, self).initAvailableProps()
+
                self.AvailableProps["FrameId"] = toPropDict(str, None, 
                                """(to remove)""")
 
@@ -1041,7 +1042,7 @@
                                                printStory.append((p, p_height))
                                                printStoryHeight += p_height
                                neededHeight = printStoryHeight + padTop + 
padBottom
-       
+
                        if vAnchor == "top":
                                y = y - neededHeight
                        elif vAnchor == "middle":
@@ -1290,7 +1291,7 @@
                                        objNeededHeight += p_height
                                        story.append((p, p_height))
 
-                       neededHeight = objNeededHeight + padTop + padBottom
+               neededHeight = objNeededHeight + padTop + padBottom
                return story, neededHeight
 
 
@@ -1486,10 +1487,15 @@
                        self.ReportForm.Bands[band] = CaselessDict()
 
                        bandHeight = self.getBandHeight(bandDict)
-                       print "bandHeight:", bandHeight
+                       if not deferred:
+                               y -= bandHeight
 
                        width = pageWidth - ml - mr
 
+                       # Set this property as quickly as possible as other 
properties (y, for example)
+                       # could depend on it.
+                       self.ReportForm.Bands[band]["Height"] = bandHeight
+
                        def getTotalBandHeight():
                                maxBandHeight = bandHeight
                                if deferred:
@@ -1499,7 +1505,10 @@
                                else:
                                        for obj in bandDict.get("Objects", []):
                                                if obj.getProp("Height") is 
None:
-                                                       needed = 
self.getStory(obj)[1] + bandHeight - self.getPt(obj.getProp("y"))
+                                                       story = 
self.getStory(obj)
+                                                       storyheight = story[1]
+                                                       needed = storyheight + 
bandHeight - self.getPt(obj.getProp("y"))  ## y could be dep. on band height.
+                       
                                                        maxBandHeight = 
max(maxBandHeight, needed)
                                availableHeight = y - (pageFooterOrigin[1] + 
pfHeight)
                                if maxBandHeight > availableHeight:
@@ -1507,10 +1516,7 @@
                                return maxBandHeight
 
                        maxBandHeight = getTotalBandHeight()
-                       if not deferred:
-                               y -= bandHeight
 
-
                        if band in ("groupHeader", "groupFooter", "detail"):
                                extraHeight = 0
                                if band == "groupHeader":
@@ -1556,7 +1562,6 @@
                        self.ReportForm.Bands[band]["x"] = x
                        self.ReportForm.Bands[band]["y"] = y
                        self.ReportForm.Bands[band]["Width"] = width
-                       self.ReportForm.Bands[band]["Height"] = bandHeight
                        self.ReportForm.Bands[band]["TotalHeight"] = 
maxBandHeight      
 
                        if self.ShowBandOutlines:



_______________________________________________
Post Messages to: [email protected]
Subscription Maintenance: http://leafe.com/mailman/listinfo/dabo-dev
Searchable Archives: http://leafe.com/archives/search/dabo-dev
This message: 
http://leafe.com/archives/byMID/[email protected]

Reply via email to