You are viewing a plain text version of this content. The canonical link for it is here.
Posted to general@gump.apache.org by aj...@apache.org on 2004/04/19 17:47:05 UTC

cvs commit: gump/python/gump/document/forrest documenter.py

ajack       2004/04/19 08:47:05

  Modified:    python/gump/document/forrest documenter.py
  Log:
  Playing w/ a crude SVG. [still some bugs to work out.]
  
  Revision  Changes    Path
  1.6       +31 -9     gump/python/gump/document/forrest/documenter.py
  
  Index: documenter.py
  ===================================================================
  RCS file: /home/cvs/gump/python/gump/document/forrest/documenter.py,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- documenter.py	16 Apr 2004 17:28:42 -0000	1.5
  +++ documenter.py	19 Apr 2004 15:47:05 -0000	1.6
  @@ -1516,6 +1516,12 @@
                   'This project has existed in this failed state for a significant duration.')
           
           statsTable=statsSection.createTable()           
  +        
  +        # Generate an SVG for FOG:
  +        (pngFile,pngTitle) = self.documentFOG(project)
  +        if pngFile:
  +            statsTable.createEntry('FOG Factor').createData().createIcon(pngFile,pngTitle)
  +            
           statsTable.createEntry("FOG Factor: ", '%02.2f' % stats.getFOGFactor())
           statsTable.createEntry('Dependency Depth: ', project.getDependencyDepth())        
           statsTable.createEntry('Total Dependency Depth: ', project.getTotalDependencyDepth())        
  @@ -2188,6 +2194,26 @@
           fdocument.serialize()
           fdocument=None
               
  +    def documentFOG(self,object,base=None):
  +    
  +        stats = object.getStats()
  +        name=object.getName()
  +        if not base: base=object
  +    
  +        #
  +        # Generate an SVG: 'FOG'
  +        #
  +        if stats.successes+stats.failures+stats.prereqs > 0:
  +            svgFile=self.resolver.getFile(base,name+'_FOG','.svg')
  +            pngFile=os.path.basename(svgFile).replace('.svg','.png')
  +            from gump.svg.scale import ScaleDiagram
  +            diagram=ScaleDiagram([stats.successes,stats.prereqs,stats.failures])
  +            diagram.generateDiagram().serializeToFile(svgFile)
  +            
  +            return (pngFile, 'FOG Factor')
  +            
  +        return (None, None)
  +                
       #####################################################################           
       #
       # Helper Methods
  @@ -2614,15 +2640,11 @@
               fogRow.createData(pstats.prereqs)
               fogRow.createData('%02.2f' % pstats.getFOGFactor())
               
  -            # Generate an SVG:
  -            # ,'FOG'
  -            if pstats.successes+pstats.failures+pstats.prereqs > 0:
  -                svgFile=self.resolver.getFile(stats,project.getName()+'_FOG','.svg')
  -                pngFile=os.path.basename(svgFile).replace('.svg','.png')
  -                from gump.svg.scale import ScaleDiagram
  -                diagram=ScaleDiagram([pstats.successes,pstats.prereqs,pstats.failures])
  -                diagram.generateDiagram().serializeToFile(svgFile)
  -                fogRow.createData().createIcon(pngFile,'FOG Factor')
  +            
  +            # Generate an SVG for FOG:
  +            (pngFile,pngTitle) = self.documentFOG(project,stats)
  +            if pngFile:
  +                fogRow.createData().createIcon(pngFile,pngTitle)
               else:
                   fogRow.createData('Not Available')    
                   
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: general-unsubscribe@gump.apache.org
For additional commands, e-mail: general-help@gump.apache.org