[reportlab-users] decimal and/or dot-leader tabs
    Glenn Linderman 
    v+python at g.nevcal.com
       
    Sun Sep 11 20:44:59 EDT 2011
    
    
  
On 9/11/2011 12:40 AM, Glenn Linderman wrote:
> I have a need to generate a PDF with either a decimal tab, or a 
> dot-leader. (I get to choose whichever one is easier to implement!)
>
> I found the discussion thread here which is similar to my question....
> http://permalink.gmane.org/gmane.comp.python.reportlab.user/5567
>
> However, it is not clear to me if, or how, this can be integrated into 
> platypus as a flowable.  Can it be?  Or is there a better solution 
> that I haven't found yet?
>
> Hmm. 
> http://two.pairlist.net/pipermail/reportlab-users/2011-April/010011.html 
> is pretty recent, and indicates that it doesn't.
>
> http://comments.gmane.org/gmane.comp.python.reportlab.user/5563 
> implies there might be something that might happen, but the lack of 
> followup postings isn't encouraging.
>
> Aha, discovered the "Table of Contents" flowable in the userguide.  
> That'll get me going, for now.  It isn't as general as multiple tabs 
> like the first discussion thread mentioned, and I'd prefer a decimal 
> tab, and three columns would be better, but the TOC style will do for now.
So the example code in the userguide says it is a fully working example, 
but actually, it is missing a definition of "delta".  That was easily 
cured, but is a bug in the docs.
Then the docs also say:
> Entries to the table of contents can be done either manually by 
> calling the addEntry method on the TableOfContents object or 
> automatically by sending a 'TOCEntry' notification in the
> afterFlowable method of the DocTemplate you are using. 
Since I don't really understand flowables and their data structures, and 
certainly not multiBuild and its implications, and since I know all the 
TableOfContents data before doing the layout, I thought calling addEntry 
manually would be easier... but it doesn't work to just call addEntry 
when building the story list... I just get the placeholder text.
Looking at platypus/tableofcontents.py source code, I see that 
"beforeBuild" clears the _entries after copying them to _lastEntries, 
and isSatisfied checks to see if _entries and _lastentries have the same 
count, but I have  no idea how or when these methods are called, having 
not yet figured out how flowables work.
However, it would seem that the case of manually calling addEntry 
doesn't work properly, which would seem to be a code bug, or else a 
severe misunderstanding of the documentation.  I tried both build and 
multiBuild just in case, but it would seem that the multiBuild should 
work even if it is overkill, but both produce only placeholder entries 
for TableOfContents :(
Does anyone have a working example of a TableOfContents built with addEntry?
I'll work up a failing sample next, I guess, since this is blocking 
progress.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://two.pairlist.net/pipermail/reportlab-users/attachments/20110911/49634cc5/attachment.html>
    
    
More information about the reportlab-users
mailing list