fabric.js: object.prototype functions

by Arjan Haverkamp

JavaScript

fabric.Object.prototype.setOriginToCenter = function() {
	this._originalOriginX = this.originX;
	this._originalOriginY = this.originY;
	var center = this.getCenterPoint();
	this.set({
		originX: 'center',
		originY: 'center',
		left: center.x,
		top: center.y
	});
};

fabric.Object.prototype.setCenterToOrigin = function() {
	var originPoint = this.translateToOriginPoint(
	this.getCenterPoint(),
	this._originalOriginX,
	this._originalOriginY);
	this.set({
		originX: this._originalOriginX,
		originY: this._originalOriginY,
		left: originPoint.x,
		top: originPoint.y
	});
};

fabric.Object.prototype.getZIndex = function() {
	return this.canvas.getObjects().indexOf(this);
}

fabric.Canvas.prototype.addToPosition = function(object,position) {
	this.add(object);
	while(object.getZIndex() > position) {
		this.sendBackwards(object);
	}
}

fabric.Object.prototype.hide = function() {
	this.set({ hidden:true, opacity: 0, selectable: false });
};

fabric.Object.prototype.show = function() {
	this.set({ hidden:false, opacity: 1, selectable: true });
};