instead of the custom AbstractBehavior, you could add an
AttributeAppender like this:
link.add(new AttributeAppender("class", true, new
Model("disabledPaginLink"), " ") {
  public boolean isEnabled() {
    return !getComponent().isEnabled();
  }
});

  Gerolf

On Tue, Apr 29, 2008 at 1:09 PM, Eyal Golan <[EMAIL PROTECTED]> wrote:

> thanks,
> here's what I did.
> 1. I have a StyledAjaxNavigationToolbar that overrides:
>    @Override
>    protected PagingNavigator newPagingNavigator(String navigatorId, final
> DataTable table) {
>        return new StyledAjaxPagingNavigator(navigatorId, table);
>    }
>
> 2. Then my StyledAjaxPagingNavigator overrides:
>    @Override
>    protected PagingNavigation newNavigation(IPageable pageable,
>            IPagingLabelProvider labelProvider) {
>        return new StyledAjaxPagingNavigation("navigation", pageable,
> labelProvider);
>    }
>
> 3. StyledAjaxPagingNavigation overrides:
>    @Override
>    protected Link newPagingNavigationLink(String id, IPageable pageable,
> int pageIndex) {
>        Link link = super.newPagingNavigationLink(id, pageable, pageIndex);
>        link.add(new AbstractBehavior() {
>            private static final long serialVersionUID = 1L;
>
>            @Override
>            public void onComponentTag(Component component, ComponentTag
> tag) {
>                super.onComponentTag(component, tag);
>                if (!component.isEnabled()) {
>                    CharSequence oldClassName = tag.getString("class");
>                    if (oldClassName == null || oldClassName.equals("")) {
>                        tag.put("class", "disabledPagingLink");
>                    } else {
>                        tag.put("class", oldClassName + " " +
> "disabledPagingLink");
>                    }
>                }
>            }
>        });
>        return link;
>    }
>
> And then, in the CSS file I do whatever I want...
>
> And now, is this the best way to access the PNL ?
> Was I able to get the newPagingNavigationLink with less overridden
> classes?
>
> And thanks for you help.
> I really enjoy this Wicket stuff!! It's so wicked ;)
>
> On Tue, Apr 29, 2008 at 12:43 PM, Gerolf Seitz <[EMAIL PROTECTED]>
> wrote:
>
> > On Tue, Apr 29, 2008 at 11:00 AM, Eyal Golan <[EMAIL PROTECTED]> wrote:
> >
> > > wow!!
> > > cool. That was so educational :)
> > > Thanks.
> > >
> > np :)
> >
> >
> > >
> > > If I change this, it will change EVERYTHING, right?
> >
> > yes, this is the setting for all disabled links.
> >
> >
> > >
> > > What if I want to do something like: <em style="color: green;"> only
> for
> > > this PNL ?
> > > Is there a way?
> >
> > there are numerous ;)
> >
> > you could add a SimpleAttributeModifier to the specific PNL:
> > PNL link = new PNL(...);
> > link.add(new SimpleAttributeModifier("class", "green") {
> >  public boolean isEnabled() {
> >    return !getComponent().isEnabled();
> >  }
> > }
> >
> > you could easily achieve the same result with overriding
> > PNL#onComponentTag ...
> >
> >
> > Gerolf
> >
>
>
>
> --
> Eyal Golan
> [EMAIL PROTECTED]
>
> Visit: http://jvdrums.sourceforge.net/
>

Reply via email to