001    package net.databinder.components;
002    
003    import org.apache.wicket.AttributeModifier;
004    import org.apache.wicket.ResourceReference;
005    import org.apache.wicket.markup.html.form.ImageButton;
006    import org.apache.wicket.model.AbstractReadOnlyModel;
007    
008    /**
009     * Base class for item buttons, whether ListItem or repeater Item.
010     */
011    public abstract class BaseItemButton extends ImageButton {
012    
013            public BaseItemButton(String id, ResourceReference image) {
014                    super(id, image);
015                    add(new AttributeModifier("class", true, new AbstractReadOnlyModel() {
016                            @Override
017                            public Object getObject() {
018                                    return isEnabled() ? null : "disabled-image";
019                            }
020                    }));
021            }
022            
023            protected static ResourceReference getTrashImage() {
024                    return new ResourceReference(BaseItemButton.class, "image/trash.png");
025            }
026    }