ICEfaces
  1. ICEfaces
  2. ICE-7822

New ace:list, ace:listControl components

    Details

    • Type: New Feature New Feature
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 3.1.0.BETA1, 3.1
    • Component/s: ACE-Components
    • Labels:
      None
    • Environment:
      ICEfaces 3, ACE Components
    • Assignee Priority:
      P1
    • Affects:
      Documentation (User Guide, Ref. Guide, etc.), Sample App./Tutorial

      Description

      Add a new ace:orderedList component with the following features:

      - Optional buttons for ordering within the list (Move selected items Up, Down, Top, Bottom) for the source and destination list.
      - Optional drag and drop support for moving selected items within the list
      - Support for using simple list (selectItems strings) and optionally compound list row contents via facet (can contain any contents desired).

        Issue Links

          Activity

          Ken Fyten created issue -
          Ken Fyten made changes -
          Field Original Value New Value
          Salesforce Case []
          Fix Version/s 3.1 [ 10312 ]
          Affects [Documentation (User Guide, Ref. Guide, etc.), Sample App./Tutorial]
          Ken Fyten made changes -
          Link This issue blocks ICE-7821 [ ICE-7821 ]
          Ken Fyten made changes -
          Salesforce Case []
          Assignee Priority P1
          Assignee Nils Lundquist [ nils.lundquist ]
          Nils Lundquist made changes -
          Status Open [ 1 ] In Progress [ 3 ]
          Hide
          Nils Lundquist added a comment - - edited

          Issues have been encountered due to deriving UIData without maintaining the expectation of iterative children being contained within UIColumn derived children. Solutions are under investigation.
          --------------------
          Ultimately derived by UISeries which has been designed to work around this limitation.

          Show
          Nils Lundquist added a comment - - edited Issues have been encountered due to deriving UIData without maintaining the expectation of iterative children being contained within UIColumn derived children. Solutions are under investigation. -------------------- Ultimately derived by UISeries which has been designed to work around this limitation.
          Repository Revision Date User Message
          ICEsoft Public SVN Repository #28804 Tue Apr 24 15:34:42 MDT 2012 nils.lundquist ICE-7822 - Initial commit of ace:list & ace:listControl components, and showcase examples thereof.
          Files Changed
          Commit graph ADD /icefaces3/trunk/icefaces/ace/component/resources/icefaces.ace/list/list.css
          Commit graph ADD /icefaces3/trunk/icefaces/ace/component/resources/icefaces.ace/json/json2.js
          Commit graph ADD /icefaces3/trunk/icefaces/samples/showcase/showcase/src/main/webapp/resources/examples/ace/list/listBlock.xhtml
          Commit graph ADD /icefaces3/trunk/icefaces/samples/showcase/showcase/src/main/java/org/icefaces/samples/showcase/example/ace/list/ListDragBean.java
          Commit graph ADD /icefaces3/trunk/icefaces/samples/showcase/showcase/src/main/webapp/resources/examples/ace/list/listDual.xhtml
          Commit graph ADD /icefaces3/trunk/icefaces/samples/showcase/showcase/src/main/java/org/icefaces/samples/showcase/example/ace/list/ListMultiBean.java
          Commit graph ADD /icefaces3/trunk/icefaces/samples/showcase/showcase/src/main/java/org/icefaces/samples/showcase/example/ace/list
          Commit graph ADD /icefaces3/trunk/icefaces/samples/showcase/showcase/src/main/webapp/resources/examples/ace/list/list.xhtml
          Commit graph ADD /icefaces3/trunk/icefaces/ace/component/src/org/icefaces/ace/component/listcontrol
          Commit graph MODIFY /icefaces3/trunk/icefaces/samples/showcase/showcase/src/main/java/org/icefaces/samples/showcase/dataGenerators/utilityClasses/DataTableData.java
          Commit graph ADD /icefaces3/trunk/icefaces/samples/showcase/showcase/src/main/java/org/icefaces/samples/showcase/example/ace/list/ListReorderBean.java
          Commit graph ADD /icefaces3/trunk/icefaces/ace/component/src/org/icefaces/ace/component/listcontrol/ListControlRenderer.java
          Commit graph MODIFY /icefaces3/trunk/icefaces/samples/showcase/showcase/src/main/java/org/icefaces/samples/showcase/view/navigation/AceMenu.java
          Commit graph ADD /icefaces3/trunk/icefaces/ace/component/src/org/icefaces/ace/component/list/ImmigrationRecord.java
          Commit graph ADD /icefaces3/trunk/icefaces/samples/showcase/showcase/src/main/webapp/resources/examples/ace/list
          Commit graph ADD /icefaces3/trunk/icefaces/samples/showcase/showcase/src/main/webapp/resources/examples/ace/list/listSelection.xhtml
          Commit graph ADD /icefaces3/trunk/icefaces/samples/showcase/showcase/src/main/java/org/icefaces/samples/showcase/example/ace/list/ListBean.java
          Commit graph ADD /icefaces3/trunk/icefaces/samples/showcase/showcase/src/main/java/org/icefaces/samples/showcase/example/ace/list/ListBlockBean.java
          Commit graph ADD /icefaces3/trunk/icefaces/ace/component/resources/icefaces.ace/json
          Commit graph ADD /icefaces3/trunk/icefaces/samples/showcase/showcase/src/main/java/org/icefaces/samples/showcase/example/ace/duallist/DualListControlBean.java
          Commit graph ADD /icefaces3/trunk/icefaces/samples/showcase/showcase/src/main/webapp/resources/examples/ace/list/listMulti.xhtml
          Commit graph ADD /icefaces3/trunk/icefaces/samples/showcase/showcase/src/main/java/org/icefaces/samples/showcase/example/ace/duallist
          Commit graph ADD /icefaces3/trunk/icefaces/samples/showcase/showcase/src/main/webapp/resources/examples/ace/list/listReorder.xhtml
          Commit graph MODIFY /icefaces3/trunk/icefaces/ace/component/build.xml
          Commit graph ADD /icefaces3/trunk/icefaces/ace/component/src/org/icefaces/ace/component/listcontrol/ListControlMeta.java
          Commit graph ADD /icefaces3/trunk/icefaces/samples/showcase/showcase/src/main/webapp/resources/examples/ace/list/listDrag.xhtml
          Commit graph MODIFY /icefaces3/trunk/icefaces/samples/showcase/showcase/src/main/resources/org/icefaces/samples/showcase/view/resources/messages.properties
          Commit graph ADD /icefaces3/trunk/icefaces/samples/showcase/showcase/src/main/java/org/icefaces/samples/showcase/example/ace/list/ListSelectionBean.java
          Commit graph ADD /icefaces3/trunk/icefaces/ace/component/resources/icefaces.ace/listcontrol
          Commit graph ADD /icefaces3/trunk/icefaces/ace/component/src/org/icefaces/ace/component/list/ListDecoder.java
          Commit graph ADD /icefaces3/trunk/icefaces/ace/component/src/org/icefaces/ace/component/list/ACEList.java
          Commit graph ADD /icefaces3/trunk/icefaces/ace/component/src/org/icefaces/ace/component/list/ListRenderer.java
          Commit graph ADD /icefaces3/trunk/icefaces/ace/component/resources/icefaces.ace/list/list.js
          Commit graph ADD /icefaces3/trunk/icefaces/ace/component/resources/icefaces.ace/listcontrol/listcontrol.js
          Commit graph ADD /icefaces3/trunk/icefaces/ace/component/src/org/icefaces/ace/event/ListSelectEvent.java
          Commit graph ADD /icefaces3/trunk/icefaces/samples/showcase/showcase/src/main/java/org/icefaces/samples/showcase/example/ace/list/ListDualBean.java
          Commit graph ADD /icefaces3/trunk/icefaces/ace/component/resources/icefaces.ace/list
          Commit graph ADD /icefaces3/trunk/icefaces/ace/component/src/org/icefaces/ace/component/listcontrol/ListControl.java
          Commit graph ADD /icefaces3/trunk/icefaces/ace/component/src/org/icefaces/ace/component/list
          Commit graph ADD /icefaces3/trunk/icefaces/ace/component/src/org/icefaces/ace/component/list/ListMeta.java
          Commit graph ADD /icefaces3/trunk/icefaces/ace/component/resources/icefaces.ace/listcontrol/listcontrol.css
          Repository Revision Date User Message
          ICEsoft Public SVN Repository #28807 Tue Apr 24 16:40:48 MDT 2012 nils.lundquist ICE-7822 - ace:list ajax behavior additions and showcase examples demonstrating them.
          Files Changed
          Commit graph MODIFY /icefaces3/trunk/icefaces/samples/showcase/showcase/src/main/webapp/resources/examples/ace/list/listDual.xhtml
          Commit graph MODIFY /icefaces3/trunk/icefaces/ace/component/src/org/icefaces/ace/component/list/ListRenderer.java
          Commit graph MODIFY /icefaces3/trunk/icefaces/samples/showcase/showcase/src/main/webapp/resources/examples/ace/list/listSelection.xhtml
          Commit graph MODIFY /icefaces3/trunk/icefaces/ace/component/resources/icefaces.ace/list/list.js
          Commit graph MODIFY /icefaces3/trunk/icefaces/samples/showcase/showcase/src/main/webapp/resources/examples/ace/list/listDrag.xhtml
          Commit graph MODIFY /icefaces3/trunk/icefaces/samples/showcase/showcase/src/main/webapp/resources/examples/ace/list/listReorder.xhtml
          Commit graph MODIFY /icefaces3/trunk/icefaces/ace/component/src/org/icefaces/ace/component/list/ListMeta.java
          Repository Revision Date User Message
          ICEsoft Public SVN Repository #28808 Wed Apr 25 10:45:23 MDT 2012 nils.lundquist ICE-7822 - Added mutually exclusive selection to n-list case.
          Files Changed
          Commit graph MODIFY /icefaces3/trunk/icefaces/samples/showcase/showcase/src/main/webapp/resources/examples/ace/list/listSelection.xhtml
          Commit graph MODIFY /icefaces3/trunk/icefaces/ace/component/resources/icefaces.ace/list/list.js
          Commit graph MODIFY /icefaces3/trunk/icefaces/ace/component/resources/icefaces.ace/listcontrol/listcontrol.js
          Commit graph MODIFY /icefaces3/trunk/icefaces/samples/showcase/showcase/src/main/webapp/resources/examples/ace/list/listReorder.xhtml
          Repository Revision Date User Message
          ICEsoft Public SVN Repository #28825 Thu Apr 26 09:46:35 MDT 2012 nils.lundquist ICE-7822 - Added reduced height of blocks in showcase example to prevent default theme gradient size error.
          Files Changed
          Commit graph MODIFY /icefaces3/trunk/icefaces/samples/showcase/showcase/src/main/webapp/resources/examples/ace/list/list.xhtml
          Hide
          Nils Lundquist added a comment -

          Revision #28804
          Committed by nils.lundquist
          12-04-24 3:34 PM
          ICE-7822 - Initial commit of ace:list & ace:listControl components, and showcase examples thereof.

          Show
          Nils Lundquist added a comment - Revision #28804 Committed by nils.lundquist 12-04-24 3:34 PM ICE-7822 - Initial commit of ace:list & ace:listControl components, and showcase examples thereof.
          Nils Lundquist made changes -
          Status In Progress [ 3 ] Resolved [ 5 ]
          Resolution Fixed [ 1 ]
          Repository Revision Date User Message
          ICEsoft Public SVN Repository #28835 Thu Apr 26 13:18:28 MDT 2012 nils.lundquist ICE-7822 - Added default scrolling if list contents exceed box size.
          Files Changed
          Commit graph MODIFY /icefaces3/trunk/icefaces/ace/component/resources/icefaces.ace/list/list.css
          Repository Revision Date User Message
          ICEsoft Public SVN Repository #28839 Thu Apr 26 15:03:50 MDT 2012 nils.lundquist ICE-7822 - Completed List / ListControl TLD.
          Files Changed
          Commit graph MODIFY /icefaces3/trunk/icefaces/ace/component/src/org/icefaces/ace/event/ListSelectEvent.java
          Commit graph MODIFY /icefaces3/trunk/icefaces/ace/component/src/org/icefaces/ace/component/list/ListDecoder.java
          Commit graph MODIFY /icefaces3/trunk/icefaces/ace/component/src/org/icefaces/ace/component/list/ListMeta.java
          Commit graph MODIFY /icefaces3/trunk/icefaces/ace/component/src/org/icefaces/ace/component/listcontrol/ListControlMeta.java
          Ken Fyten made changes -
          Summary New ace:orderedList component New ace:list, ace:listControl components
          Salesforce Case []
          Repository Revision Date User Message
          ICEsoft Public SVN Repository #28859 Fri Apr 27 09:13:38 MDT 2012 nils.lundquist ICE-7822 - Altered showcase example style to show scrolling behaviour (multiList) and equal sized inline lists (dragging).
          Files Changed
          Commit graph MODIFY /icefaces3/trunk/icefaces/samples/showcase/showcase/src/main/webapp/resources/examples/ace/list/listDrag.xhtml
          Commit graph MODIFY /icefaces3/trunk/icefaces/samples/showcase/showcase/src/main/webapp/resources/examples/ace/list/listMulti.xhtml
          Hide
          Nils Lundquist added a comment -

          The development of this component was hampered by problems including:

          • UIData dependency on child column components
          • Attempted to solve by having a custom list of children that would mask an implicit column child in some situations
          • Attempted to inject column child into hierarchy in TagHandler event
          • Investigated complete override of TagHandler / Composite Component
          • Settled on UISeries implementation that is an overriden UIData meant to work without UIColumns
          • Difficulties in addressing the items
          • Have to use indexes despite reordering and new item introduction
          • Planning client-side / server-side interaction between features
          • Need to adjust item index values through list of reorderings to record pre-reorder indexes so that feature decoding can be performed in-order on the server
          • For the client side to be able to migrate items between lists it needs to be sure on the server the operations are performed in the same order (JSF decodes as a tree, this would require alot of effort), or objects addressed uniquely, since neither is possible without further supporting code, migrations must visit the server.
          • Investigated multiple drag jQuery component modification
          • JSF ids need to stay in place, however the underlying JQuery component moves them.
          • Elements need their IDs dynamically updated on the client to preserve the layout of the JSF ids. If the JSF ids are moved DOM diffed updates may update unexpected regions of the page, as the client DOM no longer is addressed similarly to the server dom.
          Show
          Nils Lundquist added a comment - The development of this component was hampered by problems including: UIData dependency on child column components Attempted to solve by having a custom list of children that would mask an implicit column child in some situations Attempted to inject column child into hierarchy in TagHandler event Investigated complete override of TagHandler / Composite Component Settled on UISeries implementation that is an overriden UIData meant to work without UIColumns Difficulties in addressing the items Have to use indexes despite reordering and new item introduction Planning client-side / server-side interaction between features Need to adjust item index values through list of reorderings to record pre-reorder indexes so that feature decoding can be performed in-order on the server For the client side to be able to migrate items between lists it needs to be sure on the server the operations are performed in the same order (JSF decodes as a tree, this would require alot of effort), or objects addressed uniquely, since neither is possible without further supporting code, migrations must visit the server. Investigated multiple drag jQuery component modification JSF ids need to stay in place, however the underlying JQuery component moves them. Elements need their IDs dynamically updated on the client to preserve the layout of the JSF ids. If the JSF ids are moved DOM diffed updates may update unexpected regions of the page, as the client DOM no longer is addressed similarly to the server dom.
          Repository Revision Date User Message
          ICEsoft Public SVN Repository #28888 Mon Apr 30 11:14:33 MDT 2012 nils.lundquist ICE-7822 - Missing calls to send un-reordered IDs when writing migration messages.
          Files Changed
          Commit graph MODIFY /icefaces3/trunk/icefaces/ace/component/resources/icefaces.ace/list/list.js
          Commit graph MODIFY /icefaces3/trunk/icefaces/ace/component/resources/icefaces.ace/listcontrol/listcontrol.js
          Hide
          Ken Fyten added a comment -

          As of svn rev # 28960 the multi-list demos on showcase no longer function. You can't move the selected items between lists.

          Show
          Ken Fyten added a comment - As of svn rev # 28960 the multi-list demos on showcase no longer function. You can't move the selected items between lists.
          Ken Fyten made changes -
          Resolution Fixed [ 1 ]
          Status Resolved [ 5 ] Reopened [ 4 ]
          Hide
          Nils Lundquist added a comment -

          Revision #28968
          Committed by nils.lundquist
          2 minutes ago
          ICE-7895 - Fixed regression to ListControl component due change to on instead of live. Problem was due to change in definition of event.currentTarget.

          Show
          Nils Lundquist added a comment - Revision #28968 Committed by nils.lundquist 2 minutes ago ICE-7895 - Fixed regression to ListControl component due change to on instead of live. Problem was due to change in definition of event.currentTarget.
          Nils Lundquist made changes -
          Status Reopened [ 4 ] Resolved [ 5 ]
          Resolution Fixed [ 1 ]
          Ken Fyten made changes -
          Fix Version/s 3.1.0.BETA1 [ 10335 ]
          Repository Revision Date User Message
          ICEsoft Public SVN Repository #28990 Thu May 10 11:09:52 MDT 2012 nils.lundquist ICE-7822 - Added missing call to CoreRenderer.decodeBehaviours to process ace:ajax listeners.
          Files Changed
          Commit graph MODIFY /icefaces3/trunk/icefaces/ace/component/src/org/icefaces/ace/component/list/ListRenderer.java
          Repository Revision Date User Message
          ICEsoft Public SVN Repository #28992 Thu May 10 11:40:49 MDT 2012 nils.lundquist ICE-7822 - Call 'move' client behaviour event during drag and drop reorderings as well as using the buttons to reorder, for consistency.
          Files Changed
          Commit graph MODIFY /icefaces3/trunk/icefaces/ace/component/resources/icefaces.ace/list/list.js
          Repository Revision Date User Message
          ICEsoft Public SVN Repository #29067 Wed May 16 13:55:12 MDT 2012 nils.lundquist ICE-7822 - Added missing MandatoryResourceComponent annotation
          ICE-8065 - Added missing MandatoryResourceComponent annotation
          Files Changed
          Commit graph MODIFY /icefaces3/trunk/icefaces/ace/component/src/org/icefaces/ace/component/chart/ChartMeta.java
          Commit graph MODIFY /icefaces3/trunk/icefaces/ace/component/src/org/icefaces/ace/component/list/ListMeta.java
          Commit graph MODIFY /icefaces3/trunk/icefaces/ace/component/src/org/icefaces/ace/component/listcontrol/ListControlMeta.java
          Repository Revision Date User Message
          ICEsoft Public SVN Repository #29225 Mon May 28 16:28:26 MDT 2012 nils.lundquist ICE-7822 / ICE-7895 - Delegate undelegated .live() listener that had been converted to .on().
          Files Changed
          Commit graph MODIFY /icefaces3/trunk/icefaces/ace/component/resources/icefaces.ace/list/list.js
          Ken Fyten made changes -
          Status Resolved [ 5 ] Closed [ 6 ]

            People

            • Assignee:
              Nils Lundquist
              Reporter:
              Ken Fyten
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: