05-09-2013 06:15 PM
@Override
public Field getPropertyField(FormProperty formProperty) {
final TwinColSelect select = new TwinColSelect("Send status emails to:");
Object formValues = formProperty.getType().getInformation("values");
// Put some data in the select
String emailList[] = {"Email one", "Email two", "Email three"};
for (int i=0; i<emailList.length; i++)
select.addItem(emailList);
//Set various list properties
select.setLeftColumnCaption("Choices");
select.setRightColumnCaption("Going to…");
select.setRows(5);
select.setNewItemsAllowed(true);
// Preselect a few items
//Remove the first and last character
String temp = formProperty.getValue();
if (temp != null){
temp = formProperty.getValue().substring(1);
temp = temp.substring(0, temp.length() - 1);
int numberOfEmails = StringUtils.countMatches(temp, ", ") + 1;
String[] emailData = new String[numberOfEmails];
if (numberOfEmails > 1){
emailData = temp.split(", ");
}else{
emailData[0] = temp;
}
//Be sure new added items make it in the list
for (int i=0; i<emailData.length; i++){
select.addItem(emailData);
}
HashSet<String> preselected = new HashSet<String>();
Collections.addAll(preselected, emailData);
select.setValue(preselected);
}
return select;
}
<userTask id="usertask1" name="First task" activiti:assignee="erics">
<extensionElements>
<activiti:formProperty id="desc" name="Decsription" type="textArea"></activiti:formProperty>
<activiti:formProperty id="emails" name="Emails" type="emailChecklist">
<activiti:value id="Testing1" name="Testing1"></activiti:value>
<activiti:value id="Testing2" name="Testing2"></activiti:value>
</activiti:formProperty>
</extensionElements>
</userTask>
05-10-2013 10:40 AM
05-14-2013 04:04 AM
public AbstractFormType parseFormPropertyType(FormProperty formProperty) {
if("emailCheckList".equals(formProperty.getType()) {
Map<String, String> values = new LinkedHashMap<String, String>();
for (FormValue formValue: formProperty.getFormValues()) {
values.put(formValue.getId(), formValue.getName());
}
formType = new YourOwnFormType(values);
} else {
return super.parseFormPropertyType(…);
}
Tags
Find what you came for
We want to make your experience in Hyland Connect as valuable as possible, so we put together some helpful links.