mirror of
https://github.com/konvajs/konva.git
synced 2026-01-08 18:54:40 +08:00
added layer hitGraphEnabled flag
This commit is contained in:
54
src/Layer.js
54
src/Layer.js
@@ -263,22 +263,43 @@
|
||||
},
|
||||
getStage: function() {
|
||||
return this.parent;
|
||||
},
|
||||
/**
|
||||
* enable hit graph
|
||||
* @name enableHitGraph
|
||||
* @method
|
||||
* @memberof Kinetic.Layer.prototype
|
||||
* @returns {Node}
|
||||
*/
|
||||
enableHitGraph: function() {
|
||||
this.setHitGraphEnabled(true);
|
||||
return this;
|
||||
},
|
||||
/**
|
||||
* disable hit graph
|
||||
* @name enableHitGraph
|
||||
* @method
|
||||
* @memberof Kinetic.Layer.prototype
|
||||
* @returns {Node}
|
||||
*/
|
||||
disableHitGraph: function() {
|
||||
this.setHitGraphEnabled(false);
|
||||
return this;
|
||||
}
|
||||
});
|
||||
Kinetic.Util.extend(Kinetic.Layer, Kinetic.Container);
|
||||
|
||||
// add getters and setters
|
||||
Kinetic.Factory.addGetterSetter(Kinetic.Layer, 'clearBeforeDraw', function() {
|
||||
return true;
|
||||
});
|
||||
Kinetic.Factory.addGetterSetter(Kinetic.Layer, 'clearBeforeDraw', true);
|
||||
|
||||
/**
|
||||
* set flag which determines if the layer is cleared or not
|
||||
* before drawing
|
||||
* @name setClearBeforeDraw
|
||||
* @method
|
||||
* @memberof Kinetic.Node.prototype
|
||||
* @memberof Kinetic.Layer.prototype
|
||||
* @param {Boolean} clearBeforeDraw
|
||||
* @returns {Node}
|
||||
*/
|
||||
|
||||
/**
|
||||
@@ -286,6 +307,29 @@
|
||||
* before drawing
|
||||
* @name getClearBeforeDraw
|
||||
* @method
|
||||
* @memberof Kinetic.Node.prototype
|
||||
* @memberof Kinetic.Layer.prototype
|
||||
* @returns {Boolean}
|
||||
*/
|
||||
|
||||
Kinetic.Factory.addGetterSetter(Kinetic.Layer, 'hitGraphEnabled', true);
|
||||
|
||||
/**
|
||||
* enable / disable hit graph
|
||||
* @name setHitGraphEnabled
|
||||
* @method
|
||||
* @memberof Kinetic.Layer.prototype
|
||||
* @param {Boolean} enable
|
||||
* @returns {Node}
|
||||
*/
|
||||
|
||||
/**
|
||||
* get flag which determines if the layer is cleared or not
|
||||
* before drawing
|
||||
* @name getHitGraphEnabled
|
||||
* @method
|
||||
* @memberof Kinetic.Layer.prototype
|
||||
* @returns {Boolean}
|
||||
*/
|
||||
|
||||
Kinetic.Layer.prototype.isHitGraphEnabled = Kinetic.Layer.prototype.getHitGraphEnabled;
|
||||
})();
|
||||
|
||||
@@ -418,7 +418,8 @@
|
||||
* @returns {Boolean}
|
||||
*/
|
||||
shouldDrawHit: function() {
|
||||
return this.isListening() && this.isVisible() && !Kinetic.isDragging();
|
||||
var layer = this.getLayer();
|
||||
return layer && layer.isHitGraphEnabled() && this.isListening() && this.isVisible() && !Kinetic.isDragging();
|
||||
},
|
||||
/**
|
||||
* determine if node is visible or not. Node is visible only
|
||||
|
||||
@@ -82,6 +82,9 @@
|
||||
this._setAttr(CONTAINER, container);
|
||||
return this;
|
||||
},
|
||||
shouldDrawHit: function() {
|
||||
return true;
|
||||
},
|
||||
draw: function() {
|
||||
Kinetic.Node.prototype.draw.call(this);
|
||||
return this;
|
||||
|
||||
Reference in New Issue
Block a user