[Epydoc-commits] SF.net SVN: epydoc: [1794] trunk/epydoc/src/epydoc/docwriter/dotgraph.py
Brought to you by:
edloper
|
From: <ed...@us...> - 2008-02-26 17:12:22
|
Revision: 1794
http://epydoc.svn.sourceforge.net/epydoc/?rev=1794&view=rev
Author: edloper
Date: 2008-02-26 09:12:17 -0800 (Tue, 26 Feb 2008)
Log Message:
-----------
- Changes to make graph colors user-customizable.
Modified Paths:
--------------
trunk/epydoc/src/epydoc/docwriter/dotgraph.py
Modified: trunk/epydoc/src/epydoc/docwriter/dotgraph.py
===================================================================
--- trunk/epydoc/src/epydoc/docwriter/dotgraph.py 2008-02-26 17:11:38 UTC (rev 1793)
+++ trunk/epydoc/src/epydoc/docwriter/dotgraph.py 2008-02-26 17:12:17 UTC (rev 1794)
@@ -33,15 +33,17 @@
#: so it should be left False for now.
USE_DOT2TEX = False
-# colors for graphs of APIDocs
-MODULE_BG = '#d8e8ff'
-CLASS_BG = '#d8ffe8'
-SELECTED_BG = '#ffd0d0'
-BASECLASS_BG = '#e0b0a0'
-SUBCLASS_BG = '#e0b0a0'
-UNDOCUMENTED_BG = '#c0c0c0'
-ROUTINE_BG = '#e8d0b0' # maybe?
-INH_LINK_COLOR = '#800000'
+#: colors for graphs of APIDocs
+COLOR = dict(
+ MODULE_BG = '#d8e8ff',
+ CLASS_BG = '#d8ffe8',
+ SELECTED_BG = '#ffd0d0',
+ BASECLASS_BG = '#e0b0a0',
+ SUBCLASS_BG = '#e0b0a0',
+ UNDOCUMENTED_BG = '#c0c0c0',
+ ROUTINE_BG = '#e8d0b0', # not used
+ INH_LINK = '#800000',
+ )
######################################################################
#{ Dot Graphs
@@ -500,7 +502,7 @@
- use qualifiers
"""
def __init__(self, class_doc, linker, context, collapsed=False,
- bgcolor=CLASS_BG, **options):
+ bgcolor=COLOR['CLASS_BG'], **options):
"""
Create a new `DotGraphUmlClassNode` based on the class
`class_doc`.
@@ -1059,11 +1061,11 @@
_COLOR_DIFF = 24
def _color(self, package, depth):
- if package == self.context: return SELECTED_BG
+ if package == self.context: return COLOR['SELECTED_BG']
else:
# Parse the base color.
- if re.match(MODULE_BG, 'r#[0-9a-fA-F]{6}$'):
- base = int(MODULE_BG[1:], 16)
+ if re.match(COLOR['MODULE_BG'], 'r#[0-9a-fA-F]{6}$'):
+ base = int(COLOR['MODULE_BG'][1:], 16)
else:
base = int('d8e8ff', 16)
red = (base & 0xff0000) >> 16
@@ -1354,11 +1356,11 @@
if nodetype == 'subclass':
return DotGraphUmlClassNode(
cls, linker, context, collapsed=True,
- bgcolor=SUBCLASS_BG, **options)
+ bgcolor=COLOR['SUBCLASS_BG'], **options)
elif nodetype in ('selected', 'superclass', 'undocumented'):
- if nodetype == 'selected': bgcolor = SELECTED_BG
- if nodetype == 'superclass': bgcolor = BASECLASS_BG
- if nodetype == 'undocumented': bgcolor = UNDOCUMENTED_BG
+ if nodetype == 'selected': bgcolor = COLOR['SELECTED_BG']
+ if nodetype == 'superclass': bgcolor = COLOR['BASECLASS_BG']
+ if nodetype == 'undocumented': bgcolor = COLOR['UNDOCUMENTED_BG']
return DotGraphUmlClassNode(
cls, linker, context, show_inherited_vars=False,
collapsed=False, bgcolor=bgcolor, **options)
@@ -1369,12 +1371,12 @@
if edgetype == 'subclass':
return DotGraphEdge(
start, end, dir='back', arrowtail='empty',
- headport='body', tailport='body', color=INH_LINK_COLOR,
+ headport='body', tailport='body', color=COLOR['INH_LINK'],
weight=100, style='bold')
if edgetype == 'truncate-subclass':
return DotGraphEdge(
start, end, dir='back', arrowtail='empty',
- tailport='body', color=INH_LINK_COLOR,
+ tailport='body', color=COLOR['INH_LINK'],
weight=100, style='bold')
assert 0, 'bad edgetype'
@@ -1550,13 +1552,13 @@
if (url is None and
hasattr(linker, 'docindex') and
linker.docindex.find(identifier, self.container) is None):
- node['fillcolor'] = UNDOCUMENTED_BG
+ node['fillcolor'] = COLOR['UNDOCUMENTED_BG']
node['style'] = 'filled'
if isinstance(val_doc, ModuleDoc) and dot_version >= [2]:
node['shape'] = 'plaintext'
- if val_doc == context: color = SELECTED_BG
- else: color = MODULE_BG
+ if val_doc == context: color = COLOR['SELECTED_BG']
+ else: color = COLOR['MODULE_BG']
node['tooltip'] = node['label']
node['html_label'] = MODULE_NODE_HTML % (color, color, url,
val_doc.canonical_name,
@@ -1572,7 +1574,7 @@
node['label'] = '%s()' % node['label']
node['tooltip'] = node['label']
if val_doc == context:
- node['fillcolor'] = SELECTED_BG
+ node['fillcolor'] = COLOR['SELECTED_BG']
node['style'] = 'filled,rounded,bold'
else:
@@ -1581,7 +1583,7 @@
node['height'] = 0
node['tooltip'] = node['label']
if val_doc == context:
- node['fillcolor'] = SELECTED_BG
+ node['fillcolor'] = COLOR['SELECTED_BG']
node['style'] = 'filled,bold'
def name_list(api_docs, context=None):
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|