k thanks

On Mon, Jan 4, 2010 at 3:07 PM, Ernesto Reinaldo Barreiro
<reier...@gmail.com> wrote:
> You are right.... Just create a panel and place the image there....
>
> Try this
>
> import org.apache.wicket.ResourceReference;
> import
> org.apache.wicket.extensions.markup.html.repeater.data.grid.ICellPopulator;
> import
> org.apache.wicket.extensions.markup.html.repeater.data.table.PropertyColumn;
> import org.apache.wicket.markup.repeater.Item;
> import org.apache.wicket.model.IModel;
>
> public class BooleanImageColumn extends PropertyColumn<Boolean> {
>
>    private static final long serialVersionUID = 1L;
>
>
>    private static final ResourceReference TRUE_IMG = new
> ResourceReference(BooleanImageColumn.class, "true.gif");
>    private static final ResourceReference FALSE_IMG = new
> ResourceReference(BooleanImageColumn.class, "false.gif");
>
>    public BooleanImageColumn(IModel<String> displayModel, String
> propertyExpression) {
>        super(displayModel, propertyExpression);
>    }
>
>    public BooleanImageColumn(IModel<String> displayModel, String
> sortProperty, String propertyExpression) {
>        super(displayModel, sortProperty, propertyExpression);
>    }
>
>
>   �...@override
>    public void populateItem(Item<ICellPopulator<Boolean>> item, String
> componentId, IModel<Boolean> rowModel) {
>        if(rowModel.getObject() == null ||
> rowModel.getObject().equals(Boolean.FALSE))
>            item.add(new ImagePanel(componentId, FALSE_IMG));
>        else
>            item.add(new ImagePanel(componentId, TRUE_IMG));
>    }
> }
>
> where
>
> import org.apache.wicket.ResourceReference;
> import org.apache.wicket.markup.html.image.NonCachingImage;
> import org.apache.wicket.markup.html.panel.Panel;
>
> public class ImagePanel extends Panel {
>
>    private static final long serialVersionUID = 1L;
>
>    /**
>     * @param id
>     */
>    public ImagePanel(String id, ResourceReference image) {
>        super(id);
>        add(new NonCachingImage("image", image));
>    }
>
> }
>
> and ImagePanel.html
>
> <html>
>    <body>
>        <wicket:panel>
>        <img wicket:id="image"/>
>        </wicket:panel>
>    </body>
> </html>
>
> Ernesto
>
> On Mon, Jan 4, 2010 at 2:49 PM, chinedu efoagui <chinedub...@gmail.com>wrote:
>
>> I applied you class with a few modifications it gave me this error.
>> I think it is expecting an img tag somewhere
>>
>> [code]
>> WicketMessage: Component cell must be applied to a tag of type 'img',
>> not '<span wicket:id="cell">' (line 0, column 0)
>> [markup =
>> file:/C:/Users/bond/.netbeans/6.8/apache-tomcat-6.0.20_base/work/Catalina/localhost/hr/loader/org/apache/wicket/extensions/markup/html/repeater/data/table/DataTable.html
>> <!--
>>
>> <wicket:panel>
>> <thead wicket:id="topToolbars">
>>        <wicket:container wicket:id="toolbar"></wicket:container>
>> </thead>
>> <thead wicket:id="bottomToolbars">
>>        <wicket:container wicket:id="toolbar"></wicket:container>
>> </thead>
>> <tbody>
>>        <tr wicket:id="rows">
>>                <td wicket:id="cells">
>>                        <span wicket:id="cell">[cell]</span>
>>                </td>
>>        </tr>
>> </tbody>
>> </wicket:panel>
>>
>> , index = 21, current = '<span wicket:id="cell">' (line 27, column 4)]
>>     at
>> org.apache.wicket.markup.MarkupStream.throwMarkupException(MarkupStream.java:465)
>>     at org.apache.wicket.Component.checkComponentTag(Component.java:3475)
>>     at
>> org.apache.wicket.markup.html.image.Image.onComponentTag(Image.java:228)
>>     at
>> org.apache.wicket.markup.html.image.NonCachingImage.onComponentTag(NonCachingImage.java:124)
>>     at org.apache.wicket.Component.renderComponent(Component.java:2597)
>>     at
>> org.apache.wicket.markup.html.WebComponent.onRender(WebComponent.java:62)
>>     at org.apache.wicket.Component.render(Component.java:2457)
>>     at
>> org.apache.wicket.MarkupContainer.renderNext(MarkupContainer.java:1414)
>>     at
>> org.apache.wicket.MarkupContainer.renderComponentTagBody(MarkupContainer.java:1577)
>>     at
>> org.apache.wicket.MarkupContainer.onComponentTagBody(MarkupContainer.java:1501)
>>     at org.a
>> [code]
>>
>> On Mon, Jan 4, 2010 at 2:04 PM, chinedu efoagui <chinedub...@gmail.com>
>> wrote:
>> > thank i will try it and give u feed back
>> >
>> > On Mon, Jan 4, 2010 at 2:02 PM, Ernesto Reinaldo Barreiro
>> > <reier...@gmail.com> wrote:
>> >> I haven't tried it but this might work
>> >>
>> >> public class BooleanImageColumn extends PropertyColumn<Boolean> {
>> >>
>> >>    private static final long serialVersionUID = 1L;
>> >>
>> >>
>> >>    private static final ResourceReference TRUE_IMG = new
>> >> ResourceReference(BooleanImageColumn.class, "true.gif");
>> >>    private static final ResourceReference FALSE_IMG = new
>> >> ResourceReference(BooleanImageColumn.class, "false.gif");
>> >>
>> >>    public BooleanImageColumn(IModel<String> displayModel, String
>> >> propertyExpression) {
>> >>        super(displayModel, propertyExpression);
>> >>    }
>> >>
>> >>    public BooleanImageColumn(IModel<String> displayModel, String
>> >> sortProperty, String propertyExpression) {
>> >>        super(displayModel, sortProperty, propertyExpression);
>> >>    }
>> >>
>> >>
>> >>   �...@override
>> >>    public void populateItem(Item<ICellPopulator<Boolean>> item, String
>> >> componentId, IModel<Boolean> rowModel) {
>> >>        if(rowModel.getObject() == null ||
>> >> rowModel.getObject().equals(Boolean.FALSE))
>> >>            item.add(new NonCachingImage(componentId, FALSE_IMG));
>> >>        else
>> >>            item.add(new NonCachingImage(componentId, TRUE_IMG));
>> >>    }
>> >> }
>> >>
>> >> Just place a "true.gif" and a "false.gif" on the same package as
>> >> BooleanImageColumn.
>> >>
>> >> Ernesto
>> >>
>> >> On Mon, Jan 4, 2010 at 1:31 PM, chinedu efoagui <chinedub...@gmail.com
>> >wrote:
>> >>
>> >>> hello
>> >>> I have a an object which contains a boolean field (true ,false) it
>> renders
>> >>> well.
>> >>> I want to do is instead on of it showing true or false on the cell. I
>> >>> want it to show an image if it is true and another image if the
>> >>> attribute is false?
>> >>> Please how can i achieve this?
>> >>> Thank you
>> >>>
>> >>> ---------------------------------------------------------------------
>> >>> 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