Vadim Gritsenko wrote:

Sylvain Wallez wrote:

Now, as I mentioned already [1], I started using the generator approach
to form templates, using the implementation of "wt:" statements using
JXMacro provided by Chris [2]. And this approach is very powerful, as it
allows complex conditional form layout without requiring the
introduction of yet-another-control-structure-markup in the "wt:" namespace.


Introducing the widget states would allow these conditions to be
computed with the form's own state rather than using some separate flow
values.

So, I propose the following changes to Cocoon forms:
- add a state to widgets (enabled/disabled/hidden).



Assuming this state will be available during binding, as well as in form... +1. But, this will require some kind of "wt:" control markup anyway... Given simple example:
<table><tr><td><wt:widget-label id="x"/></td><td><wt:widget id="x"/></td></tr></table>


There is a need to disable whole table, it's not enough to take out widget only.


This is exactly why a generator approach is needed :

<jx:choose>
 <jx:when test="${currentWidget.getChild("x").isDisabled()}">
   <table>
     <tr>
       <td><wt:widget-label id="x"/></td>
       <td><wt:widget id="x"/></td>
      </tr>
   </table>
 </jx:when>
 <jx:otherwise>
   This data is currently not available.
 </jx:otherwise>
</jx:choose>

Sylvain

--
Sylvain Wallez                                  Anyware Technologies
http://www.apache.org/~sylvain           http://www.anyware-tech.com
{ XML, Java, Cocoon, OpenSource }*{ Training, Consulting, Projects }



Reply via email to