src/pyams_content/component/gallery/zmi/__init__.py
changeset 395 2a39b333a585
parent 363 86d1a240d4dc
child 527 5dd1aa8bedd9
--- a/src/pyams_content/component/gallery/zmi/__init__.py	Sun Feb 11 12:11:05 2018 +0100
+++ b/src/pyams_content/component/gallery/zmi/__init__.py	Thu Feb 15 15:08:29 2018 +0100
@@ -20,8 +20,9 @@
 from io import BytesIO
 
 # import interfaces
-from pyams_content.component.gallery.interfaces import IGallery, IGalleryRenderer
+from pyams_content.component.gallery.interfaces import IGallery
 from pyams_content.component.gallery.zmi.interfaces import IGalleryMediasAddFields, IGalleryContentsView
+from pyams_content.features.renderer.interfaces import IContentRenderer
 from pyams_content.interfaces import MANAGE_CONTENT_PERMISSION
 from pyams_file.interfaces import IFileInfo
 from pyams_form.interfaces.form import IWidgetsPrefixViewletsManager
@@ -32,10 +33,12 @@
 
 # import packages
 from pyams_content.shared.common.zmi import WfSharedContentPermissionMixin
+from pyams_content.features.renderer.zmi import BaseContentRenderer
+from pyams_content.features.renderer.zmi.widget import RendererFieldWidget
 from pyams_form.form import AJAXEditForm
 from pyams_pagelet.pagelet import pagelet_config
-from pyams_template.template import template_config, get_view_template
-from pyams_utils.adapter import adapter_config, ContextRequestAdapter
+from pyams_template.template import template_config
+from pyams_utils.adapter import adapter_config
 from pyams_utils.url import absolute_url
 from pyams_viewlet.viewlet import viewlet_config, Viewlet
 from pyams_zmi.form import AdminDialogEditForm, AdminDialogDisplayForm
@@ -61,6 +64,8 @@
     icon_css_class = 'fa fa-fw fa-picture-o'
 
     fields = field.Fields(IGallery).omit('__parent__', '__file__')
+    fields['renderer'].widgetFactory = RendererFieldWidget
+
     ajax_handler = 'properties.json'
     edit_permission = MANAGE_CONTENT_PERMISSION
 
@@ -154,28 +159,6 @@
 
 
 #
-# Gallery renderers
-#
-
-class BaseGalleryRenderer(ContextRequestAdapter):
-    """Base gallery renderer"""
-
-    def update(self):
-        pass
-
-    render = get_view_template()
-
-
-@adapter_config(name='default', context=(IGallery, IPyAMSLayer), provides=IGalleryRenderer)
-@template_config(template='templates/renderer-default.pt', layer=IPyAMSLayer)
-class DefaultGalleryRenderer(BaseGalleryRenderer):
-    """Default gallery renderer"""
-
-    label = _("Default gallery renderer")
-    weight = 1
-
-
-#
 # Gallery medias downloader
 #