/** * Create a new EnumRadioEditor, for the provided enum class * * @param enumClass the enum class */ public EnumRadioEditor(Class<E> enumClass) { this.handlerManager = new HandlerManager(this); peer = new EnumRadioCellTable<E>( enumClass, GWT.<EnumRadioCellTableResources>create(EnumRadioCellTableResources.class)); // Selection Model selectionModel = new SingleSelectionModel<E>() { @Override public void setSelected(E object, boolean selected) { // enforce disabled set if (peer.getDisabledSet().contains(object)) { return; } else { super.setSelected(object, selected); } }; }; peer.setSelectionModel(selectionModel); selectionModel.addSelectionChangeHandler( new Handler() { @Override public void onSelectionChange(SelectionChangeEvent event) { E selectedObject = selectionModel.getSelectedObject(); setValue(selectedObject); ValueChangeEvent.<E>fire(EnumRadioEditor.this, selectedObject); } }); }
@Override public boolean isAccessible() { return peer.isVisible(); }
@Override public void setAccessible(boolean accessible) { peer.setVisible(accessible); }
@Override public void setTabIndex(int index) { peer.setTabIndex(index); }
@Override public void setFocus(boolean focused) { peer.setFocus(focused); }
public void setEnabled(E value, boolean enabled) { peer.setEnabled(value, enabled); }
@Override public void setEnabled(boolean enabled) { peer.setEnabled(enabled); }
@Override public void setAccessKey(char key) { peer.setAccessKey(key); }
@Override public boolean isEnabled() { return peer.isEnabled(); }
@Override public int getTabIndex() { return peer.getTabIndex(); }
@Override public HandlerRegistration addKeyUpHandler(KeyUpHandler handler) { return peer.addHandler(handler, KeyUpEvent.getType()); }