@Override
protected IView<SComponent> createActionView(
IActionViewDescriptor viewDescriptor, IActionHandler actionHandler,
Locale locale) {
SButton viewComponent = createSButton();
IValueConnector connector = getConnectorFactory().createValueConnector(
ModelRefPropertyConnector.THIS_PROPERTY);
connector.setExceptionHandler(actionHandler);
IView<SComponent> view = constructView(viewComponent, viewDescriptor,
connector);
viewComponent.setAction(getActionFactory().createAction(
viewDescriptor.getAction(), viewDescriptor.getPreferredSize(),
actionHandler, view, locale));
switch (viewDescriptor.getRenderingOptions()) {
case ICON:
viewComponent.setText(null);
break;
case LABEL:
viewComponent.setIcon(null);
break;
default:
break;
}
return view;
}