import org.gwtbootstrap3.client.ui.gwt.ButtonCell; //导入依赖的package包/类
protected com.google.gwt.user.cellview.client.Column, String> createAttributeRemoveColumn() {
// On read mode, remove button not present.
if (!canManageAttributes()) {
return null;
}
// Create remove button column.
final ButtonCell removeButtonCell = new ButtonCell(IconType.CLOSE,
ButtonType.LINK,
ButtonSize.SMALL);
final com.google.gwt.user.cellview.client.Column, String> removeColumn =
new com.google.gwt.user.cellview.client.Column, String>(removeButtonCell) {
@Override
public String getValue(final Entry object) {
// if can be removed return empty string, if not, return null
if (object != null) {
final UserManager.UserAttribute attribute = getAttribute(object.getKey());
if (attribute != null && !attribute.isMandatory() && attribute.isEditable()) {
removeButtonCell.setEnabled(true);
return "";
}
}
removeButtonCell.setEnabled(false);
return null;
}
};
removeColumn.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_CENTER);
removeColumn.setFieldUpdater(canManageAttributes() ? removeButtonHandler : null);
return removeColumn;
}