Hi,

The component constructor doesn't call #add() at the moment (and I think
this wont change soon without a better reason).
So even if adding the varargs this wont help.

But you can create your own components which do this:

public class MyForm extends Form<Entity> {
   public MyForm(String id, IModel<Entity> model, Component... children) {
     super(id, model);

     ad(children);
   }
}


On Sun, Jan 6, 2013 at 9:24 PM, Zac Bedell <zacl...@thebedells.org> wrote:

> Greetings all,
>
> I was wondering what Wicket users & devs might thing of a possible API
> change for a future version (maybe Wicket 7?) of including a varargs array
> of Component as the final parameter of all of the various MarkupContainer
> subclasses?  I find myself doing things like these a lot:
>
>     pnlNoRsvp = new WebMarkupContainer("pnlNoRsvp");
>     pnlRsvp = new StatusPanel("pnlRsvp");
>     pnlConfirm = new ConfirmPanel("pnlConfirm");
>     pnlRsvpRules = new RsvpRulesPanel("pnlRsvpRules");
>
>     RsvpPage.this.add(
>         new Label("event.title"),
>         new CssFeedbackPanel("feedback"),
>         new Form<RsvpPage>("frmRsvp", cpm) {
>           {
>             add(pnlNoRsvp, pnlRsvp, pnlConfirm);
>           }
>         },
>         pnlRsvpRules
>     );
>
> -- or --
>
>     Form<RsvpPage> frmRsvp = new Form<RsvpPage>("frmRsvp", cpm);
>     frmRsvp.add(pnlNoRsvp, pnlRsvp, pnlConfirm);
>
>     RsvpPage.this.add(
>         new Label("event.title"),
>         new CssFeedbackPanel("feedback"),
>         frmRsvp,
>         pnlRsvpRules
>     );
>
> --
>
> If Form and the various other Wicket MarkupContainer's had constructors
> with Component... as their final parameter, it would be possible to do
> something like:
>
>     RsvpPage.this.add(
>         new Label("event.title"),
>         new CssFeedbackPanel("feedback"),
>         new Form<RsvpPage>("frmRsvp", cpm, pnlNoRsvp, pnlRsvp, pnlConfirm),
>         pnlRsvpRules
>     );
>
> --
>
> Granted, this would balloon the number of constructors throughout the
> framework just to save a bit of typing.  Curious what others might think...
>
> Best regards,
> Zac Bedell
> ---------------------------------------------------------------------
> 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 <http://jweekend.com/>

Reply via email to