src/pyams_content/shared/imagemap/zmi/paragraph.py
changeset 555 8e8a14452567
parent 546 213db0cb6b4c
child 591 b694d5667d17
equal deleted inserted replaced
554:120ce09ade94 555:8e8a14452567
    19 from pyams_content.component.paragraph.interfaces import IParagraphContainerTarget, IParagraphContainer
    19 from pyams_content.component.paragraph.interfaces import IParagraphContainerTarget, IParagraphContainer
    20 from pyams_content.component.paragraph.zmi.interfaces import IParagraphInnerEditor, IParagraphContainerView
    20 from pyams_content.component.paragraph.zmi.interfaces import IParagraphInnerEditor, IParagraphContainerView
    21 from pyams_content.interfaces import MANAGE_CONTENT_PERMISSION
    21 from pyams_content.interfaces import MANAGE_CONTENT_PERMISSION
    22 from pyams_content.shared.common.interfaces import IWfSharedContent
    22 from pyams_content.shared.common.interfaces import IWfSharedContent
    23 from pyams_content.shared.imagemap.interfaces import IImageMapParagraph, IMAGEMAP_PARAGRAPH_TYPE
    23 from pyams_content.shared.imagemap.interfaces import IImageMapParagraph, IMAGEMAP_PARAGRAPH_TYPE
    24 from pyams_form.interfaces.form import IInnerForm, IEditFormButtons, IWidgetsSuffixViewletsManager
    24 from pyams_form.interfaces.form import IInnerForm, IWidgetsSuffixViewletsManager
    25 from pyams_i18n.interfaces import II18n
    25 from pyams_i18n.interfaces import II18n
    26 from pyams_skin.interfaces.viewlet import IToolbarAddingMenu
    26 from pyams_skin.interfaces.viewlet import IToolbarAddingMenu
    27 from pyams_skin.layer import IPyAMSLayer
    27 from pyams_skin.layer import IPyAMSLayer
    28 from z3c.form.interfaces import INPUT_MODE
    28 from z3c.form.interfaces import INPUT_MODE
    29 
    29 
    30 # import packages
    30 # import packages
    31 from pyams_content.component.paragraph.zmi import BaseParagraphAJAXAddForm, BaseParagraphAJAXEditForm, \
    31 from pyams_content.component.paragraph.zmi import BaseParagraphAJAXAddForm, BaseParagraphAJAXEditForm, \
    32     BaseParagraphAddMenu, BaseParagraphPropertiesEditForm
    32     BaseParagraphAddMenu, BaseParagraphPropertiesEditForm, IParagraphEditFormButtons
       
    33 from pyams_content.features.renderer.zmi.widget import RendererFieldWidget
    33 from pyams_content.shared.imagemap.paragraph import ImageMapParagraph
    34 from pyams_content.shared.imagemap.paragraph import ImageMapParagraph
    34 from pyams_pagelet.pagelet import pagelet_config
    35 from pyams_pagelet.pagelet import pagelet_config
    35 from pyams_skin.event import get_json_form_refresh_event
    36 from pyams_skin.event import get_json_form_refresh_event
    36 from pyams_template.template import template_config
    37 from pyams_template.template import template_config
    37 from pyams_utils.adapter import adapter_config
    38 from pyams_utils.adapter import adapter_config
    95 
    96 
    96     legend = _("Edit paragraph properties")
    97     legend = _("Edit paragraph properties")
    97     icon_css_class = 'fa fa-fw fa-location-arrow'
    98     icon_css_class = 'fa fa-fw fa-location-arrow'
    98 
    99 
    99     fields = field.Fields(IImageMapParagraph).omit('__parent__', '__name__', 'visible')
   100     fields = field.Fields(IImageMapParagraph).omit('__parent__', '__name__', 'visible')
       
   101     fields['renderer'].widgetFactory = RendererFieldWidget
       
   102 
   100     ajax_handler = 'properties.json'
   103     ajax_handler = 'properties.json'
   101     edit_permission = MANAGE_CONTENT_PERMISSION
   104     edit_permission = MANAGE_CONTENT_PERMISSION
   102 
   105 
   103 
   106 
   104 @view_config(name='properties.json', context=IImageMapParagraph, request_type=IPyAMSLayer,
   107 @view_config(name='properties.json', context=IImageMapParagraph, request_type=IPyAMSLayer,
   116     ajax_handler = 'inner-properties.json'
   119     ajax_handler = 'inner-properties.json'
   117 
   120 
   118     @property
   121     @property
   119     def buttons(self):
   122     def buttons(self):
   120         if self.mode == INPUT_MODE:
   123         if self.mode == INPUT_MODE:
   121             return button.Buttons(IEditFormButtons)
   124             return button.Buttons(IParagraphEditFormButtons)
   122         else:
   125         else:
   123             return button.Buttons()
   126             return button.Buttons()
   124 
   127 
   125 
   128 
   126 @view_config(name='inner-properties.json', context=IImageMapParagraph, request_type=IPyAMSLayer,
   129 @view_config(name='inner-properties.json', context=IImageMapParagraph, request_type=IPyAMSLayer,