@Override public WidgetDefinition getWidgetDefinition(WidgetDefinition widgetDef, LayoutConversionContext ctx) { String wType = widgetDef.getType(); if (isDirectoryWidget(wType)) { String dirName = (String) widgetDef.getProperties(BuiltinModes.ANY, BuiltinModes.ANY).get(DIR_NAME_PROPERTY); if (dirName == null) { dirName = (String) widgetDef.getProperties(BuiltinModes.ANY, BuiltinWidgetModes.EDIT).get( DIR_NAME_PROPERTY); } if (dirName == null) { dirName = (String) widgetDef.getProperties(BuiltinModes.ANY, BuiltinWidgetModes.VIEW).get( DIR_NAME_PROPERTY); } if (dirName != null) { WidgetDefinition clone = getClonedWidget(widgetDef); // change select options on new widget WidgetSelectOption[] selectOptions = VocabularyHelper.getVocabularySelectOptions(dirName, ctx.getLanguage()).toArray(new WidgetSelectOption[] {}); clone.setSelectOptions(selectOptions); return clone; } } return widgetDef; } }
@Override public WidgetDefinition getWidgetDefinition(WidgetDefinition widgetDef, LayoutConversionContext ctx) { String wType = widgetDef.getType(); String wName = widgetDef.getName(); if (getAcceptedWidgetNames().contains(wName) && isAccepted(wType)) { WidgetDefinition clone = getClonedWidget(widgetDef); // change select options on new widget WidgetSelectOption[] selectOptions = VocabularyHelper.getChainSelectVocabularySelectOptions( getParentDirectoryName(), getChildDirectoryName(), ctx.getLanguage()).toArray( new WidgetSelectOption[] {}); clone.setSelectOptions(selectOptions); return clone; } return widgetDef; } }