[ 
https://issues.apache.org/jira/browse/CLK-524?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12700566#action_12700566
 ] 

Bob Schellink commented on CLK-524:
-----------------------------------

- Form needs to add its hidden fields (form_name and submit_token) as late as 
possible so not to interfere with the insert index. If Form adds the hidden 
fields in the onRender event, two issues arrise. Overriding onRender and not 
invoking super.onRender will break Form. User can also skip the onRender phase 
by returning false from a Listener, meaning Form will render without its hidden 
fields. One can argue that the Form could add the hidden fields in its #render 
method, however this might break existing custom Forms as they might not invoke 
super.render().

- ClickClick has a Repeater control which needs to manipulate its child control 
names by adding an index before the Repeater is rendered.

- ClickClick has Ajax support which uses an AjaxControlRegistry that needs to 
fire certain events before onProcess. With the new ControlRegistry 
implementation its easy to add a new custom event.

This change does make ControlRegistry more complex however I'm hoping that it 
won't effect users.

I'm open for alternative solutions as well :)

> Improve ControlRegistry to support custom callback events
> ---------------------------------------------------------
>
>                 Key: CLK-524
>                 URL: https://issues.apache.org/jira/browse/CLK-524
>             Project: Click
>          Issue Type: Improvement
>            Reporter: Bob Schellink
>            Assignee: Bob Schellink
>             Fix For: 2.1.0
>
>
> Improve ControlRegistry to handle callbacks for different events. Currently 
> ControlRegistry only supports firing listeners after the onProcess event.
> I have a number of use cases where listeners should fire after the onRender 
> event.
> Note: this improvement targets component developers, not users.

-- 
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