HI Bertrand,

I'm not quite sure whether this is your concern but take a look at
org.apache.wicket.markup.html.tree.BaseTree#newLink()
It uses LinkType to decide what kind of Link to create. You can use
the same approach.

On Wed, Feb 22, 2012 at 6:12 AM, Bertrand Guay-Paquet
<ber...@step.polymtl.ca> wrote:
> Thanks Igor. This is actually very close to what I used as my first
> approach. The problem I had then was that depending on the context in which
> the panel is used, the component must be one of the following:
> 1-A Link/Button, like in your code
> 2-A BookmarkablePageLink
> 3-An AjaxLink (ajax replacement, close modal window, etc.)
>
> In your example, myformpanel can only work with case #1. This is essentially
> the problem that has me scratching my head.
>
> Regards,
> Bertrand
>
>
> On 21/02/2012 7:04 PM, Igor Vaynberg wrote:
>>
>> *abstract* class myformpanel extends panel {
>>   public myformpanel(string id) {
>>      add(new button("save") {
>>         onsubmit() {
>>           *onsave(model);*
>>         });}
>>
>>    *protected abstract void onsave(imodel);*
>> }
>>
>> add(new myformpanel("panel") {
>>   protected void onsave(imodel) {
>>      // do stuff
>>      setResponsePage() or replaceWith() or whatever you want
>> }}
>>
>> -igor
>>
>>
>> On Tue, Feb 21, 2012 at 3:53 PM, Bertrand Guay-Paquet
>> <ber...@step.polymtl.ca>  wrote:
>>>
>>> Hi,
>>>
>>> I want to reuse the same form panels in different contexts and would like
>>> to
>>> know how fellow Wicket users achieve this. The core of the problem is how
>>> to
>>> let the user of a form panel specify where to "navigate" when the form is
>>> submitted or canceled.
>>>
>>> There are multiple possibilities for this:
>>> -setResponsePage a bookmarkable page
>>> -setResponsePage a page instance (to go back to the previous page for
>>> example)
>>> -replace the form panel via ajax
>>> -close a modal window via ajax
>>> -bubble a Wicket event
>>>
>>> I've tried 2 approaches up to now :
>>> -some form of markup inheritance. This requires subclassing the form
>>> panel
>>> at each usage site.
>>> -navigation factories provided to the form panel which are responsible
>>> for
>>> populating it with the proper submit and cancel links/buttons.
>>>
>>> Both of these approaches are kludgy and I have the feeling there has to
>>> be a
>>> better way. Which way is the "Wicket way" to let the user of a panel
>>> customize its navigation?
>>>
>>> Thanks,
>>> Bertrand
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
>>> For additional commands, e-mail: users-h...@wicket.apache.org
>>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
>> For additional commands, e-mail: users-h...@wicket.apache.org
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
> For additional commands, e-mail: users-h...@wicket.apache.org
>



-- 
Martin Grigorov
jWeekend
Training, Consulting, Development
http://jWeekend.com

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org

Reply via email to