Note: if a RadioGroup/Select has configured items, the 'items' subnode is present inside and next to 'field' subnode. not sure that this is the correct behavior.
@DialogField(label = "MultiRTE")
@Multiple
@RichTextEditor(
features = {
RteFeatures.UNDO_UNDO,
RteFeatures.UNDO_REDO,
RteFeatures.SEPARATOR,
RteFeatures.Popovers.EDIT_ALL,
RteFeatures.SEPARATOR,
RteFeatures.Popovers.FORMAT_ALL,
RteFeatures.Popovers.STYLES,
RteFeatures.Popovers.JUSTIFY_ALL,
RteFeatures.SEPARATOR,
RteFeatures.MISCTOOLS_SPECIALCHARS,
RteFeatures.SEPARATOR,
RteFeatures.Popovers.PARAFORMAT
},
htmlPasteRules = @HtmlPasteRules(
allowImages = false,
allowLists = AllowElement.DISALLOW,
allowTables = AllowElement.DISALLOW
),
externalStyleSheets = {PathConstants.EXTERNAL_STYLE_PATH},
styles = {
@Style(cssName = "rte-style", text = "Aggressive style"),
},
icons = {
@IconMapping(command = "#styles", icon = "textColor"),
@IconMapping(command = "#edit", icon = "textEdit")
},
htmlLinkRules = @HtmlLinkRules(
targetInternal = LinkTarget.MANUAL,
targetExternal = LinkTarget.BLANK,
protocols = {"http://", "https://"},
defaultProtocol = "https://"
),
specialCharacters = {
@Characters(name = "Copyright", entity = "©"),
@Characters(name = "Euro sign", entity = "€"),
@Characters(name = "Trademark", entity = "™"),
@Characters(rangeStart = 48, rangeEnd = 70),
},
formats = {
@ParagraphFormat(tag = "h1", description = "My custom header"),
@ParagraphFormat(tag = "h2", description = "My custom subheader")
}
)
private String multiRTE;
@DialogField(label = "Multi Radio")
@Multiple
@RadioGroup(datasource = @DataSource(path = "a/b", resourceType = "c/d"))
private String multiRadio;
@DialogField(label = "Multi select")
@Multiple
@Select(optionProvider = @OptionProvider(value = @OptionSource(value = "aaa")))
private String multiSelect;
@DialogField(label = "Multi autocomplete")
@Multiple
@Autocomplete(datasource = @AutocompleteDatasource(namespaces = "a, b"),
options = @AutocompleteList(src = "aaa"))
private String multiAutoComplete;