/** * A veritical line sprite. The x and y configs set the center of the line with the size * value determining the height of the line (the line will be twice the height of 'size' * since 'size' is added to above and below 'y' to set the line endpoints). * * @example * Ext.create({ * xtype: 'draw', * renderTo: document.body, * width: 600, * height: 400, * sprites: [{ * type: 'tick', * x: 20, * y: 40, * size: 10, * strokeStyle: '#388FAD', * lineWidth: 2 * }] * }); */Ext.define('Ext.draw.sprite.Tick', { extend: 'Ext.draw.sprite.Line', alias: 'sprite.tick', inheritableStatics: { def: { processors: { /** * @cfg {Object} x The position of the center of the sprite on the x-axis. */ x: 'number', /** * @cfg {Object} y The position of the center of the sprite on the y-axis. */ y: 'number', /** * @cfg {Number} [size=4] The size of the sprite. * Meant to be comparable to the size of a circle sprite with the same radius. */ size: 'number' }, defaults: { x: 0, y: 0, size: 4 }, triggers: { x: 'tick', y: 'tick', size: 'tick' }, updaters: { tick: function (attr) { var size = attr.size * 1.5, halfLineWidth = attr.lineWidth / 2, x = attr.x, y = attr.y; this.setAttributes({ fromX: x - halfLineWidth, fromY: y - size, toX: x - halfLineWidth, toY: y + size }); } } } } });