Package org.apache.tapestry5.services

## Interface ClientBehaviorSupport

- All Known Implementing Classes:
    `ClientBehaviorSupportImpl`

      public interface ClientBehaviorSupport

  Deprecated.
  Deprecated in 5.4 with no replacement. Use `JavaScriptSupport` directly, instead.
  Collects details about zone usage for efficient initialization of the client side objects. This has grown to include the client-side behavior associated with `FormFragment`s. This interface is only kept for binary compatibility in Tapestry 5.4; the implementation no longer does anything but throw exceptions and will be removed in 5.5.
  See Also:
    `Zone`

- - ### Method Summary

    All Methods Instance Methods Abstract Methods Deprecated Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `addFormFragment​(String clientId, boolean alwaysSubmit, String showFunctionName, String hideFunctionName)` | Deprecated. Use `addFormFragment(String, boolean, String, String, String)` instead
    `void` | `addFormFragment​(String clientId, boolean alwaysSubmit, String showFunctionName, String hideFunctionName, String visibilityBoundFunctionName)` | Deprecated. In 5.4; use the `core/form-fragment` module instead.
    `void` | `addFormFragment​(String clientId, String showFunctionName, String hideFunctionName)` | Deprecated. Use `addFormFragment(String, boolean, String, String, String)` instead
    `void` | `addFormInjector​(String clientId, Link link, InsertPosition insertPosition, String showFunctionName)` | Deprecated. Adds a new client-side Tapestry.FormInjector object.
    `void` | `addValidation​(Field field, String validationName, String message, Object constraint)` | Deprecated. Collects field validation information.
    `void` | `addZone​(String clientId, String showFunctionName, String updateFunctionName)` | Deprecated. Adds a new client-side Tapestry.Zone object.
    `void` | `linkZone​(String linkId, String elementId, Link eventLink)` | Deprecated. Sets the client-side onclick handler for an <a> element to perform an Ajax update of a zone.

- - ### Method Detail

    - #### addZone

          void addZone​(String clientId,
                       String showFunctionName,
                       String updateFunctionName)

      Deprecated.
      Adds a new client-side Tapestry.Zone object. Zones are linked to a an element (typically, a <div>). A Zone may have handlers used to initially show it, or to highlight it when its content changes. Such handlers are referenced by name, as functions of the Tapestry.ElementEffect object.
      Parameters:
        `clientId` - client-side id of the element that will be updated by the zone
        `showFunctionName` - name of the function used to initially show the zone (if not visible), or null for default
        `updateFunctionName` - name of function used to highlight the function after an update, or null for default

    - #### linkZone

          void linkZone​(String linkId,
                        String elementId,
                        Link eventLink)

      Deprecated.
      Sets the client-side onclick handler for an <a> element to perform an Ajax update of a zone. Starting in Tapestry 5.4, this can be accomplished by adding a "data-update-zone" attribute to the element. The attribute value may be `^` or the id of the zone's client element.
      Parameters:
        `linkId` - id of the link to Ajax enable
        `elementId` - id of an element that has been previously registered as a Zone
        `eventLink` -

    - #### addFormFragment

          void addFormFragment​(String clientId,
                               String showFunctionName,
                               String hideFunctionName)

      Deprecated.
      Use `addFormFragment(String, boolean, String, String, String)` instead
      Adds a new client-side Tapestry.FormFragment object. FormFragment's are used to make parts of a client-side form visible or invisible, which involves interactions with both the server-side and client-side validation.
      Parameters:
        `clientId` - client-side id of the element that will be made visible or invisible
        `showFunctionName` - name of function (of the Tapestry.ElementEffect object) used to make the SubForm visible, or null for the default
        `hideFunctionName` - name of the function used to make the SubForm invisible, or null for the default

    - #### addFormFragment

          void addFormFragment​(String clientId,
                               boolean alwaysSubmit,
                               String showFunctionName,
                               String hideFunctionName)

      Deprecated.
      Use `addFormFragment(String, boolean, String, String, String)` instead
      Adds a new client-side Tapestry.FormFragment object. FormFragment's are used to make parts of a client-side form visible or invisible, which involves interactions with both the server-side and client-side validation.
      Parameters:
        `clientId` - client-side id of the element that will be made visible or invisible
        `alwaysSubmit` - if true, the fragment ignores client-side visiblility and always submits its values
        `showFunctionName` - name of function (of the Tapestry.ElementEffect object) used to make the SubForm visible, or null for the default
        `hideFunctionName` - name of the function used to make the SubForm invisible, or null for the default

    - #### addFormFragment

          void addFormFragment​(String clientId,
                               boolean alwaysSubmit,
                               String showFunctionName,
                               String hideFunctionName,
                               String visibilityBoundFunctionName)

      Deprecated.
      In 5.4; use the `core/form-fragment` module instead.
      Adds a new client-side Tapestry.FormFragment object. FormFragment's are used to make parts of a client-side form visible or invisible, which involves interactions with both the server-side and client-side validation. This implementation has been removed in 5.4; it throws an `UnsupportedOperationException`.
      Parameters:
        `clientId` - client-side id of the element that will be made visible or invisible
        `alwaysSubmit` - if true, the fragment ignores client-side visiblility and always submits its values
        `showFunctionName` - name of function (of the Tapestry.ElementEffect object) used to make the SubForm visible, or null for the default
        `hideFunctionName` - name of the function used to make the SubForm invisible, or null for the default
        `visibilityBoundFunctionName` - name of the function used to bound the isDeepVisible search, or null for the default
      Since:
        5.3

    - #### addFormInjector

          void addFormInjector​(String clientId,
                               Link link,
                               InsertPosition insertPosition,
                               String showFunctionName)

      Deprecated.
      Adds a new client-side Tapestry.FormInjector object. FormInjectors are used to extend an existing Form with new content.
      Parameters:
        `clientId` - client-side id of the element that identifiess where the new content will be placed
        `link` - action request link used to trigger the server-side object, to render the new content
        `insertPosition` - where the new content should go (above or below the element)
        `showFunctionName` - name of function (of the Tapestry.ElementEffect object) used to make the new element visible, or null for the default

    - #### addValidation

          void addValidation​(Field field,
                             String validationName,
                             String message,
                             Object constraint)

      Deprecated.
      Collects field validation information.
      Parameters:
        `field` - for which validation is being generated
        `validationName` - name of validation method (see Tapestry.Validation in tapestry.js)
        `message` - the error message to display if the field is invalid
        `constraint` - additional constraint value, or null for validations that don't require a constraint