Sure you can do that, but if there was a method in the class, we could
throw some javadocs in there that says something like "this method can
be very useful when your component/page's superclass has abstract
factory methods in it which need to be used to initialize the
component hierarchy"

On Thu, Dec 11, 2008 at 7:18 AM, Martijn Dashorst
<[EMAIL PROTECTED]> wrote:
> Huh?
>
> protected void onBeforeRender() {
>    if(!hasBeenRendered()) {
>    }
> }
>
> On Thu, Dec 11, 2008 at 1:05 PM, James Carman
> <[EMAIL PROTECTED]> wrote:
>> When we discussed this before
>> (http://markmail.org/message/kjpunkvlvh5ofajp#query:wicket%20onbeforefirstrender%20carman+page:1+mid:cwx67dw5f5tgf4vs+state:results),
>> it was thought that we'd have to add a bit flag to account for whether
>> a component had been rendered before or not.
>>
>> So, why don't we add an onBeforeFirstRender() method?
>>
>> On Thu, Dec 11, 2008 at 6:57 AM, Martijn Dashorst
>> <[EMAIL PROTECTED]> wrote:
>>> component#hasBeenRendered()
>>>
>>> http://wicket.apache.org/docs/wicket-1.3.2/wicket/apidocs/org/apache/wicket/Component.html#hasBeenRendered()
>>>
>>> Martijn
>>>
>>> On Thu, Dec 11, 2008 at 12:43 PM, James Carman
>>> <[EMAIL PROTECTED]> wrote:
>>>> You can always add the components during "first render" rather than at
>>>> instantiation time.  The problem is that you have to keep some state
>>>> around to know whether you've been rendered yet or not.
>>>>
>>>> On Thu, Dec 11, 2008 at 2:45 AM, Nino Saturnino Martinez Vazquez Wael
>>>> <[EMAIL PROTECTED]> wrote:
>>>>> Yeah, but the other way are a bit cleaner java code wise... And  I Scott
>>>>> where heading into modifying a lot of stuff that would bring an over
>>>>> complicated solution to work..
>>>>>
>>>>> So the trickery would be to edit  and a whole bunch of other
>>>>> stuff(probably)IMarkupResourceStreamProvider, instead of facilitating the
>>>>> simple features of wicket.. :)
>>>>>
>>>>> Jeremy Thomerson wrote:
>>>>>>
>>>>>> You can also do exactly as you mentioned....
>>>>>>
>>>>>> In your base page, have a repeating view (i.e. ListView) that simply 
>>>>>> loops
>>>>>> over a "List<Component> childPanels"..... Then your method
>>>>>> addToRepeater(Component component) will add to that list.
>>>>>>
>>>>>> Should work exactly as you described.  What trickery is needed?  I guess 
>>>>>> I
>>>>>> miss that part.
>>>>>>
>>>>>> On Wed, Dec 10, 2008 at 5:20 PM, Nino Saturnino Martinez Vazquez Wael <
>>>>>> [EMAIL PROTECTED]> wrote:
>>>>>>
>>>>>>
>>>>>>>
>>>>>>> Scott,
>>>>>>>
>>>>>>> Think inheritance :)
>>>>>>>
>>>>>>> Just write a super which has abstract methods that returns components 
>>>>>>> for
>>>>>>> c1..c4() and thats it.. no need for trickery with
>>>>>>> IMarkupResourceStreamProvider ...
>>>>>>>
>>>>>>> Should I elaborate more?
>>>>>>>
>>>>>>> You could also take a look at the wicketstuff accordion thing, it does
>>>>>>> something along these lines[1]...
>>>>>>>
>>>>>>>
>>>>>>> 1=
>>>>>>>
>>>>>>> http://wicketstuff.org/confluence/display/STUFFWIKI/wicket-contrib-accordion
>>>>>>>
>>>>>>> regards
>>>>>>>
>>>>>>>
>>>>>>> smackie604 wrote:
>>>>>>>
>>>>>>>
>>>>>>>>
>>>>>>>> Hi,
>>>>>>>>
>>>>>>>> My team has adopted wicket as it's web framework and we have been busy
>>>>>>>> creating a lot of interesting Panels to build pages for our product.  
>>>>>>>> It
>>>>>>>> is
>>>>>>>> turning out that most of the time all the components on the page are
>>>>>>>> Panels
>>>>>>>> and we end up with a situation like this:
>>>>>>>>
>>>>>>>> MyPage.java
>>>>>>>> --------------
>>>>>>>> public class MyPage extends BasePage
>>>>>>>> {
>>>>>>>>  MyPage()
>>>>>>>>  {
>>>>>>>>   add(SomePanel("c1"));
>>>>>>>>   add(SomePanel("c2"));
>>>>>>>>   add(SomePanel("c3"));
>>>>>>>>   add(SomePanel("c4"));
>>>>>>>>  }
>>>>>>>> }
>>>>>>>>
>>>>>>>> MyPage.html
>>>>>>>> ---------------
>>>>>>>> <wicket:extend>
>>>>>>>>  <wicket:container wicket:id="c1"/>
>>>>>>>>  <wicket:container wicket:id="c2"/>
>>>>>>>>  <wicket:container wicket:id="c3"/>
>>>>>>>>  <wicket:container wicket:id="c4"/>
>>>>>>>> </wicket:extend>
>>>>>>>>
>>>>>>>> It would be nice if we didn't have to write html files for pages in
>>>>>>>> these
>>>>>>>> situations and instead just do something like this:
>>>>>>>>
>>>>>>>> MyPage.java
>>>>>>>> --------------
>>>>>>>> public class MyPage extends BasePage
>>>>>>>> {
>>>>>>>>  MyPage()
>>>>>>>>  {
>>>>>>>>   addToRepeater(SomePanel("c1"));
>>>>>>>>   addToRepeater(SomePanel("c2"));
>>>>>>>>   addToRepeater(SomePanel("c3"));
>>>>>>>>   addToRepeater(SomePanel("c4"));
>>>>>>>>  }
>>>>>>>> }
>>>>>>>>
>>>>>>>> Where BasePage will have a method called addToRepeater which just adds
>>>>>>>> the
>>>>>>>> component to the repeater.
>>>>>>>> I see we could do some trickery by implementing
>>>>>>>> IMarkupResourceStreamProvider on the BasePage to force the template of
>>>>>>>> it's
>>>>>>>> child classes to always use BasePage.html.  I'm not sure this is the
>>>>>>>> best
>>>>>>>> way of doing this, does anyone have any comments on using this 
>>>>>>>> approach?
>>>>>>>>
>>>>>>>> Thanks,
>>>>>>>>
>>>>>>>> Scott
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> -Wicket for love
>>>>>>>
>>>>>>> Nino Martinez Wael
>>>>>>> Java Specialist @ Jayway DK
>>>>>>> http://www.jayway.dk
>>>>>>> +45 2936 7684
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> ---------------------------------------------------------------------
>>>>>>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>>>>>>> For additional commands, e-mail: [EMAIL PROTECTED]
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>> --
>>>>> -Wicket for love
>>>>>
>>>>> Nino Martinez Wael
>>>>> Java Specialist @ Jayway DK
>>>>> http://www.jayway.dk
>>>>> +45 2936 7684
>>>>>
>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>>>>> For additional commands, e-mail: [EMAIL PROTECTED]
>>>>>
>>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>>>> For additional commands, e-mail: [EMAIL PROTECTED]
>>>>
>>>>
>>>
>>>
>>>
>>> --
>>> Become a Wicket expert, learn from the best: http://wicketinaction.com
>>> Apache Wicket 1.3.4 is released
>>> Get it now: http://www.apache.org/dyn/closer.cgi/wicket/1.3.
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>>> For additional commands, e-mail: [EMAIL PROTECTED]
>>>
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>> For additional commands, e-mail: [EMAIL PROTECTED]
>>
>>
>
>
>
> --
> Become a Wicket expert, learn from the best: http://wicketinaction.com
> Apache Wicket 1.3.4 is released
> Get it now: http://www.apache.org/dyn/closer.cgi/wicket/1.3.
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to