ICEfaces
  1. ICEfaces
  2. ICE-8155

ace:tooltip - allow targeting of elements within iterative containers

    Details

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

      Description

      Currently used "for" doesn't allow for a tooltip to target within an itertaive container due to use of findComponent to find a single clientId as a target.

      Tooltip should be enhanced with alternative targeting modes to allow multiple targets within iterative containers possibly by using visitTree to collect IDs or by allowing explicit jQuery selectors as targets.

        Issue Links

          Activity

          Hide
          Nils Lundquist added a comment -

          Is this improvement about targeting components inside a table (or ui:repeat, etc.) from a tooltip component that is outside that table (or iterative container) ?

          This is correct.

          Show
          Nils Lundquist added a comment - Is this improvement about targeting components inside a table (or ui:repeat, etc.) from a tooltip component that is outside that table (or iterative container) ? This is correct.
          Hide
          Arturo Zambrano added a comment -

          Proposed contract for this feature:

          The tooltip component tag in the application has only one of the following attributes:
          for
          for and withinNamingContainer
          selector

          if 'for', render 'forComponent' property
          if 'for' and withinNamingContainer, render 'forComponent' as an array
          if 'selector', render 'selector' property

          If the tag has all these three attributes, then 'for' takes precedence over 'selector'.

          The client receives only one of:
          forComponent
          forComponent (array)
          selector

          if 'forComponent', escape client id and initialize tooltip
          if 'forComponent' (array), escape each client id in array, then join array and initialize tooltip
          if 'selector', use as is to initialize component

          Knowing the naming container, would allow us to use delegated events bound to the naming container root node, which would bring performance improvements in large tables.

          Show
          Arturo Zambrano added a comment - Proposed contract for this feature: The tooltip component tag in the application has only one of the following attributes: for for and withinNamingContainer selector if 'for', render 'forComponent' property if 'for' and withinNamingContainer, render 'forComponent' as an array if 'selector', render 'selector' property If the tag has all these three attributes, then 'for' takes precedence over 'selector'. The client receives only one of: forComponent forComponent (array) selector if 'forComponent', escape client id and initialize tooltip if 'forComponent' (array), escape each client id in array, then join array and initialize tooltip if 'selector', use as is to initialize component Knowing the naming container, would allow us to use delegated events bound to the naming container root node, which would bring performance improvements in large tables.
          Hide
          Arturo Zambrano added a comment -

          Committed improvement at revision 29232. Added a 'forContainer' attribute to specify the id of the iterative container.

          Show
          Arturo Zambrano added a comment - Committed improvement at revision 29232. Added a 'forContainer' attribute to specify the id of the iterative container.

            People

            • Assignee:
              Arturo Zambrano
              Reporter:
              Nils Lundquist
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: