[Zope3-checkins] SVN: Zope3/trunk/src/zope/app/form/browser/source.py refactor somewhat to separate term rendering from the rest of rendering

Fred L. Drake, Jr. fdrake at gmail.com
Thu Jul 14 17:23:47 EDT 2005


Log message for revision 33324:
  refactor somewhat to separate term rendering from the rest of rendering
  the widget
  

Changed:
  U   Zope3/trunk/src/zope/app/form/browser/source.py

-=-
Modified: Zope3/trunk/src/zope/app/form/browser/source.py
===================================================================
--- Zope3/trunk/src/zope/app/form/browser/source.py	2005-07-14 21:04:25 UTC (rev 33323)
+++ Zope3/trunk/src/zope/app/form/browser/source.py	2005-07-14 21:23:47 UTC (rev 33324)
@@ -68,10 +68,16 @@
                 value = self._translate(_("SourceDisplayWidget-invalid",
                                           default="Invalid value"))
             else:
-                value = xml.sax.saxutils.escape(term.title)
+                value = self.renderTermForDisplay(term)
 
         return value
 
+    def renderTermForDisplay(self, term):
+        # Provide a rendering of `term` for display; this is not for
+        # use when generating a select list.
+        return xml.sax.saxutils.escape(term.title)
+
+
 class SourceSequenceDisplayWidget(SourceDisplayWidget):
 
     def __call__(self):
@@ -93,7 +99,7 @@
                 value = self._translate(_("SourceDisplayWidget-invalid",
                                           default="Invalid value"))
             else:
-                value = xml.sax.saxutils.escape(term.title)
+                value = self.renderTermForDisplay(term)
 
             result.append(value)
 
@@ -217,7 +223,7 @@
                               )
                 result.append('    </div>')
                 result.append('    <div class="field">')
-                result.append(u'     ' + xml.sax.saxutils.escape(term.title))
+                result.append(u'     ' + self.renderTermForDisplay(term))
                 result.append('    </div>')
                 result.append('  </div>')
                 result.append('  <input type="hidden" name="%s" value="%s">'
@@ -265,6 +271,11 @@
                apply)
             )
 
+    def renderTermForDisplay(self, term):
+        # Provide a rendering of `term` for display; this is not for
+        # use when generating a select list.
+        return xml.sax.saxutils.escape(term.title)
+
     required = property(lambda self: self.context.required)
 
     def getInputValue(self):
@@ -409,7 +420,7 @@
                         ' value="%s">'
                         % (self.name, cgi.escape(term.token))
                         )
-                    result.append('  ' + xml.sax.saxutils.escape(term.title))
+                    result.append('  ' + self.renderTermForDisplay(term))
                     result.append(
                         '  <input type="hidden" name="%s:list" value="%s">'
                         % (self.name, cgi.escape(term.token)))



More information about the Zope3-Checkins mailing list