Collection<String> values = getValues(m_configuration);
if (values.size() > 0) {
String[] uniqueValues = values.toArray(new String[values.size()]);
Arrays.sort(uniqueValues);
final CheckBoxTable cbt = getCheckBoxTable(getCallback().getShell(), uniqueValues, titleId);
String content = getText();
if(! StringUtils.isEmptyString(content)) {
List<String> s = StringUtils.stringToList(content);
String[] existingValues = s.toArray(new String[s.size()]);
cbt.checkElements(existingValues);
}
if(SelectionStatusDialog.CANCEL != cbt.open()) {
String[] selectedValues = cbt.getSelectedElements();
m_valueMap = onSelect(selectedValues);
setText(StringUtils.listToString(Arrays.asList(selectedValues)));
}