16 # import standard library |
16 # import standard library |
17 |
17 |
18 # import interfaces |
18 # import interfaces |
19 from pyams_content.component.paragraph.interfaces import IParagraphFactory |
19 from pyams_content.component.paragraph.interfaces import IParagraphFactory |
20 from pyams_content.features.checker.interfaces import IContentChecker, ERROR_VALUE, MISSING_VALUE, MISSING_LANG_VALUE |
20 from pyams_content.features.checker.interfaces import IContentChecker, ERROR_VALUE, MISSING_VALUE, MISSING_LANG_VALUE |
21 from pyams_content.shared.imagemap.interfaces import IImageMapParagraph, IMAGEMAP_PARAGRAPH_TYPE |
21 from pyams_content.shared.imagemap.interfaces import IImageMapParagraph, IMAGEMAP_PARAGRAPH_TYPE, \ |
|
22 IMAGEMAP_PARAGRAPH_RENDERERS |
22 from pyams_i18n.interfaces import II18nManager, INegotiator, II18n |
23 from pyams_i18n.interfaces import II18nManager, INegotiator, II18n |
23 from pyams_workflow.interfaces import IWorkflow, IWorkflowState |
24 from pyams_workflow.interfaces import IWorkflow, IWorkflowState |
24 |
25 |
25 # import packages |
26 # import packages |
26 from pyams_content.component.paragraph import BaseParagraph, BaseParagraphContentChecker, BaseParagraphFactory |
27 from pyams_content.component.paragraph import BaseParagraph, BaseParagraphContentChecker, BaseParagraphFactory |
|
28 from pyams_content.features.renderer import RenderersVocabulary |
27 from pyams_sequence.utility import get_reference_target |
29 from pyams_sequence.utility import get_reference_target |
28 from pyams_utils.adapter import adapter_config |
30 from pyams_utils.adapter import adapter_config |
|
31 from pyams_utils.factory import factory_config |
29 from pyams_utils.registry import utility_config, get_utility |
32 from pyams_utils.registry import utility_config, get_utility |
30 from pyams_utils.traversing import get_parent |
33 from pyams_utils.traversing import get_parent |
|
34 from pyams_utils.vocabulary import vocabulary_config |
31 from zope.interface import implementer |
35 from zope.interface import implementer |
32 from zope.schema.fieldproperty import FieldProperty |
36 from zope.schema.fieldproperty import FieldProperty |
33 |
37 |
34 from pyams_content import _ |
38 from pyams_content import _ |
35 |
39 |
36 |
40 |
37 @implementer(IImageMapParagraph) |
41 @implementer(IImageMapParagraph) |
|
42 @factory_config(provided=IImageMapParagraph) |
38 class ImageMapParagraph(BaseParagraph): |
43 class ImageMapParagraph(BaseParagraph): |
39 """Image map paragraph""" |
44 """Image map paragraph""" |
40 |
45 |
41 icon_class = 'fa-location-arrow' |
46 icon_class = 'fa-location-arrow' |
42 icon_hint = _("Image map") |
47 icon_hint = _("Image map") |
43 |
48 |
44 reference = FieldProperty(IImageMapParagraph['reference']) |
49 reference = FieldProperty(IImageMapParagraph['reference']) |
|
50 renderer = FieldProperty(IImageMapParagraph['renderer']) |
45 |
51 |
46 def get_target(self, state=None): |
52 def get_target(self, state=None): |
47 return get_reference_target(self.reference, state) |
53 return get_reference_target(self.reference, state) |
48 |
54 |
49 |
55 |