[Checkins] SVN: z3c.form/trunk/ Implemented a new feature putting a span around the value for a display

Stephan Richter srichter at cosmos.phy.tufts.edu
Wed Jul 18 16:30:18 EDT 2007


Log message for revision 78121:
  Implemented a new feature putting a span around the value for a display 
  widget. Also tested the button field widget someone better.
  

Changed:
  U   z3c.form/trunk/CHANGES.txt
  U   z3c.form/trunk/src/z3c/form/browser/README.txt
  U   z3c.form/trunk/src/z3c/form/browser/checkbox.zcml
  U   z3c.form/trunk/src/z3c/form/browser/checkbox_display.pt
  U   z3c.form/trunk/src/z3c/form/browser/file_display.pt
  U   z3c.form/trunk/src/z3c/form/browser/orderedselect_display.pt
  U   z3c.form/trunk/src/z3c/form/browser/password_display.pt
  U   z3c.form/trunk/src/z3c/form/browser/radio_display.pt
  U   z3c.form/trunk/src/z3c/form/browser/select_display.pt
  U   z3c.form/trunk/src/z3c/form/browser/text_display.pt
  U   z3c.form/trunk/src/z3c/form/browser/textarea_display.pt
  U   z3c.form/trunk/src/z3c/form/form.txt

-=-
Modified: z3c.form/trunk/CHANGES.txt
===================================================================
--- z3c.form/trunk/CHANGES.txt	2007-07-18 18:52:35 UTC (rev 78120)
+++ z3c.form/trunk/CHANGES.txt	2007-07-18 20:30:17 UTC (rev 78121)
@@ -2,9 +2,12 @@
 CHANGES
 =======
 
-Version 1.5.0 (??/??/2007)
+Version 1.5.0 (7/18/2007)
 -------------------------
 
+- Feature: Added a span around values for widgets in display mode. This allows
+  for easier identification widget values in display mode.
+
 - Feature: Added the concept of widget events and implemented a particular
   "after widget update" event that is called right after a widget is updated.
 

Modified: z3c.form/trunk/src/z3c/form/browser/README.txt
===================================================================
--- z3c.form/trunk/src/z3c/form/browser/README.txt	2007-07-18 18:52:35 UTC (rev 78120)
+++ z3c.form/trunk/src/z3c/form/browser/README.txt	2007-07-18 20:30:17 UTC (rev 78121)
@@ -45,8 +45,10 @@
 
   >>> widget.mode = interfaces.DISPLAY_MODE
   >>> print widget.render()
-  This is
-  ASCII.
+  <span id="foo" class="textAreaWidget ascii-field">
+    This is
+   ASCII.
+  </span>
 
 
 ASCIILine
@@ -61,9 +63,10 @@
 
   >>> widget.mode = interfaces.DISPLAY_MODE
   >>> print widget.render()
-  An ASCII line.
+  <span id="foo" class="textWidget asciiline-field">
+    An ASCII line.
+  </span>
 
-
 Bool
 ----
 
@@ -88,7 +91,9 @@
 
   >>> widget.mode = interfaces.DISPLAY_MODE
   >>> print widget.render()
-  yes
+  <span id="foo" class="radioWidget bool-field">
+    <span class="selected-option">yes</span>
+  </span>
 
 For the boolean, the checkbox widget can be used as well:
 
@@ -117,8 +122,11 @@
 
   >>> widget.mode = interfaces.DISPLAY_MODE
   >>> print widget.render()
-  yes
+  <span id="foo" class="checkBoxWidget bool-field">
+    <span class="selected-option">yes</span>
+  </span>
 
+
 Button
 ------
 
@@ -136,7 +144,27 @@
          class="submitWidget button-field" value="Press me!"
          disabled="disabled" />
 
+There exists an alternative widget for the button field, the button widget. It
+is not used by default, but available for use:
 
+  >>> from z3c.form.browser.button import ButtonFieldWidget
+  >>> widget = ButtonFieldWidget(field, TestRequest())
+  >>> widget.id = "foo"
+  >>> widget.name = "bar"
+
+  >>> widget.update()
+  >>> print widget.render()
+  <input type="button" id="foo" name="bar"
+         class="buttonWidget button-field" value="Press me!" />
+
+  >>> widget.mode = interfaces.DISPLAY_MODE
+  >>> print widget.render()
+  <input type="button" id="foo" name="bar"
+         class="buttonWidget button-field" value="Press me!"
+         disabled="disabled" />
+
+
+
 Bytes
 -----
 
@@ -148,7 +176,7 @@
 
   >>> widget.mode = interfaces.DISPLAY_MODE
   >>> widget.render()
-  u'\x08%\n\x1a\n'
+  u'<span id="foo" class="fileWidget bytes-field">\n  \x08%\n\x1a\n</span>\n'
 
 
 BytesLine
@@ -163,7 +191,9 @@
 
   >>> widget.mode = interfaces.DISPLAY_MODE
   >>> print widget.render()
-  A Bytes line.
+  <span id="foo" class="textWidget bytesline-field">
+    A Bytes line.
+  </span>
 
 
 Choice
@@ -186,9 +216,10 @@
 
   >>> widget.mode = interfaces.DISPLAY_MODE
   >>> print widget.render()
-  Yes
+  <span id="foo" class="selectWidget choice-field">
+    <span class="selected-option">Yes</span>
+  </span>
 
-
 Date
 ----
 
@@ -202,7 +233,9 @@
 
   >>> widget.mode = interfaces.DISPLAY_MODE
   >>> print widget.render()
-  07/04/01
+  <span id="foo" class="textWidget date-field">
+    07/04/01
+  </span>
 
 
 Datetime
@@ -217,7 +250,9 @@
 
   >>> widget.mode = interfaces.DISPLAY_MODE
   >>> print widget.render()
-  07/04/01 12:00
+  <span id="foo" class="textWidget datetime-field">
+    07/04/01 12:00
+  </span>
 
 
 Decimal
@@ -233,7 +268,9 @@
 
   >>> widget.mode = interfaces.DISPLAY_MODE
   >>> print widget.render()
-  1,265.87
+  <span id="foo" class="textWidget decimal-field">
+    1,265.87
+  </span>
 
 
 Dict
@@ -255,7 +292,9 @@
 
   >>> widget.mode = interfaces.DISPLAY_MODE
   >>> print widget.render()
-  z3c.form
+  <span id="foo" class="textWidget dottedname-field">
+    z3c.form
+  </span>
 
 
 Float
@@ -270,7 +309,9 @@
 
   >>> widget.mode = interfaces.DISPLAY_MODE
   >>> print widget.render()
-  1,265.8
+  <span id="foo" class="textWidget float-field">
+    1,265.8
+  </span>
 
 
 FrozenSet
@@ -293,7 +334,10 @@
 
   >>> widget.mode = interfaces.DISPLAY_MODE
   >>> print widget.render()
-  1, 3
+  <span id="foo" class="selectWidget frozenset-field">
+    <span class="selected-option">1</span>,
+    <span class="selected-option">3</span>
+  </span>
 
 
 Id
@@ -308,7 +352,9 @@
 
   >>> widget.mode = interfaces.DISPLAY_MODE
   >>> print widget.render()
-  z3c.form
+  <span id="foo" class="textWidget id-field">
+    z3c.form
+  </span>
 
 
 Int
@@ -323,7 +369,9 @@
 
   >>> widget.mode = interfaces.DISPLAY_MODE
   >>> print widget.render()
-  1,200
+  <span id="foo" class="textWidget int-field">
+    1,200
+  </span>
 
 
 List
@@ -383,7 +431,10 @@
 
   >>> widget.mode = interfaces.DISPLAY_MODE
   >>> print widget.render()
-  1, 3
+  <span id="foo" class="list-field">
+    <span class="selected-option">1</span>,
+    <span class="selected-option">3</span>
+  </span>
 
 
 Object
@@ -405,7 +456,9 @@
 
   >>> widget.mode = interfaces.DISPLAY_MODE
   >>> print widget.render()
-  mypwd
+  <span id="foo" class="passwordWidget password-field">
+    mypwd
+  </span>
 
 
 Set
@@ -428,7 +481,10 @@
 
   >>> widget.mode = interfaces.DISPLAY_MODE
   >>> print widget.render()
-  1, 3
+  <span id="foo" class="selectWidget set-field">
+    <span class="selected-option">1</span>,
+    <span class="selected-option">3</span>
+  </span>
 
 
 SourceText
@@ -443,7 +499,9 @@
 
   >>> widget.mode = interfaces.DISPLAY_MODE
   >>> print widget.render()
-  &lt;source /&gt;
+  <span id="foo" class="textAreaWidget sourcetext-field">
+    &lt;source /&gt;
+  </span>
 
 
 Text
@@ -458,8 +516,10 @@
 
   >>> widget.mode = interfaces.DISPLAY_MODE
   >>> print widget.render()
-  Some
-  Text.
+  <span id="foo" class="textAreaWidget text-field">
+    Some
+    Text.
+  </span>
 
 
 TextLine
@@ -474,7 +534,9 @@
 
   >>> widget.mode = interfaces.DISPLAY_MODE
   >>> print widget.render()
-  Some Text line.
+  <span id="foo" class="textWidget textline-field">
+    Some Text line.
+  </span>
 
 
 Time
@@ -489,7 +551,9 @@
 
   >>> widget.mode = interfaces.DISPLAY_MODE
   >>> print widget.render()
-  12:00
+  <span id="foo" class="textWidget time-field">
+    12:00
+  </span>
 
 
 Timedelta
@@ -504,7 +568,9 @@
 
   >>> widget.mode = interfaces.DISPLAY_MODE
   >>> print widget.render()
-  3 days, 0:00:00
+  <span id="foo" class="textWidget timedelta-field">
+    3 days, 0:00:00
+  </span>
 
 
 Tuple
@@ -564,7 +630,10 @@
 
   >>> widget.mode = interfaces.DISPLAY_MODE
   >>> print widget.render()
-  1, 3
+  <span id="foo" class="tuple-field">
+    <span class="selected-option">1</span>,
+    <span class="selected-option">3</span>
+  </span>
 
 
 URI
@@ -579,4 +648,6 @@
 
   >>> widget.mode = interfaces.DISPLAY_MODE
   >>> print widget.render()
-  http://zope.org
+  <span id="foo" class="textWidget uri-field">
+    http://zope.org
+  </span>

Modified: z3c.form/trunk/src/z3c/form/browser/checkbox.zcml
===================================================================
--- z3c.form/trunk/src/z3c/form/browser/checkbox.zcml	2007-07-18 18:52:35 UTC (rev 78120)
+++ z3c.form/trunk/src/z3c/form/browser/checkbox.zcml	2007-07-18 20:30:17 UTC (rev 78121)
@@ -3,13 +3,13 @@
     xmlns:z3c="http://namespaces.zope.org/z3c"
     i18n_domain="z3c.form">
 
-  <!-- Note: the CheckBoxFieldWidget isn't registered by default 
-       If you like to use checkboxes you need to use them as custom widget 
+  <!-- Note: the CheckBoxFieldWidget isn't registered by default
+       If you like to use checkboxes you need to use them as custom widget
        factories directly in a form.
-       
+
        Because there is no need for a checkbox since we use select options
        for all kind of Set and ordered list widgets where the order is relevant.
-       
+
        Note: if you use List or Tuple of Choises, you get need a ordered widget
        if order doesn't matter, you should use a Set of Choice and you will
        get a multi select widget. -->

Modified: z3c.form/trunk/src/z3c/form/browser/checkbox_display.pt
===================================================================
--- z3c.form/trunk/src/z3c/form/browser/checkbox_display.pt	2007-07-18 18:52:35 UTC (rev 78120)
+++ z3c.form/trunk/src/z3c/form/browser/checkbox_display.pt	2007-07-18 20:30:17 UTC (rev 78121)
@@ -1,4 +1,21 @@
-<tal:block tal:repeat="value view/displayValue"
-  ><tal:block replace="value"
-  /><tal:block condition="not:repeat/value/end">, </tal:block
-></tal:block>
+<span id="" class=""
+      tal:attributes="id view/id;
+                      class view/klass;
+                      title view/title;
+                      lang view/lang;
+                      onclick view/onclick;
+                      ondblclick view/ondblclick;
+                      onmousedown view/onmousedown;
+                      onmouseup view/onmouseup;
+                      onmouseover view/onmouseover;
+                      onmousemove view/onmousemove;
+                      onmouseout view/onmouseout;
+                      onkeypress view/onkeypress;
+                      onkeydown view/onkeydown;
+                      onkeyup view/onkeyup">
+  <tal:block tal:repeat="value view/displayValue"
+    ><span class="selected-option"
+           tal:content="value"
+    /><tal:block condition="not:repeat/value/end">, </tal:block
+  ></tal:block>
+</span>

Modified: z3c.form/trunk/src/z3c/form/browser/file_display.pt
===================================================================
--- z3c.form/trunk/src/z3c/form/browser/file_display.pt	2007-07-18 18:52:35 UTC (rev 78120)
+++ z3c.form/trunk/src/z3c/form/browser/file_display.pt	2007-07-18 20:30:17 UTC (rev 78121)
@@ -1 +1,17 @@
-<tal:block condition="view/value" content="view/value" />
+<span id="" class=""
+      tal:attributes="id view/id;
+                      class view/klass;
+                      title view/title;
+                      lang view/lang;
+                      onclick view/onclick;
+                      ondblclick view/ondblclick;
+                      onmousedown view/onmousedown;
+                      onmouseup view/onmouseup;
+                      onmouseover view/onmouseover;
+                      onmousemove view/onmousemove;
+                      onmouseout view/onmouseout;
+                      onkeypress view/onkeypress;
+                      onkeydown view/onkeydown;
+                      onkeyup view/onkeyup">
+  <tal:block condition="view/value" content="view/value" />
+</span>

Modified: z3c.form/trunk/src/z3c/form/browser/orderedselect_display.pt
===================================================================
--- z3c.form/trunk/src/z3c/form/browser/orderedselect_display.pt	2007-07-18 18:52:35 UTC (rev 78120)
+++ z3c.form/trunk/src/z3c/form/browser/orderedselect_display.pt	2007-07-18 20:30:17 UTC (rev 78121)
@@ -1,4 +1,21 @@
-<tal:block tal:repeat="value view/displayValue"
-  ><tal:block replace="value"
-  /><tal:block condition="not:repeat/value/end">, </tal:block
-></tal:block>
+<span id="" class=""
+      tal:attributes="id view/id;
+                      class view/klass;
+                      title view/title;
+                      lang view/lang;
+                      onclick view/onclick;
+                      ondblclick view/ondblclick;
+                      onmousedown view/onmousedown;
+                      onmouseup view/onmouseup;
+                      onmouseover view/onmouseover;
+                      onmousemove view/onmousemove;
+                      onmouseout view/onmouseout;
+                      onkeypress view/onkeypress;
+                      onkeydown view/onkeydown;
+                      onkeyup view/onkeyup">
+  <tal:block tal:repeat="value view/displayValue"
+    ><span class="selected-option"
+           tal:content="value"
+    /><tal:block condition="not:repeat/value/end">, </tal:block
+  ></tal:block>
+</span>

Modified: z3c.form/trunk/src/z3c/form/browser/password_display.pt
===================================================================
--- z3c.form/trunk/src/z3c/form/browser/password_display.pt	2007-07-18 18:52:35 UTC (rev 78120)
+++ z3c.form/trunk/src/z3c/form/browser/password_display.pt	2007-07-18 20:30:17 UTC (rev 78121)
@@ -1 +1,17 @@
-<tal:block condition="view/value" content="view/value" />
+<span id="" class=""
+      tal:attributes="id view/id;
+                      class view/klass;
+                      title view/title;
+                      lang view/lang;
+                      onclick view/onclick;
+                      ondblclick view/ondblclick;
+                      onmousedown view/onmousedown;
+                      onmouseup view/onmouseup;
+                      onmouseover view/onmouseover;
+                      onmousemove view/onmousemove;
+                      onmouseout view/onmouseout;
+                      onkeypress view/onkeypress;
+                      onkeydown view/onkeydown;
+                      onkeyup view/onkeyup">
+  <tal:block condition="view/value" content="view/value" />
+</span>

Modified: z3c.form/trunk/src/z3c/form/browser/radio_display.pt
===================================================================
--- z3c.form/trunk/src/z3c/form/browser/radio_display.pt	2007-07-18 18:52:35 UTC (rev 78120)
+++ z3c.form/trunk/src/z3c/form/browser/radio_display.pt	2007-07-18 20:30:17 UTC (rev 78121)
@@ -1,4 +1,21 @@
-<tal:block tal:repeat="value view/displayValue"
-  ><tal:block replace="value"
-  /><tal:block condition="not:repeat/value/end">, </tal:block
-></tal:block>
+<span id="" class=""
+      tal:attributes="id view/id;
+                      class view/klass;
+                      title view/title;
+                      lang view/lang;
+                      onclick view/onclick;
+                      ondblclick view/ondblclick;
+                      onmousedown view/onmousedown;
+                      onmouseup view/onmouseup;
+                      onmouseover view/onmouseover;
+                      onmousemove view/onmousemove;
+                      onmouseout view/onmouseout;
+                      onkeypress view/onkeypress;
+                      onkeydown view/onkeydown;
+                      onkeyup view/onkeyup">
+  <tal:block tal:repeat="value view/displayValue"
+    ><span class="selected-option"
+           tal:content="value"
+    /><tal:block condition="not:repeat/value/end">, </tal:block
+  ></tal:block>
+</span>

Modified: z3c.form/trunk/src/z3c/form/browser/select_display.pt
===================================================================
--- z3c.form/trunk/src/z3c/form/browser/select_display.pt	2007-07-18 18:52:35 UTC (rev 78120)
+++ z3c.form/trunk/src/z3c/form/browser/select_display.pt	2007-07-18 20:30:17 UTC (rev 78121)
@@ -1,4 +1,21 @@
-<tal:block tal:repeat="value view/displayValue"
-  ><tal:block replace="value"
-  /><tal:block condition="not:repeat/value/end">, </tal:block
-></tal:block>
+<span id="" class=""
+      tal:attributes="id view/id;
+                      class view/klass;
+                      title view/title;
+                      lang view/lang;
+                      onclick view/onclick;
+                      ondblclick view/ondblclick;
+                      onmousedown view/onmousedown;
+                      onmouseup view/onmouseup;
+                      onmouseover view/onmouseover;
+                      onmousemove view/onmousemove;
+                      onmouseout view/onmouseout;
+                      onkeypress view/onkeypress;
+                      onkeydown view/onkeydown;
+                      onkeyup view/onkeyup">
+  <tal:block tal:repeat="value view/displayValue"
+    ><span class="selected-option"
+           tal:content="value"
+    /><tal:block condition="not:repeat/value/end">, </tal:block
+  ></tal:block>
+</span>

Modified: z3c.form/trunk/src/z3c/form/browser/text_display.pt
===================================================================
--- z3c.form/trunk/src/z3c/form/browser/text_display.pt	2007-07-18 18:52:35 UTC (rev 78120)
+++ z3c.form/trunk/src/z3c/form/browser/text_display.pt	2007-07-18 20:30:17 UTC (rev 78121)
@@ -1 +1,17 @@
-<tal:block condition="view/value" content="view/value" />
\ No newline at end of file
+<span id="" class=""
+      tal:attributes="id view/id;
+                      class view/klass;
+                      title view/title;
+                      lang view/lang;
+                      onclick view/onclick;
+                      ondblclick view/ondblclick;
+                      onmousedown view/onmousedown;
+                      onmouseup view/onmouseup;
+                      onmouseover view/onmouseover;
+                      onmousemove view/onmousemove;
+                      onmouseout view/onmouseout;
+                      onkeypress view/onkeypress;
+                      onkeydown view/onkeydown;
+                      onkeyup view/onkeyup">
+  <tal:block condition="view/value" content="view/value" />
+</span>

Modified: z3c.form/trunk/src/z3c/form/browser/textarea_display.pt
===================================================================
--- z3c.form/trunk/src/z3c/form/browser/textarea_display.pt	2007-07-18 18:52:35 UTC (rev 78120)
+++ z3c.form/trunk/src/z3c/form/browser/textarea_display.pt	2007-07-18 20:30:17 UTC (rev 78121)
@@ -1 +1,17 @@
-<tal:block condition="view/value" content="view/value" />
+<span id="" class=""
+      tal:attributes="id view/id;
+                      class view/klass;
+                      title view/title;
+                      lang view/lang;
+                      onclick view/onclick;
+                      ondblclick view/ondblclick;
+                      onmousedown view/onmousedown;
+                      onmouseup view/onmouseup;
+                      onmouseover view/onmouseover;
+                      onmousemove view/onmousemove;
+                      onmouseout view/onmouseout;
+                      onkeypress view/onkeypress;
+                      onkeydown view/onkeydown;
+                      onkeyup view/onkeyup">
+  <tal:block condition="view/value" content="view/value" />
+</span>

Modified: z3c.form/trunk/src/z3c/form/form.txt
===================================================================
--- z3c.form/trunk/src/z3c/form/form.txt	2007-07-18 18:52:35 UTC (rev 78120)
+++ z3c.form/trunk/src/z3c/form/form.txt	2007-07-18 20:30:17 UTC (rev 78121)
@@ -689,7 +689,9 @@
       <form action=".">
         <div class="row">
             <label for="form-widgets-id">ID</label>
-            srichter
+            <span id="form-widgets-id" class="textWidget textline-field">
+              srichter
+            </span>
         </div>
         <div class="row">
           <label for="form-widgets-name">Full Name</label>
@@ -753,7 +755,9 @@
       <form action=".">
         <div class="row">
             <label for="form-widgets-id">ID</label>
-            srichter
+            <span id="form-widgets-id" class="textWidget textline-field">
+              srichter
+            </span>
         </div>
         <div class="row">
           <label for="form-widgets-name">Full Name</label>
@@ -903,7 +907,9 @@
       <form action=".">
         <div class="row">
           <label for="form-widgets-id">ID</label>
-          rineichen
+          <span id="form-widgets-id" class="textWidget textline-field">
+            rineichen
+          </span>
         </div>
         <div class="row">
           <label for="form-widgets-name">Full Name</label>
@@ -975,16 +981,25 @@
   <html>
     <body>
       <div class="row">
-        srichter
+        <span id="form-widgets-id" class="textWidget textline-field">
+          srichter
+        </span>
       </div>
       <div class="row">
-        Claudia Richter
+        <span id="form-widgets-name" class="textWidget textline-field">
+          Claudia Richter
+        </span>
       </div>
       <div class="row">
-        female
+        <span id="form-widgets-gender"
+              class="selectWidget choice-field">
+          <span class="selected-option">female</span>
+        </span>
       </div>
       <div class="row">
-        27
+        <span id="form-widgets-age" class="textWidget int-field">
+          27
+        </span>
       </div>
     </body>
   </html>



More information about the Checkins mailing list