On 5/31/07, Lowell Kirsh <[EMAIL PROTECTED]> wrote:
> My use case is actually turning out slightly more complex than I
> posted. What I actually have is:
>
> <span wicket:id="foo">TEXT<span wicket:id="star">*</span><span>
>
> and I'd like to sometimes remove the star. So my java (which doesn't
> work) looks like:
>
> private static class LabelWithStar extends WebMarkupContainer
> {
> public LabelWithStar(String id, String model, final boolean
> starIsVisible)
> {
> super(id, new Model(model));
> this.add(new WebMarkupContainer("star") {
> public boolean isVisible()
> {
> return starIsVisible;
> }
> });
> }
>
> protected void onComponentTagBody(MarkupStream markupStream,
> ComponentTag openTag)
> {
> replaceComponentTagBody(markupStream, openTag,
> getModelObjectAsString());
> }
> }
>
> This doesn't work because the call to replaceComponentTagBody()
> removes the span with the star. How should I be doing this instead?
You mean you need to have the span? Why is that?
Alternatively, you can do something like
add(new Label("star", new AbstractReadOnlyModel() {
@Override
public Object getObject() {
return isStarVisible() ? "*" : "";
}
}));
}
Eelco
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
Wicket-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/wicket-user