# HG changeset patch # User Thierry Florac # Date 1563202354 -7200 # Node ID 8baa284854babdab3e80d9faac60ebfd573074ba # Parent cad3e22cc2bd9e4943068585effba7544eb841cf Added actions support to fields container table diff -r cad3e22cc2bd -r 8baa284854ba src/pyams_content/shared/form/zmi/field.py --- a/src/pyams_content/shared/form/zmi/field.py Fri Jul 12 13:22:37 2019 +0200 +++ b/src/pyams_content/shared/form/zmi/field.py Mon Jul 15 16:52:34 2019 +0200 @@ -12,51 +12,47 @@ __docformat__ = 'restructuredtext' - -# import standard library import json -# import interfaces +from pyramid.decorator import reify +from pyramid.events import subscriber +from pyramid.view import view_config +from z3c.form import field +from z3c.form.interfaces import DISPLAY_MODE, IDataExtractedEvent +from z3c.table.column import GetAttrColumn +from z3c.table.interfaces import IColumn, IValues +from zope.interface import Invalid, implementer + from pyams_content.interfaces import MANAGE_CONTENT_PERMISSION from pyams_content.shared.common.interfaces import IWfSharedContent -from pyams_content.shared.form.interfaces import IFormFieldContainerTarget, IFormFieldContainer, IFormField, \ +from pyams_content.shared.common.zmi import WfModifiedContentColumnMixin +from pyams_content.shared.form.field import FormField +from pyams_content.shared.form.interfaces import IFormField, IFormFieldContainer, IFormFieldContainerTarget, \ IFormFieldFactory from pyams_content.zmi import pyams_content +from pyams_form.form import AJAXAddForm, ajax_config from pyams_form.interfaces.form import IFormSecurityContext +from pyams_form.security import ProtectedFormObjectMixin from pyams_i18n.interfaces import II18n +from pyams_pagelet.pagelet import pagelet_config +from pyams_skin.container import switch_element_visibility +from pyams_skin.interfaces.container import ITableWithActions from pyams_skin.interfaces.viewlet import IWidgetTitleViewletManager from pyams_skin.layer import IPyAMSLayer -from pyams_utils.interfaces import VIEW_SYSTEM_PERMISSION -from pyams_zmi.interfaces.menu import IPropertiesMenu -from pyams_zmi.layer import IAdminLayer -from z3c.form.interfaces import DISPLAY_MODE, IDataExtractedEvent -from z3c.table.interfaces import IColumn, IValues - -# import packages -from pyams_content.shared.common.zmi import WfModifiedContentColumnMixin -from pyams_content.shared.form.field import FormField -from pyams_form.form import AJAXAddForm, ajax_config -from pyams_form.security import ProtectedFormObjectMixin -from pyams_pagelet.pagelet import pagelet_config -from pyams_skin.container import switch_element_visibility -from pyams_skin.table import BaseTable, SorterColumn, I18nColumn, TrashColumn, I18nValueColumn, \ - VisibilitySwitcherColumn +from pyams_skin.table import BaseTable, I18nColumn, I18nValueColumn, SorterColumn, TrashColumn, VisibilitySwitcherColumn from pyams_skin.viewlet.menu import MenuItem from pyams_skin.viewlet.toolbar import ToolbarAction -from pyams_utils.adapter import adapter_config, ContextRequestViewAdapter +from pyams_utils.adapter import ContextRequestViewAdapter, adapter_config from pyams_utils.fanstatic import get_resource_path +from pyams_utils.interfaces import VIEW_SYSTEM_PERMISSION from pyams_utils.traversing import get_parent from pyams_utils.unicode import translate_string from pyams_utils.url import absolute_url from pyams_viewlet.viewlet import viewlet_config from pyams_zmi.form import AdminDialogAddForm, AdminDialogEditForm +from pyams_zmi.interfaces.menu import IPropertiesMenu +from pyams_zmi.layer import IAdminLayer from pyams_zmi.view import ContainerAdminView -from pyramid.decorator import reify -from pyramid.events import subscriber -from pyramid.view import view_config -from z3c.form import field -from z3c.table.column import GetAttrColumn -from zope.interface import Invalid from pyams_content import _ @@ -75,6 +71,7 @@ # Form fields container view # +@implementer(ITableWithActions) class FormFieldsContainerTable(ProtectedFormObjectMixin, BaseTable): """Form fields table"""