Added some event triggers regarding image loading
This commit is contained in:
@@ -12,8 +12,8 @@ function ThreeDHandler(canvas) {
|
|||||||
})
|
})
|
||||||
.addWithUpdate(new fabric.Rect({
|
.addWithUpdate(new fabric.Rect({
|
||||||
width: canvas.width,
|
width: canvas.width,
|
||||||
height: canvas.height - 60,
|
height: canvas.height - 50,
|
||||||
top: 60,
|
top: 50,
|
||||||
left: 0,
|
left: 0,
|
||||||
fill: canvas.backgroundColor,
|
fill: canvas.backgroundColor,
|
||||||
}));
|
}));
|
||||||
|
|||||||
@@ -7,6 +7,8 @@ var DragbarHandler = require('./DragbarHandler');
|
|||||||
var Viewport = require('./Viewport');
|
var Viewport = require('./Viewport');
|
||||||
var ThreeDHandler = require('./3dHandler');
|
var ThreeDHandler = require('./3dHandler');
|
||||||
|
|
||||||
|
var $document = $(document);
|
||||||
|
|
||||||
var Canvas = fabric.util.createClass(fabric.Canvas, {
|
var Canvas = fabric.util.createClass(fabric.Canvas, {
|
||||||
initialize: function (id) {
|
initialize: function (id) {
|
||||||
this.callSuper('initialize', id, {
|
this.callSuper('initialize', id, {
|
||||||
@@ -25,7 +27,7 @@ var Canvas = fabric.util.createClass(fabric.Canvas, {
|
|||||||
this.getApertures().setTransparent(false);
|
this.getApertures().setTransparent(false);
|
||||||
|
|
||||||
// Trigger event to tell the image has been dragged.
|
// Trigger event to tell the image has been dragged.
|
||||||
$(document).trigger('PIE:dragged');
|
$document.trigger('PIE:dragged');
|
||||||
}
|
}
|
||||||
this.renderAll();
|
this.renderAll();
|
||||||
});
|
});
|
||||||
@@ -144,8 +146,23 @@ var Canvas = fabric.util.createClass(fabric.Canvas, {
|
|||||||
return this.get3dHandler().disable();
|
return this.get3dHandler().disable();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$document.trigger('PIE:image-start-load');
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
url: this.get3dUrl(),
|
||||||
|
crossDomain: true,
|
||||||
|
type: "HEAD",
|
||||||
|
cache: true,
|
||||||
|
}).done(function() {
|
||||||
fabric.Image.fromURL(encodeURI(this.get3dUrl()), function (img) {
|
fabric.Image.fromURL(encodeURI(this.get3dUrl()), function (img) {
|
||||||
|
if (!img._element) {
|
||||||
|
$document.trigger('PIE:image-error-load');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
this.get3dHandler().setImage(img);
|
this.get3dHandler().setImage(img);
|
||||||
|
$document.trigger('PIE:image-end-load');
|
||||||
|
}.bind(this));
|
||||||
}.bind(this));
|
}.bind(this));
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -88,6 +88,12 @@
|
|||||||
})
|
})
|
||||||
.on('PIE:dragbar-click', function(e, data) {
|
.on('PIE:dragbar-click', function(e, data) {
|
||||||
console.log('Clicked on a dragbar! Axis: ' + data.axis);
|
console.log('Clicked on a dragbar! Axis: ' + data.axis);
|
||||||
|
})
|
||||||
|
.on('PIE:image-start-load', function() {
|
||||||
|
console.log('Start loading image');
|
||||||
|
})
|
||||||
|
.on('PIE:image-end-load', function() {
|
||||||
|
console.log('Image loaded');
|
||||||
});
|
});
|
||||||
$window.on('resize', Event.handleResize);
|
$window.on('resize', Event.handleResize);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user