Hi,

I solved the problem. Maybe my solution will be a better a explanation
to the problem:

I checked the source of the LinkDecorator and found this method:

[code]

/**
     * Render the link to the specified buffer.
     * <p/>
     * If this method is overridden to add extra parameters to the link,
     * remember to invoke <tt>super.renderActionLink</tt> so default rendering
     * can continue.
     *
     * @param buffer the specified buffer to render the link output to
     * @param link the link to render
     * @param context the request context
     * @param row the table row being rendered
     * @param value the value of the link
     */
    protected void renderActionLink(HtmlStringBuffer buffer, AbstractLink link,
        Context context, Object row, Object value) {
        link.render(buffer);
    }


[/code]

Thus I solved my problem by overriding the renderActionLink in LinkDecorator:

[code]

public class LinkDecoratorWithDataProviderContent {

  @Override
  protected void renderActionLink(HtmlStringBuffer buffer, AbstractLink link,
        Context context, Object row, Object value) {

        if(row instanceof Post) {
           // Set the TEXT, which is displayed by <a href>TEXT</a>.
Otherwise the name attribute of the link is written to <a href></a>
           link.setLabel(post.getTitle());
        }

        super.enderActionLink(buffer, link, context, row, value);
    }
}

[/code]

Cheers

2013/9/9 Bob Schellink <[email protected]>:
> Hi,
>
> The "edit"/"delete" text is normally set on an ActionLink control. You can
> set the text of the ActionLinks to anything you like.
>
> regards
>
> Bob
>
>
> On 2013/09/09 15:59, Gilberto wrote:
>
> Hi, Kiril! Welcome to Click community!
>
> Can you better elaborate your question? I did not understand it. Do you
> understand the Decorator Design Pattern' idea[1]?
>
> Regards,
>
> Gilberto
>
> [1]
> http://click.apache.org/docs/extras-api/org/apache/click/extras/control/LinkDecorator.html
>
>
>
> 2013/9/7 Kiril Valev <[email protected]>
>>
>> Hi,
>>
>> is it possible to use a LinkDecorator and still get the link text from
>> the DataProvider without overriding the render method in Decorator?
>> The examples show only static text when using LinkDecorator (Either
>> "Edit" or "Delete"). Can I get the link text by property?
>>
>> Thanks!
>
>
>

Reply via email to