added svcapi ui and camunda code
[it/otf.git] / otf-frontend / client / src / app / layout / modeler / color-picker / ColoredRenderer.js
1 /*  Copyright (c) 2019 AT&T Intellectual Property.                             #\r
2 #                                                                              #\r
3 #   Licensed under the Apache License, Version 2.0 (the "License");            #\r
4 #   you may not use this file except in compliance with the License.           #\r
5 #   You may obtain a copy of the License at                                    #\r
6 #                                                                              #\r
7 #       http://www.apache.org/licenses/LICENSE-2.0                             #\r
8 #                                                                              #\r
9 #   Unless required by applicable law or agreed to in writing, software        #\r
10 #   distributed under the License is distributed on an "AS IS" BASIS,          #\r
11 #   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #\r
12 #   See the License for the specific language governing permissions and        #\r
13 #   limitations under the License.                                             #\r
14 ##############################################################################*/\r
15 \r
16 \r
17 import inherits from 'inherits';\r
18 \r
19 import {\r
20   attr as svgAttr\r
21 } from 'tiny-svg';\r
22 \r
23 import BpmnRenderer from 'bpmn-js/lib/draw/BpmnRenderer';\r
24 \r
25 import {\r
26   is\r
27 } from 'bpmn-js/lib/util/ModelUtil';\r
28 \r
29 \r
30 export default function ColoredRenderer(\r
31     config, eventBus, styles,\r
32     pathMap, canvas, textRenderer) {\r
33 \r
34   BpmnRenderer.call(\r
35     this,\r
36     config, eventBus, styles,\r
37     pathMap, canvas, textRenderer,\r
38     1400\r
39   );\r
40 \r
41   this.canRender = function(element) {\r
42     return is(element, 'bpmn:BaseElement') && element.color;\r
43   };\r
44 \r
45   this.drawShape = function(parent, shape) {\r
46 \r
47     var bpmnShape = this.drawBpmnShape(parent, shape);\r
48 \r
49     svgAttr(bpmnShape, { fill: shape.color });\r
50 \r
51     return bpmnShape;\r
52   };\r
53 }\r
54 \r
55 inherits(ColoredRenderer, BpmnRenderer);\r
56 \r
57 ColoredRenderer.prototype.drawBpmnShape = BpmnRenderer.prototype.drawShape;\r
58 \r
59 \r
60 ColoredRenderer.$inject = [\r
61   'config.bpmnRenderer',\r
62   'eventBus',\r
63   'styles',\r
64   'pathMap',\r
65   'canvas',\r
66   'textRenderer'\r
67 ];