WidgetDict: keyword for specifying 'add row' label.

dbinger <dbinger-fVcApmY9cLvQ3/1i3zOLAti2O/[email protected]> Tue, 05 Apr 2005 08:38:30 -0400
Newsgroups gmane.comp.web.quixote.cvs
Message-ID <[email protected]>
This is a multi-part message in MIME format.
--------------090900060809090900050509
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit



--------------090900060809090900050509
Content-Type: message/rfc822;
 name="SVN: r26469 - trunk/quixote/form"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
 filename="SVN: r26469 - trunk/quixote/form"

Return-Path: <dbinger-fVcApmY9cLvQ3/1i3zOLAti2O/[email protected]>
Delivered-To: [email protected]
Received: (qmail 32074 invoked from network); 5 Apr 2005 10:26:04 -0000
Received: from monk.mems-exchange.org (132.151.8.3)
	by 0 with SMTP; 5 Apr 2005 10:26:04 -0000
Received: (qmail 27813 invoked by alias); 5 Apr 2005 10:26:04 -0000
Delivered-To: mems-exchange.org-dbinger-fVcApmY9cLvQ3/1i3zOLAti2O/[email protected]
Received: (qmail 27810 invoked by alias); 5 Apr 2005 10:26:04 -0000
Delivered-To: mems-exchange.org-mems-cvs-fVcApmY9cLvQ3/1i3zOLAti2O/[email protected]
Received: (qmail 27808 invoked from network); 5 Apr 2005 10:26:04 -0000
Received: from miles.mems-exchange.org (132.151.8.12)
	by 132.151.8.3 with SMTP; 05 Apr 2005 06:26:04 -0400
Received: from dbinger by miles.mems-exchange.org with local (Exim 3.36 #1)
	id 1DIlG0-0003Kl-00
	for mems-cvs-fVcApmY9cLvQ3/1i3zOLAti2O/[email protected]; Tue, 05 Apr 2005 06:26:04 -0400
To: mems-cvs-fVcApmY9cLvQ3/1i3zOLAti2O/[email protected]
Subject: SVN: r26469 - trunk/quixote/form
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
From: David Binger <dbinger-fVcApmY9cLvQ3/1i3zOLAti2O/[email protected]>
Message-Id: <E1DIlG0-0003Kl-00-diuEHtAPqkYJ2/[email protected]>
Date: Tue, 05 Apr 2005 06:26:04 -0400

Author: dbinger
Date: 2005-04-05 06:26:03 -0400 (Tue, 05 Apr 2005)
New Revision: 26469

Modified:
   trunk/quixote/form/__init__.py
   trunk/quixote/form/widget.py
Log:
nas: Allow the label for the 'Add row' button to be specified.  The 'Add'
part may not always make sense.  Also, add WidgetDict to
widget.__init__ and fix some comments.

Changed:
quixote/form/__init__.py
quixote/form/widget.py


Modified: trunk/quixote/form/__init__.py
===================================================================
--- trunk/quixote/form/__init__.py	2005-04-01 22:27:38 UTC (rev 26468)
+++ trunk/quixote/form/__init__.py	2005-04-05 10:26:03 UTC (rev 26469)
@@ -15,4 +15,4 @@
     SingleSelectWidget, SelectWidget, OptionSelectWidget, \
     MultipleSelectWidget, SubmitWidget, HiddenWidget, \
     FloatWidget, IntWidget, subname, WidgetValueError, CompositeWidget, \
-    WidgetList
+    WidgetList, WidgetDict

Modified: trunk/quixote/form/widget.py
===================================================================
--- trunk/quixote/form/widget.py	2005-04-01 22:27:38 UTC (rev 26468)
+++ trunk/quixote/form/widget.py	2005-04-05 10:26:03 UTC (rev 26469)
@@ -786,7 +786,7 @@
     def __init__(self, name, value=None,
                  element_type=StringWidget,
                  element_kwargs={},
-                 element_name="row", **kwargs):
+                 add_element_label="Add row", **kwargs):
         assert value is None or type(value) is list, (
             "value '%s' not a list: got %r" % (name, value))
         assert issubclass(element_type, Widget), (
@@ -822,7 +822,7 @@
             add_element()
 
         # Add submit to add more element widgets
-        self.add(SubmitWidget, 'add_element', value='Add %s' % element_name)
+        self.add(SubmitWidget, 'add_element', value=add_element_label)
         if self.get('add_element'):
             add_element()
             num_added += 1
@@ -861,8 +861,8 @@
 
 class WidgetDict(CompositeWidget):
     """A variable length dict of widgets.  There is only one
-    title and hint but each element of the list can have its own
-    error.  You can also set an error on the WidgetList itself (e.g. as a
+    title and hint but each element of the dict can have its own
+    error.  You can also set an error on the WidgetDict itself (e.g. as a
     result of higher-level processing).
 
     Instance attributes:
@@ -874,7 +874,7 @@
                  element_value_type=StringWidget,
                  element_key_kwargs={},
                  element_value_kwargs={},
-                 element_name='row', **kwargs):
+                 add_element_label='Add row', **kwargs):
         assert value is None or type(value) is dict, (
             'value %r not a dict: got %r' % (name, value))
         assert issubclass(element_key_type, Widget), (
@@ -918,7 +918,7 @@
             add_element()
 
         # Add submit to add more element widgets
-        self.add(SubmitWidget, 'add_element', value='Add %s' % element_name)
+        self.add(SubmitWidget, 'add_element', value=add_element_label)
         if self.get('add_element'):
             add_element()
             num_added += 1


--------------090900060809090900050509--