]>
Commit | Line | Data |
---|---|---|
6527f429 DM |
1 | /**\r |
2 | * A sprite that represents a cross.\r | |
3 | *\r | |
4 | * @example\r | |
5 | * Ext.create({\r | |
6 | * xtype: 'draw', \r | |
7 | * renderTo: document.body,\r | |
8 | * width: 600,\r | |
9 | * height: 400,\r | |
10 | * sprites: [{\r | |
11 | * type: 'cross',\r | |
12 | * translationX: 100,\r | |
13 | * translationY: 100,\r | |
14 | * size: 40,\r | |
15 | * fillStyle: '#1F6D91'\r | |
16 | * }]\r | |
17 | * });\r | |
18 | */\r | |
19 | Ext.define('Ext.draw.sprite.Cross', {\r | |
20 | extend: 'Ext.draw.sprite.Path',\r | |
21 | alias: 'sprite.cross',\r | |
22 | \r | |
23 | inheritableStatics: {\r | |
24 | def: {\r | |
25 | processors: {\r | |
26 | x: 'number',\r | |
27 | y: 'number',\r | |
28 | /**\r | |
29 | * @cfg {Number} [size=4] The size of the sprite.\r | |
30 | * Meant to be comparable to the size of a circle sprite with the same radius.\r | |
31 | */\r | |
32 | size: 'number'\r | |
33 | },\r | |
34 | defaults: {\r | |
35 | x: 0,\r | |
36 | y: 0,\r | |
37 | size: 4\r | |
38 | },\r | |
39 | triggers: {\r | |
40 | x: 'path',\r | |
41 | y: 'path',\r | |
42 | size: 'path'\r | |
43 | }\r | |
44 | }\r | |
45 | },\r | |
46 | \r | |
47 | updatePath: function (path, attr) {\r | |
48 | var s = attr.size / 1.7,\r | |
49 | x = attr.x - attr.lineWidth / 2,\r | |
50 | y = attr.y;\r | |
51 | path.fromSvgString('M'.concat(x - s, ',', y, 'l', [-s, -s, s, -s, s, s, s, -s, s, s, -s, s, s, s, -s, s, -s, -s, -s, s, -s, -s, 'z']));\r | |
52 | }\r | |
53 | \r | |
54 | }); |