You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@wicket.apache.org by Fernando Wermus <fe...@gmail.com> on 2010/06/08 21:37:55 UTC

selected links in a menu

Hi all,
    I have a menu that it structure is the following:


1. for the link selected

<ul id="someId">
     <li>
        <em> selected item </em>
    </li>
....


2. for the link not selected

<ul id="someId">
      <li>
          <em>
             <a> item not selected</a>
          <em>
      </li>
...


I programmed this with a border that renders the <em>, but I need make
invisible the border, but not the anchor to get the first case.

I tried:

border.setVisible(false);
border.getBodyContainer().setVisible(true);

and I got an error:

at java.util.AbstractList$Itr.remove(
AbstractList.java:356)
at org.apache.wicket.Page.checkRendering(Page.java:1139)
at org.apache.wicket.Page.renderPage(Page.java:921)
at
org.apache.wicket.request.target.component.BookmarkablePageRequestTarget.respond(BookmarkablePageRequestTarget.java:240)


Which is the best way to achieve this?

I supposed that if a decorator didn't render it would mean the body would
still be rendered - it is a decorator, not a classic container.

thanks in advance


-- 
Fernando Wermus.

www.linkedin.com/in/fernandowermus

Re: selected links in a menu

Posted by Igor Vaynberg <ig...@gmail.com>.
simply disabling the link, calling setenabled(false), will get you
there. also see link#setbefore/afterdisabledlink(string markup) which
looks like you may want to set to ""

-igor

On Tue, Jun 8, 2010 at 12:37 PM, Fernando Wermus
<fe...@gmail.com> wrote:
> Hi all,
>    I have a menu that it structure is the following:
>
>
> 1. for the link selected
>
> <ul id="someId">
>     <li>
>        <em> selected item </em>
>    </li>
> ....
>
>
> 2. for the link not selected
>
> <ul id="someId">
>      <li>
>          <em>
>             <a> item not selected</a>
>          <em>
>      </li>
> ...
>
>
> I programmed this with a border that renders the <em>, but I need make
> invisible the border, but not the anchor to get the first case.
>
> I tried:
>
> border.setVisible(false);
> border.getBodyContainer().setVisible(true);
>
> and I got an error:
>
> at java.util.AbstractList$Itr.remove(
> AbstractList.java:356)
> at org.apache.wicket.Page.checkRendering(Page.java:1139)
> at org.apache.wicket.Page.renderPage(Page.java:921)
> at
> org.apache.wicket.request.target.component.BookmarkablePageRequestTarget.respond(BookmarkablePageRequestTarget.java:240)
>
>
> Which is the best way to achieve this?
>
> I supposed that if a decorator didn't render it would mean the body would
> still be rendered - it is a decorator, not a classic container.
>
> thanks in advance
>
>
> --
> Fernando Wermus.
>
> www.linkedin.com/in/fernandowermus
>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@wicket.apache.org
For additional commands, e-mail: users-help@wicket.apache.org