Added some event triggers regarding image loading

This commit is contained in:
Erik Tiekstra
2017-05-19 16:16:01 +02:00
parent b3eff22d2e
commit 885a9a2a01
3 changed files with 28 additions and 5 deletions
+2 -2
View File
@@ -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,
})); }));
+20 -3
View File
@@ -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();
} }
fabric.Image.fromURL(encodeURI(this.get3dUrl()), function (img) { $document.trigger('PIE:image-start-load');
this.get3dHandler().setImage(img);
$.ajax({
url: this.get3dUrl(),
crossDomain: true,
type: "HEAD",
cache: true,
}).done(function() {
fabric.Image.fromURL(encodeURI(this.get3dUrl()), function (img) {
if (!img._element) {
$document.trigger('PIE:image-error-load');
return;
}
this.get3dHandler().setImage(img);
$document.trigger('PIE:image-end-load');
}.bind(this));
}.bind(this)); }.bind(this));
}, },
}); });
+6
View File
@@ -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);