final SingleSelectionModel<PropertyRecord> selectionModel = new SingleSelectionModel<PropertyRecord>();
propertyTable.setSelectionModel(selectionModel);
if (!hideButtons) {
ToolStrip propTools = new ToolStrip();
//add
addButton.addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
presenter.launchNewPropertyDialoge(reference);
}
});
addButton.ensureDebugId(Console.DEBUG_CONSTANTS.debug_label_add_propertyEditor());
propTools.addToolButtonRight(addButton);
// remove
removeButton.addClickHandler(
new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
final PropertyRecord property = selectionModel.getSelectedObject();
if(null==property)
{
Console.error("Please select a property");
return;
}
Feedback.confirm(
Console.MESSAGES.removeProperty(),
Console.MESSAGES.removePropertyConfirm(property.getKey())
, new Feedback.ConfirmationHandler() {
@Override
public void onConfirmation(boolean isConfirmed) {
if(isConfirmed)
presenter.onDeleteProperty(reference, property);
}
});
}
});
propTools.addToolButtonRight(removeButton);
panel.add(propTools);
}
ColumnSortEvent.ListHandler<PropertyRecord> sortHandler =
new ColumnSortEvent.ListHandler<PropertyRecord>(propertyProvider.getList());