src/pyams_content/component/paragraph/zmi/frame.py
changeset 1243 837612af4dc3
parent 1127 a76066afc55b
child 1285 a869fd818ea7
--- a/src/pyams_content/component/paragraph/zmi/frame.py	Thu Jan 17 12:41:14 2019 +0100
+++ b/src/pyams_content/component/paragraph/zmi/frame.py	Thu Jan 17 16:42:32 2019 +0100
@@ -12,7 +12,7 @@
 
 __docformat__ = 'restructuredtext'
 
-from z3c.form import button, field
+from z3c.form import button
 from z3c.form.interfaces import INPUT_MODE
 from zope.interface import Interface, implementer
 
@@ -20,16 +20,14 @@
 from pyams_content.component.association.zmi import AssociationsTable
 from pyams_content.component.association.zmi.interfaces import IAssociationsParentForm
 from pyams_content.component.paragraph.frame import FrameParagraph
-from pyams_content.component.paragraph.interfaces import IBaseParagraph, IParagraphContainer, \
-    IParagraphContainerTarget, IParagraphTitle, PARAGRAPH_HIDDEN_FIELDS
+from pyams_content.component.paragraph.interfaces import IBaseParagraph, IParagraphContainerTarget, IParagraphTitle
 from pyams_content.component.paragraph.interfaces.frame import FRAME_PARAGRAPH_TYPE, IFrameParagraph
 from pyams_content.component.paragraph.zmi import BaseParagraphAJAXAddForm, BaseParagraphAJAXEditForm, \
-    BaseParagraphAddMenu, BaseParagraphPropertiesEditForm, IParagraphInnerEditFormButtons, \
+    BaseParagraphAddForm, BaseParagraphAddMenu, BaseParagraphPropertiesEditForm, IParagraphInnerEditFormButtons, \
     get_json_paragraph_refresh_event, get_json_paragraph_toolbar_refresh_event
 from pyams_content.component.paragraph.zmi.container import ParagraphContainerTable, \
     ParagraphTitleToolbarViewletManager
 from pyams_content.component.paragraph.zmi.interfaces import IParagraphContainerView, IParagraphInnerEditor
-from pyams_content.features.renderer.zmi.widget import RendererFieldWidget
 from pyams_content.interfaces import MANAGE_CONTENT_PERMISSION
 from pyams_form.form import ajax_config
 from pyams_form.interfaces.form import IInnerForm
@@ -44,7 +42,6 @@
 from pyams_utils.text import get_text_start
 from pyams_utils.traversing import get_parent
 from pyams_viewlet.viewlet import viewlet_config
-from pyams_zmi.form import AdminDialogAddForm
 from pyams_zmi.interfaces import IPropertiesEditForm
 
 from pyams_content import _
@@ -104,23 +101,16 @@
 @ajax_config(name='add-frame-paragraph.json', context=IParagraphContainerTarget, request_type=IPyAMSLayer,
              base=BaseParagraphAJAXAddForm)
 @implementer(IFrameParagraphForm)
-class FrameParagraphAddForm(AdminDialogAddForm):
+class FrameParagraphAddForm(BaseParagraphAddForm):
     """Framed text paragraph add form"""
 
     legend = _("Add new framed text paragraph")
     dialog_class = 'modal-large'
-    icon_css_class = 'fa fa-fw ' + FrameParagraph.icon_class
+
     label_css_class = 'control-label col-md-2'
     input_css_class = 'col-md-10'
 
-    fields = field.Fields(IFrameParagraph).omit(*PARAGRAPH_HIDDEN_FIELDS)
-    edit_permission = MANAGE_CONTENT_PERMISSION
-
-    def create(self, data):
-        return FrameParagraph()
-
-    def add(self, object):
-        IParagraphContainer(self.context).append(object)
+    content_interface = IFrameParagraph
 
 
 @pagelet_config(name='properties.html', context=IFrameParagraph, layer=IPyAMSLayer,
@@ -135,14 +125,11 @@
 
     legend = _("Edit framed text paragraph properties")
     dialog_class = 'modal-large'
-    icon_css_class = 'fa fa-fw ' + FrameParagraph.icon_class
+
     label_css_class = 'control-label col-md-2'
     input_css_class = 'col-md-10'
 
-    fields = field.Fields(IFrameParagraph).omit(*PARAGRAPH_HIDDEN_FIELDS)
-    fields['renderer'].widgetFactory = RendererFieldWidget
-
-    edit_permission = MANAGE_CONTENT_PERMISSION
+    content_interface = IFrameParagraph
 
     def updateWidgets(self, prefix=None):
         super(FrameParagraphPropertiesEditForm, self).updateWidgets(prefix)