package be.selckin.swu;
import org.apache.wicket.markup.ComponentTag;
import org.apache.wicket.markup.MarkupStream;
import org.apache.wicket.markup.html.form.Button;
import org.apache.wicket.model.IModel;
import org.apache.wicket.model.Model;
public class LabeledButton<T> extends Button {
private IModel<String> label;
public LabeledButton(String id, String label) {
this(id, Model.of(label));
}
public LabeledButton(String id, IModel<String> label) {
super(id);
this.label = label;
}
@Override
public void onComponentTagBody(MarkupStream markupStream, ComponentTag openTag) {
super.onComponentTagBody(markupStream, openTag);
replaceComponentTagBody(markupStream, openTag, label.getObject());
}
@Override
protected void onDetach() {
super.onDetach();
label.detach();
}
}