class Page extends .... Page { abstract Component getPart1(String id); abstract Component getPart2(String id);
onBeforeRender() { if (get("part1")==null) { add(getPart1("part1")); } if (get("part2")==null) { add(getPart2("part1")); } }} in 1.5 it would be done like this class Page extends .... Page { abstract Component getPart1(String id); abstract Component getPart2(String id); onInitialize() { add(getPart1("part1")); add(getPart2("part1")); }} -igor On Thu, Jul 8, 2010 at 2:23 PM, James Carman <ja...@carmanconsulting.com> wrote: > And, this method doesn't really work very well either. You can't > reliably call those abstract methods from the superclass' constructor. > > On Thu, Jul 8, 2010 at 2:47 PM, Chris Colman > <chr...@stepaheadsoftware.com> wrote: >>>class Page extends .... Page { >>> >>>abstract Component getPart1(); >>>abstract Component getPart2(); >>>} >>> >>><html>.... >>> >>><div wicket:id="id4part1" /> >>><wicket:child /> >>><div wicket:id="id4part2" /> >> >> That's the component based workaround that I mentioned which IMHO isn't >> really the pure markup OO solution we're proposing. I'm hoping for true >> markup inheritance that supports multiple overridable sections that >> doesn't mandate a Java side coding change each time a markup editor adds >> or removes a particular overridable section. >> >> >>>On Thu, Jul 8, 2010 at 5:49 AM, Chris Colman >>><chr...@stepaheadsoftware.com>wrote: >>> >>>> >Search the list for this and you'll find some quite long >> discussions. >>>> >Basically, it's not going to happen. This would be multiple >>>> inheritance, >>>> >not single. >>>> >>>> Hi Jeremy, I hope I don't sound confrontationalist when I say this >> but >>>> this is clearly not a case of multiple inheritance. >>>> >>>> For this request to be deemed to be multiple inheritance one >>>> class/markup file would need to be inheriting from two separate super >>>> classes/markup files. That is not what is requested here. There >> remains >>>> only a single super class/markup file. >>>> >>>> All that is requested here is for multiple markup sections to be >>>> overridden in this single inheritance scenario - just like Java does >> not >>>> restrict you to overriding only a single method in any Java class: >> You >>>> can override as many methods as you like in a Java class but that >> does >>>> not break Java's single inheritance model - which constrains the >> number >>>> of base classes to ONE, not the number of methods you can override to >>>> ONE. >>>> >>>> All this user (and others before him) are asking is for wicket to >>>> support the overriding of N markup sections without instead of the >>>> arbitrarily imposed constraint of N <= 1. >>>> >>>> > >>>> >Jeremy Thomerson >>>> >-- sent from my smartphone - please excuse formatting and spelling >>>> errors >>>> > >>>> >On Jul 5, 2010 12:41 AM, "Arjun Dhar" <dhar...@yahoo.com> wrote: >>>> > >>>> > >>>> >Hi, >>>> > all the examples etc suggest that Single inheritence is possible >> but I >>>> >cant >>>> >break it up. The break up is essential when you want to merge common >>>> parts >>>> >of your MARKUP with multiple specific parts of the Child page. >>>> > >>>> >Example: >>>> > >>>> > >>>> ><HTML> >>>> ><HEAD><title>BASE TEMPLATE / PARENT PAGE</title></HEAD> >>>> > >>>> ><BODY> >>>> > <wicket:child /> >>>> > <br /> >>>> > <h2>Some other Html common</h2> >>>> > <wicket:child /> >>>> ></BODY> >>>> ></HTML> >>>> > >>>> > >>>> >------------------------------------------- >>>> > >>>> ><HTML> >>>> ><HEAD><title>CHILD PAGE 1</title></HEAD> >>>> > >>>> ><BODY> >>>> > <wicket:extend> >>>> > Part 1 specific to Child Page >>>> > </wicket:extend> >>>> > Any HTML here can be ignored as conceptually anyway what >> appears >>>> in >>>> ><extend> is what should be rendered from a child page. >>>> > <wicket:extend> >>>> > Part 2 Specific to Child Page (will appear after >>>> common >>>> >HTML in parent page) >>>> > </wicket:extend> >>>> ></BODY> >>>> ></HTML> >>>> > >>>> > >>>> >I tried this, only the first part renders. I'm wondering if we can >> add >>>> such >>>> >capability. Conceptually I don't see why not. If already possible do >>>> let me >>>> >know or consider as a feature request?! >>>> > >>>> >-Thanks Arjun >>>> >-- >>>> >View this message in context: >>>> >>>http://apache-wicket.1842946.n4.nabble.com/Single-inheritence-in-parts- >>>> >tp2278064p2278064.html >>>> >Sent from the Wicket - User mailing list archive at Nabble.com. >>>> > >>>> >>>--------------------------------------------------------------------- >>>> >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 >> >> > > --------------------------------------------------------------------- > 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