Re: images in AjaxDefaultdatable

2010-01-04 Thread Ernesto Reinaldo Barreiro
I haven't tried it but this might work

public class BooleanImageColumn extends PropertyColumnBoolean {

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(IModelString displayModel, String
propertyExpression) {
super(displayModel, propertyExpression);
}

public BooleanImageColumn(IModelString displayModel, String
sortProperty, String propertyExpression) {
super(displayModel, sortProperty, propertyExpression);
}


@Override
public void populateItem(ItemICellPopulatorBoolean item, String
componentId, IModelBoolean 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.comwrote:

 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




Re: images in AjaxDefaultdatable

2010-01-04 Thread chinedu efoagui
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 PropertyColumnBoolean {

    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(IModelString displayModel, String
 propertyExpression) {
        super(displayModel, propertyExpression);
    }

    public BooleanImageColumn(IModelString displayModel, String
 sortProperty, String propertyExpression) {
        super(displayModel, sortProperty, propertyExpression);
    }


   �...@override
    public void populateItem(ItemICellPopulatorBoolean item, String
 componentId, IModelBoolean 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.comwrote:

 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



Re: images in AjaxDefaultdatable

2010-01-04 Thread chinedu efoagui
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 PropertyColumnBoolean {

    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(IModelString displayModel, String
 propertyExpression) {
        super(displayModel, propertyExpression);
    }

    public BooleanImageColumn(IModelString displayModel, String
 sortProperty, String propertyExpression) {
        super(displayModel, sortProperty, propertyExpression);
    }


   �...@override
    public void populateItem(ItemICellPopulatorBoolean item, String
 componentId, IModelBoolean 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.comwrote:

 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



Re: images in AjaxDefaultdatable

2010-01-04 Thread Ernesto Reinaldo Barreiro
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 PropertyColumnBoolean {

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(IModelString displayModel, String
propertyExpression) {
super(displayModel, propertyExpression);
}

public BooleanImageColumn(IModelString displayModel, String
sortProperty, String propertyExpression) {
super(displayModel, sortProperty, propertyExpression);
}


@Override
public void populateItem(ItemICellPopulatorBoolean item, String
componentId, IModelBoolean 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.comwrote:

 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 PropertyColumnBoolean {
 
 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(IModelString displayModel, String
  propertyExpression) {
 super(displayModel, propertyExpression);
 }
 
 public BooleanImageColumn(IModelString displayModel, String
  sortProperty, String propertyExpression) {
 super(displayModel, sortProperty, propertyExpression);
 }
 
 
 @Override
 public void populateItem(ItemICellPopulatorBoolean item, String
  componentId, IModelBoolean rowModel) {
 if(rowModel.getObject() == null ||
  rowModel.getObject().equals(Boolean.FALSE))
 item.add(new NonCachingImage(componentId, 

Re: images in AjaxDefaultdatable

2010-01-04 Thread chinedu efoagui
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 PropertyColumnBoolean {

    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(IModelString displayModel, String
 propertyExpression) {
        super(displayModel, propertyExpression);
    }

    public BooleanImageColumn(IModelString displayModel, String
 sortProperty, String propertyExpression) {
        super(displayModel, sortProperty, propertyExpression);
    }


   �...@override
    public void populateItem(ItemICellPopulatorBoolean item, String
 componentId, IModelBoolean 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.comwrote:

 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 PropertyColumnBoolean {
 
     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(IModelString displayModel, String
  propertyExpression) {
         super(displayModel, propertyExpression);
     }
 
     public BooleanImageColumn(IModelString displayModel, String
  sortProperty, String propertyExpression) {
         super(displayModel, sortProperty, propertyExpression);
     }
 
 
    �...@override
     public void populateItem(ItemICellPopulatorBoolean item, String
  componentId, IModelBoolean rowModel) {