> this is the same as add(new label("foo", new loadabledetachablemodel()
> { load() { return "markup" }}).setescapemdoelstrings(false))

Is not completely same, because a MarkupResourceStreamProvider can
also provide markup for other components to land on.

**
Martin

>
> -igor
>
> On Sat, Feb 25, 2012 at 2:00 PM, Martin Makundi
> <martin.maku...@koodaripalvelut.com> wrote:
>> Now that I am working with the markupresourcestream directly, I am
>> beginning to think that Wicket should support dually both component
>> hierarchy and markup hierarchy.
>>
>> Wicket chould have two kinds of add methods:
>>
>> add(Component c)
>>
>> add(String anchorId, MarkupResourceStreamProvider c)
>>
>> Such a MarkupResourceStreamProvider object could basically look same
>> as a component (having setvisible,setenabled,addbehavior,etc.), but
>> when it is added, its output would be injected to the parent's markup
>> stream at anchor position (instead of a component being added to a
>> component tree).
>>
>> The benefit would be, for a "stateless" component, its markup result
>> could be automagically cached and the "component" itself that defined
>> the markup, would not remain to waste any resources.
>>
>> Even better, the output of such a MarkupResourceStreamProvider should
>> be logically a chain of "strings" alternating with possible IModels
>> such that dynamic model values could be updated every time parent is
>> re-rendered.
>>
>>
>> Any comments?
>>
>>
>>
>> ..my2wildThughts..
>>
>> **
>> Martin
>>
>> 2012/2/25 Martin Makundi <martin.maku...@koodaripalvelut.com>:
>>> Also
>>>
>>>   public IResourceStream getMarkupResourceStream(MarkupContainer
>>> container, Class<?> containerClass) {
>>>
>>> seems quite feasible for making conditional markup.
>>>
>>> However, I must override
>>> MarkupContainer.getAssociatedMarkupStream(enforceReload=true) and
>>> IMarkupCacheKeyProvider.getCacheKey(==null) to get a different markup
>>> for each component.
>>>
>>>
>>>
>>> **
>>> Martin
>>>
>>>
>>> 2012/2/25 Martin Makundi <martin.maku...@koodaripalvelut.com>:
>>>> @Per about 
>>>> http://www.small-improvements.com/blog/technical/tuning-wicket-session-size
>>>>
>>>> You say "If condition A is met, show label A. If not, use
>>>> setVisible(false) to hide it. Combine that with Enclosures... Trouble
>>>> is, while the hidden component doesn't show up in the markup, it's
>>>> still part of the component tree! "
>>>>
>>>> I remember sometimes when using enclosures, I have rendered a page
>>>> which has not added some components inside an enclosure. Maybe there
>>>> could be a way to mark a region in the markup (like enclosure) where a
>>>> component can be optionally added.
>>>>
>>>> This way "setVisible=false" could be achieved simply by not adding
>>>> that component.
>>>>
>>>>
>>>>
>>>> **
>>>> Martin
>>
>> ---------------------------------------------------------------------
>> 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

Reply via email to