src/pyams_default_theme/component/paragraph/zmi/map.py
changeset 546 4d60dd445586
parent 543 75d913d682d4
equal deleted inserted replaced
545:6c3a314183f0 546:4d60dd445586
    12 
    12 
    13 __docformat__ = 'restructuredtext'
    13 __docformat__ = 'restructuredtext'
    14 
    14 
    15 
    15 
    16 from pyams_content.component.paragraph.interfaces.map import have_gis
    16 from pyams_content.component.paragraph.interfaces.map import have_gis
       
    17 
       
    18 
    17 if have_gis:
    19 if have_gis:
    18 
    20 
    19     # import standard library
    21     from z3c.form import field
       
    22     from z3c.form.browser.checkbox import SingleCheckBoxFieldWidget
    20 
    23 
    21     # import interfaces
    24     from pyams_default_theme.component.paragraph.interfaces.map import \
    22     from pyams_default_theme.component.paragraph.interfaces.map import IMapParagraphDefaultRendererSettings
    25         IMapParagraphDefaultRendererSettings
    23     from pyams_form.interfaces.form import IFormManager
    26     from pyams_form.interfaces.form import IFormManager
       
    27     from pyams_form.manager import DialogEditFormFormManager
    24     from pyams_skin.layer import IPyAMSLayer
    28     from pyams_skin.layer import IPyAMSLayer
    25 
       
    26     # import packages
       
    27     from pyams_content.features.renderer.zmi import RendererPropertiesEditForm
    29     from pyams_content.features.renderer.zmi import RendererPropertiesEditForm
    28     from pyams_form.group import NamedWidgetsGroup
    30     from pyams_form.group import NamedWidgetsGroup
    29     from pyams_utils.adapter import adapter_config, ContextRequestViewAdapter
    31     from pyams_utils.adapter import adapter_config
    30     from pyams_zmi.form import AdminDialogEditForm
    32     from pyams_zmi.form import AdminDialogEditForm
    31     from z3c.form import field
       
    32     from z3c.form.browser.checkbox import SingleCheckBoxFieldWidget
       
    33 
    33 
    34     from pyams_default_theme import _
    34     from pyams_default_theme import _
    35 
    35 
    36 
    36 
    37     @adapter_config(context=(IMapParagraphDefaultRendererSettings, IPyAMSLayer, RendererPropertiesEditForm),
    37     @adapter_config(context=(IMapParagraphDefaultRendererSettings, IPyAMSLayer,
       
    38                              RendererPropertiesEditForm),
    38                     provides=IFormManager)
    39                     provides=IFormManager)
    39     class MapParagraphDefaultRendererSettingsFormManager(ContextRequestViewAdapter):
    40     class MapParagraphDefaultRendererSettingsFormManager(DialogEditFormFormManager):
    40         """Map paragraph default renderer settings form manager"""
    41         """Map paragraph default renderer settings form manager"""
    41 
    42 
    42         def getFields(self):
    43         def getFields(self):
    43             fields = field.Fields(IMapParagraphDefaultRendererSettings).omit('use_default_map_configuration')
    44             fields = field.Fields(IMapParagraphDefaultRendererSettings).omit(
       
    45                 'use_default_map_configuration')
    44             fields['no_use_default_map_configuration'].widgetFactory = SingleCheckBoxFieldWidget
    46             fields['no_use_default_map_configuration'].widgetFactory = SingleCheckBoxFieldWidget
    45             return fields
    47             return fields
    46 
       
    47         def update(self):
       
    48             view = self.view
       
    49             view.dialog_class = 'modal-large'
       
    50             AdminDialogEditForm.update(view)
       
    51 
       
    52         def updateWidgets(self, prefix=None):
       
    53             AdminDialogEditForm.updateWidgets(self.view, prefix)
       
    54 
       
    55         def updateActions(self):
       
    56             AdminDialogEditForm.updateActions(self.view)
       
    57 
    48 
    58         def updateGroups(self):
    49         def updateGroups(self):
    59             form = self.view
    50             form = self.view
    60             form.add_group(NamedWidgetsGroup(form, 'configuration', form.widgets,
    51             form.add_group(NamedWidgetsGroup(form, 'configuration', form.widgets,
    61                                              list(form.fields.keys()[:-1]),
    52                                              list(form.fields.keys()[:-1]),
    62                                              legend=_("Don't use default map configuration"),
    53                                              legend=_("Don't use default map configuration"),
    63                                              css_class='inner',
    54                                              css_class='inner',
    64                                              switch=True,
    55                                              switch=True,
    65                                              checkbox_switch=True,
    56                                              checkbox_switch=True,
    66                                              checkbox_field=IMapParagraphDefaultRendererSettings['no_use_default_map_configuration']))
    57                                              checkbox_field=IMapParagraphDefaultRendererSettings[
       
    58                                                  'no_use_default_map_configuration']))
    67             AdminDialogEditForm.updateGroups(form)
    59             AdminDialogEditForm.updateGroups(form)