ICEfaces
  1. ICEfaces
  2. ICE-7009

Support Expandable Rows / Panel on ace:dataTable

    Details

    • Type: New Feature New Feature
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 2.1-Beta, 3.0
    • Component/s: ACE-Components
    • Labels:
      None
    • Environment:
      ICEfaces 2.1, ace:dataTable
    • Affects:
      Documentation (User Guide, Ref. Guide, etc.), Sample App./Tutorial

      Description

      Add  support  for  optionally  nesting  rows  and/or   arbitrary  components  under  "expandable" ace:dataTable  rows.

      - Expandable  dataTable  rows  would  be  supported  in  two  modes:

           1. Expanded-­‐rows  
                - Expanded-rows  would  display  more  rows  under  the  expanded   row  with  matching  columns  and  column  widths.  
                - Each  expanded-­‐row  column  cell  would  also  contain  the  same   components  as  the  rest  of  the  rows  in  the  table.  

           2. Expanded-­‐panel
                - Expanded-­‐panel  would  behave  like  a  panelCollapsible,  where expanding  the  row  would  result  in  a  "expanded-­‐panel"  being  rendered/displayed  under  the  row.
                - The  expanded  panel  could  contain  any  arbitrary  components  as  required,  including  another  dataTable,  tabSet,  etc.  


      - The  expandable  row  will  support  both  a  Server  (dynamic) and  Client (static)  rendering  mode:

           - Server  mode  would  result  in  the  expanded  content  (rows  or   panel)  not  being  rendered  on  the  server  (thus  not  in  the   component  tree)  until  the  row  is  expanded  by  the  user. When   the  row  is  expanded,  an  ajax-­‐submit  occurs  to  the  server,   which  renders  the  dataTable  and  expanded  content  and   returns  the  delta-­‐markup  to  the  client.  

           - Client  mode  would  pre-­‐render  the  expanded  content  (thus   always  in  the  component  tree).    When  the  row  is  expanded,   the  client  makes  the  pre-­‐rendered  content  visible  via   JavaScript  (without  a  server‐roundtrip).

        Issue Links

          Activity

          Hide
          Nils Lundquist added a comment -

          Dynamic row expansion operational with editing and all types of selection.

          Static pre-rendered expansions unstarted.

          Expanded rows don't keep their expanded state on server. This stops rendering expanded rows upon pagination return.

          Show
          Nils Lundquist added a comment - Dynamic row expansion operational with editing and all types of selection. Static pre-rendered expansions unstarted. Expanded rows don't keep their expanded state on server. This stops rendering expanded rows upon pagination return.
          Hide
          Nils Lundquist added a comment -

          Added support for List as 'type' of selection.
          Added support for Map<A, Map<A,Map>> as value. Wraps as TreeRootModel.

          Show
          Nils Lundquist added a comment - Added support for List as 'type' of selection. Added support for Map<A, Map<A,Map>> as value. Wraps as TreeRootModel.
          Hide
          Nils Lundquist added a comment -

          Added KB-navigability for editing & expansion controls

          Show
          Nils Lundquist added a comment - Added KB-navigability for editing & expansion controls
          Hide
          Nils Lundquist added a comment -

          Automatically added disabled state to the rows without children to expand. The disabled state implies no expansion control will render in a given row.

          Show
          Nils Lundquist added a comment - Automatically added disabled state to the rows without children to expand. The disabled state implies no expansion control will render in a given row.

            People

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

              Dates

              • Created:
                Updated:
                Resolved: