use of com.google.gwt.cell.client.EditTextCell in project rstudio by rstudio.
the class ModifyKeyboardShortcutsWidget method editableTextColumn.
private Column<KeyboardShortcutEntry, String> editableTextColumn(String name, final ValueGetter<KeyboardShortcutEntry> getter) {
EditTextCell editTextCell = new EditTextCell() {
@Override
public void onBrowserEvent(final Context context, final Element parent, final String value, final NativeEvent event, final ValueUpdater<String> updater) {
// handler.
if (event.getType().equals("keyup") && event.getKeyCode() == KeyCodes.KEY_ESCAPE) {
parent.getFirstChildElement().blur();
return;
}
super.onBrowserEvent(context, parent, value, event, updater);
}
};
Column<KeyboardShortcutEntry, String> column = new Column<KeyboardShortcutEntry, String>(editTextCell) {
@Override
public String getValue(KeyboardShortcutEntry binding) {
return getter.getValue(binding);
}
};
column.setFieldUpdater(new FieldUpdater<KeyboardShortcutEntry, String>() {
@Override
public void update(int index, KeyboardShortcutEntry binding, String value) {
KeySequence keys = KeySequence.fromShortcutString(value);
// adding a new key sequence.
if (keys.equals(binding.getOriginalKeySequence())) {
changes_.remove(binding);
binding.restoreOriginalKeySequence();
} else {
KeyboardShortcutEntry newBinding = new KeyboardShortcutEntry(binding.getId(), binding.getName(), keys, binding.getCommandType(), true, binding.getContext());
changes_.put(binding, newBinding);
binding.setKeySequence(keys);
}
table_.setKeyboardSelectedColumn(0);
updateData(dataProvider_.getList());
}
});
column.setSortable(true);
table_.addColumn(column, new TextHeader(name));
return column;
}
use of com.google.gwt.cell.client.EditTextCell in project drools-wb by kiegroup.
the class GuidedScoreCardEditor method addAttributeCellTable.
private Widget addAttributeCellTable(final FlexTable cGrid, final Characteristic characteristic, final boolean enumColumn, final String dataType, final List<String> operators) {
String[] enumValues = null;
if (characteristic != null) {
// enum values
if (enumColumn) {
String factName = characteristic.getFact();
String fieldName = characteristic.getField();
enumValues = oracle.getEnumValues(factName, fieldName);
}
}
final CellTable<Attribute> attributeCellTable = new CellTable<Attribute>();
// Operators column
final DynamicSelectionCell categoryCell = new DynamicSelectionCell(operators);
final Column<Attribute, String> operatorColumn = new Column<Attribute, String>(categoryCell) {
public String getValue(final Attribute object) {
return object.getOperator();
}
};
operatorColumn.setFieldUpdater(new FieldUpdater<Attribute, String>() {
public void update(int index, Attribute object, String value) {
object.setOperator(value);
attributeCellTable.redraw();
}
});
// Value column
Column<Attribute, String> valueColumn = null;
if (enumValues != null && enumValues.length > 0) {
valueColumn = new Column<Attribute, String>(new DynamicSelectionCell(Arrays.asList(enumValues))) {
public String getValue(final Attribute object) {
return object.getValue();
}
};
valueColumn.setFieldUpdater(new FieldUpdater<Attribute, String>() {
public void update(int index, Attribute object, String value) {
object.setValue(value);
attributeCellTable.redraw();
}
});
}
if (valueColumn == null) {
valueColumn = new Column<Attribute, String>(new CustomEditTextCell()) {
public String getValue(final Attribute attribute) {
return attribute.getValue();
}
};
valueColumn.setFieldUpdater(new FieldUpdater<Attribute, String>() {
public void update(int index, Attribute object, String value) {
object.setValue(value);
attributeCellTable.redraw();
}
});
}
// Partial Score column
final EditTextCell partialScoreCell = new EditTextCell();
final Column<Attribute, String> partialScoreColumn = new Column<Attribute, String>(partialScoreCell) {
public String getValue(final Attribute attribute) {
return "" + attribute.getPartialScore();
}
};
partialScoreColumn.setFieldUpdater(new FieldUpdater<Attribute, String>() {
public void update(int index, Attribute object, String value) {
try {
double d = Double.parseDouble(value);
object.setPartialScore(d);
} catch (Exception e1) {
partialScoreCell.clearViewData(object);
}
attributeCellTable.redraw();
}
});
// Reason Code column
final Column<Attribute, String> reasonCodeColumn = new Column<Attribute, String>(new EditTextCell()) {
public String getValue(final Attribute attribute) {
return attribute.getReasonCode();
}
};
reasonCodeColumn.setFieldUpdater(new FieldUpdater<Attribute, String>() {
public void update(int index, Attribute object, String value) {
object.setReasonCode(value);
attributeCellTable.redraw();
}
});
final ActionCell.Delegate<Attribute> delegate = new ActionCell.Delegate<Attribute>() {
public void execute(final Attribute attribute) {
if (Window.confirm(GuidedScoreCardConstants.INSTANCE.promptDeleteAttribute())) {
final List<Attribute> list = characteristicsAttrMap.get(cGrid).getList();
list.remove(attribute);
if ("boolean".equalsIgnoreCase(dataType)) {
((Button) cGrid.getWidget(0, 3)).setEnabled(list.size() != 2);
}
attributeCellTable.redraw();
}
}
};
final Cell<Attribute> actionCell = new ActionCell<Attribute>(GuidedScoreCardConstants.INSTANCE.remove(), delegate);
final Column<Attribute, String> actionColumn = new IdentityColumn(actionCell);
// Add the columns.
attributeCellTable.addColumn(operatorColumn, GuidedScoreCardConstants.INSTANCE.operator());
attributeCellTable.addColumn(valueColumn, GuidedScoreCardConstants.INSTANCE.value());
attributeCellTable.addColumn(partialScoreColumn, GuidedScoreCardConstants.INSTANCE.partialScore());
attributeCellTable.addColumn(reasonCodeColumn, GuidedScoreCardConstants.INSTANCE.reasonCode());
attributeCellTable.addColumn(actionColumn, GuidedScoreCardConstants.INSTANCE.actions());
attributeCellTable.setWidth("100%", true);
attributeCellTable.setColumnWidth(operatorColumn, 20.0, Style.Unit.PCT);
attributeCellTable.setColumnWidth(valueColumn, 20.0, Style.Unit.PCT);
attributeCellTable.setColumnWidth(partialScoreColumn, 20.0, Style.Unit.PCT);
attributeCellTable.setColumnWidth(reasonCodeColumn, 20.0, Style.Unit.PCT);
attributeCellTable.setColumnWidth(actionColumn, 20.0, Style.Unit.PCT);
ListDataProvider<Attribute> dataProvider = new ListDataProvider<Attribute>();
dataProvider.addDataDisplay(attributeCellTable);
characteristicsAttrMap.put(cGrid, dataProvider);
if ("boolean".equalsIgnoreCase(dataType)) {
CustomEditTextCell etc = (CustomEditTextCell) attributeCellTable.getColumn(1).getCell();
etc.setEnabled(false);
}
return (attributeCellTable);
}
Aggregations