Implemented support for "position" attributes in fields of forms of type "list" 
and "multi".
--------------------------------------------------------------------------------------------

                 Key: OFBIZ-1075
                 URL: https://issues.apache.org/jira/browse/OFBIZ-1075
             Project: OFBiz
          Issue Type: Improvement
          Components: framework
            Reporter: Jacopo Cappellato
            Priority: Minor


With the attached patch (formlist-position.patch) I've implemented support for 
"position" attributes in fields of forms of type "list" and "multi".
The main concept is that, if in a form widget definition of type 
"list"/"multi", the fields have different positions then they are rendered into 
separate rows.
The main (default) position is 1, and the column (titles) are only the ones for 
the fields in this group.
The fields in positions < 1 are rendered in rows before the main one; the 
fields in positions > 1 are rendered after.

As a proof of concept (so that you can understand how the positions can be used 
in lists), I've applied it to the currency field in the "product price list" 
form (see the patch productprice.patch and the image productprice.jpg)

To all the reviewers:
I'd like to get your comments and reviews most of all to the two main changes 
introduced by this patch:

1) in widget-form.xsd: the type of the element "position" has been changed from 
"xs:positiveInteger" to "xs:integer"
2) in the interface "FormStringRenderer": the method 
"renderFormatItemRowCellOpen" has now a new parameter (int positionSpan)

All the other changes (most of all to the ModelForm class) are just:
1) refactoring of existing methods; I have separated into different methods the 
field processing logic (eval on use-when etc) from the rendering (buffer.append 
etc..); to make the code cleaner, more flexible and easier to read
2) bug fixes (I can provide more details here, if you want)
3) added comments

What do you think?
I'm testing everything right now and I'd like to commit this stuff very soon.


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to