added uniqueValues property to Multi fields
This commit is contained in:
parent
df337cd995
commit
305cb6581d
|
@ -279,6 +279,12 @@ class Multi(BaseWidget):
|
|||
reorderingButtons_kindName = 'Boolean'
|
||||
|
||||
thingPublicName = N_('Multi-Line Field')
|
||||
|
||||
uniqueValues = 0
|
||||
uniqueValues_kind_importExport = 'private'
|
||||
uniqueValues_kind_stateInEditMode = 'hidden'
|
||||
uniqueValues_kind_stateInViewMode = 'hidden'
|
||||
uniqueValues_kindName = 'Boolean'
|
||||
register(Multi)
|
||||
|
||||
|
||||
|
|
|
@ -920,7 +920,10 @@ class Multi(WidgetMixin, proxyWidgets.Multi):
|
|||
fieldset += X.li(childWidget)
|
||||
if kind.canAddItem(slot, fields):
|
||||
addButtonName = slot.getFieldOptionName('addButton')
|
||||
layout += X.buttonInForm('add', addButtonName)
|
||||
if self.addButtonLabel:
|
||||
layout += X.buttonInForm(self.addButtonLabel, addButtonName)
|
||||
else:
|
||||
layout += X.buttonInForm('add', addButtonName)
|
||||
if self.apply:
|
||||
layout += X.buttonInForm('apply', 'applyButton')
|
||||
return layout
|
||||
|
@ -978,6 +981,12 @@ class Multi(WidgetMixin, proxyWidgets.Multi):
|
|||
continue
|
||||
value.append(itemValue)
|
||||
|
||||
if self.uniqueValues:
|
||||
uniq = {}
|
||||
for v in value:
|
||||
uniq[v] = 1
|
||||
value = uniq.keys()
|
||||
|
||||
addButtonName = slot.getFieldOptionName('addButton')
|
||||
if isButtonSelected(addButtonName, fields):
|
||||
itemSlot = kind.getItemSlot(slot, count)
|
||||
|
|
Reference in New Issue