mirror of
https://github.com/konvajs/konva.git
synced 2025-04-05 20:48:28 +08:00
refactor
This commit is contained in:
parent
b7c5bb02c0
commit
d48439b952
@ -4,7 +4,7 @@
|
||||
* fixed when browser is crashing on pointer events fixed (and optimized `getIntersection` function)
|
||||
* Enhancements
|
||||
* `container.findOne()` method
|
||||
* new `strokeHit` property. Useful for performance optimizations
|
||||
* new `strokeHitEnabled` property. Useful for performance optimizations
|
||||
|
||||
|
||||
|
||||
|
@ -38,6 +38,7 @@
|
||||
* @param {Integer} [config.strokeBlue] set stroke blue component
|
||||
* @param {Integer} [config.strokeAlpha] set stroke alpha component
|
||||
* @param {Number} [config.strokeWidth] stroke width
|
||||
* @param {Boolean} [config.strokeHitEnabled] flag which enables or disables stroke hit region. The default is true
|
||||
* @param {Boolean} [config.strokeScaleEnabled] flag which enables or disables stroke scale. The default is true
|
||||
* @param {Boolean} [config.strokeEnabled] flag which enables or disables the stroke. The default value is true
|
||||
* @param {String} [config.lineJoin] can be miter, round, or bevel. The default
|
||||
|
@ -580,7 +580,7 @@
|
||||
this.restore();
|
||||
},
|
||||
_stroke: function(shape) {
|
||||
if(shape.hasStroke() && shape.strokeHit()) {
|
||||
if(shape.hasStroke() && shape.strokeHitEnabled()) {
|
||||
// ignore strokeScaleEnabled for Text
|
||||
var strokeScaleEnabled = (shape.getStrokeScaleEnabled() || (shape instanceof Konva.Text));
|
||||
if (!strokeScaleEnabled) {
|
||||
|
20
src/Shape.js
20
src/Shape.js
@ -428,25 +428,25 @@
|
||||
* shape.strokeWidth();
|
||||
*/
|
||||
|
||||
Konva.Factory.addGetterSetter(Konva.Shape, 'strokeHit', true);
|
||||
Konva.Factory.addGetterSetter(Konva.Shape, 'strokeHitEnabled', true);
|
||||
|
||||
/**
|
||||
* get/set stroke hit property. Useful for performance optimization.
|
||||
* You may set `shape.strokeHit(false)`. In this case stroke will be no draw on hit canvas, so hit area
|
||||
* of shape will be decreased (by lineWidth / 2). Remember that non closed line with `strokeHit = false`
|
||||
* get/set strokeHitEnabled property. Useful for performance optimization.
|
||||
* You may set `shape.strokeHitEnabled(false)`. In this case stroke will be no draw on hit canvas, so hit area
|
||||
* of shape will be decreased (by lineWidth / 2). Remember that non closed line with `strokeHitEnabled = false`
|
||||
* will be not drawn on hit canvas, that is mean line will no trigger pointer events (like mouseover)
|
||||
* Default value is true
|
||||
* @name strokeHit
|
||||
* @name strokeHitEnabled
|
||||
* @method
|
||||
* @memberof Konva.Shape.prototype
|
||||
* @param {Boolean} strokeHit
|
||||
* @param {Boolean} strokeHitEnabled
|
||||
* @returns {Boolean}
|
||||
* @example
|
||||
* // get strokeHit
|
||||
* var strokeHit = shape.strokeHit();
|
||||
* // get strokeHitEnabled
|
||||
* var strokeHitEnabled = shape.strokeHitEnabled();
|
||||
*
|
||||
* // set strokeHit
|
||||
* shape.strokeHit();
|
||||
* // set strokeHitEnabled
|
||||
* shape.strokeHitEnabled();
|
||||
*/
|
||||
|
||||
Konva.Factory.addGetterSetter(Konva.Shape, 'lineJoin');
|
||||
|
@ -855,10 +855,10 @@ suite('Shape', function() {
|
||||
strokeWidth: 20
|
||||
});
|
||||
// default value
|
||||
assert.equal(rect.strokeHit(), true);
|
||||
assert.equal(rect.strokeHitEnabled(), true);
|
||||
|
||||
rect.strokeHit(false);
|
||||
assert.equal(rect.strokeHit(), false);
|
||||
rect.strokeHitEnabled(false);
|
||||
assert.equal(rect.strokeHitEnabled(), false);
|
||||
layer.add(rect);
|
||||
stage.add(layer);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user