[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