This repository has been archived on 2023-02-21. You can view files and clone it, but cannot push or open issues or pull requests.
themis.fields/themisfields/widgets.py

29 lines
922 B
Python

from Acquisition import ImplicitAcquisitionWrapper
from zope.interface import implementsOnly, implementer
from zope.component import adapts, adapter
from z3c.form.interfaces import IFormLayer, IFieldWidget
from z3c.form.widget import FieldWidget
from themisfields.interfaces import ICommission
from plone.formwidget.autocomplete.interfaces import IAutocompleteWidget
from plone.formwidget.autocomplete.widget import AutocompleteSelectionWidget
from plone.formwidget.autocomplete import AutocompleteFieldWidget
class ICommissionWidget(IAutocompleteWidget):
pass
class CommissionWidget(AutocompleteSelectionWidget):
implementsOnly(ICommissionWidget)
klass = u'commissionWidget'
@adapter(ICommission, IFormLayer)
@implementer(IFieldWidget)
def CommissionFieldWidget(field, request):
"""IFieldWidget factory for CommissionWidget."""
return FieldWidget(field, AutocompleteSelectionWidget(request))