you should rather add an IModel to the link e.g. new Link("foobar", myModel);
than letting a component implement IModel. the way you did it, the model is
never recognised as a model, as it wasn't set as a model of a component.
hope that makes sense
regards,
Michael
Leucht, Axel wrote:
>
> Hi,
>
> I do have a link class which should render different icons when clicked.
>
> So I decided to implement IModel and return different icons depending on
> the state of the object. But to my surprise getObject() never get called!
>
> Does anyone give me a clue where to look next or give me a hint as to how
> to render the object with a different icon?
>
> The object is used in a 10x10 board game where a player can "shoot" at
> different squares which are rendered as links in the output. The board is
> constructed as:
> ListView listview = new ListView("rows", list) {
> private static final long serialVersionUID = 1L;
>
> protected void populateItem(ListItem item) {
> Row row = (Row) item.getModelObject();
> final Square[] squares = new Square[10];
> for (int col=0; col<10; col++) {
> squares[col] = row.getCells(col);
> }
> Square square = row.getCells(0);
> item.add(new Label("row",new
> Model(square.getRow())));
> for (int col=0; col<10; col++) {
> final Square aSquare =
> row.getCells(col);
> item.add(aSquare);
> }
> }
> };
> And the Square-Object is:
> public class Square extends Link implements IModel {
> @Override
> public void onClick() {
> System.out.println("Click:" + ident);
> }
>
> @Override
> public Object getObject() {
> System.out.println("GetObject");
> if (someState)
> return icon1;
> return icon2;
>
> }
> }
>
> /Axel
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>
>
-----
Michael Sparer
http://talk-on-tech.blogspot.com
--
View this message in context:
http://www.nabble.com/Model-never-called-tp20577931p20578051.html
Sent from the Wicket - User mailing list archive at Nabble.com.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]