[Checkins] SVN: grokui.introspector/trunk/src/grokui/introspector/code.py Use IDocString when rendering/finding docstrings.
Uli Fouquet
uli at gnufix.de
Wed Aug 13 08:32:12 EDT 2008
Log message for revision 89798:
Use IDocString when rendering/finding docstrings.
Changed:
U grokui.introspector/trunk/src/grokui/introspector/code.py
-=-
Modified: grokui.introspector/trunk/src/grokui/introspector/code.py
===================================================================
--- grokui.introspector/trunk/src/grokui/introspector/code.py 2008-08-13 12:28:49 UTC (rev 89797)
+++ grokui.introspector/trunk/src/grokui/introspector/code.py 2008-08-13 12:32:09 UTC (rev 89798)
@@ -16,6 +16,7 @@
import grok
from zope.introspector.code import Code, PackageOrModule
from zope.introspector.code import PackageInfo, FileInfo, ModuleInfo
+from zope.introspector.interfaces import IDocString
from zope.introspectorui.code import Package, File, Module
from grokui.introspector.namespace import IntrospectorLayer
from grokui.introspector.util import (get_url_with_namespaces, render_text,
@@ -36,10 +37,11 @@
grok.name('index')
grok.layer(IntrospectorLayer)
- def getDocString(self, item):
- if hasattr(item, 'getDocString'):
- return render_docstring(item.getDocString())
- return u''
+ def getDocString(self, item=None, heading_only=True):
+ if item is None:
+ item=self.context.context
+ docstring = IDocString(item).getDocString(heading_only=heading_only)
+ return render_docstring(docstring)
def url(self, *args, **kw):
result = super(GrokUIPackage, self).url(*args, **kw)
@@ -55,10 +57,11 @@
grok.name('index')
grok.layer(IntrospectorLayer)
- def getDocString(self, item):
- if hasattr(item, 'getDocString'):
- return render_docstring(item.getDocString())
- return u''
+ def getDocString(self, item=None, heading_only=True):
+ if item is None:
+ item=self.context.context
+ docstring = IDocString(item).getDocString(heading_only=heading_only)
+ return render_docstring(docstring)
def url(self, *args, **kw):
result = super(GrokUIModule, self).url(*args, **kw)
More information about the Checkins
mailing list