web/formwidgets.py
changeset 10411 4ee15441f2eb
parent 10222 75d6096216d7
parent 10404 797db633d60c
child 10522 1660a0fa4f43
--- a/web/formwidgets.py	Mon Jun 22 14:15:16 2015 +0200
+++ b/web/formwidgets.py	Mon Jun 22 14:27:37 2015 +0200
@@ -400,6 +400,9 @@
 
 class TextArea(FieldWidget):
     """Simple <textarea>, will return a unicode string."""
+    _minrows = 2
+    _maxrows = 15
+    _columns = 80
 
     def _render(self, form, field, renderer):
         values, attrs = self.values_and_attributes(form, field)
@@ -413,9 +416,9 @@
         lines = value.splitlines()
         linecount = len(lines)
         for line in lines:
-            linecount += len(line) / 80
-        attrs.setdefault('cols', 80)
-        attrs.setdefault('rows', min(15, linecount + 2))
+            linecount += len(line) / self._columns
+        attrs.setdefault('cols', self._columns)
+        attrs.setdefault('rows', min(self._maxrows, linecount + self._minrows))
         return tags.textarea(value, name=field.input_name(form, self.suffix),
                              **attrs)