Fix initialization of ButtonMenu

This commit is contained in:
Rikard Bartholf
2017-05-17 12:46:22 +02:00
parent 30b30406fe
commit 6ac64d18bd
4 changed files with 23 additions and 23 deletions
+3 -1
View File
@@ -1,4 +1,5 @@
'use strict';
var config = require('../config');
var util = require('../util');
var ApertureHandler = require('./ApertureHandler');
var ButtonMenu = require('./ButtonMenu');
@@ -62,7 +63,8 @@ var Canvas = fabric.util.createClass(fabric.Canvas, {
*/
getButtonMenu: function (settings) {
if (!this.__buttonMenu) {
this.__buttonMenu = new ButtonMenu(this, settings);
var defaults = config.buttonMenu[this.__type];
this.__buttonMenu = new ButtonMenu(this, $.extend({}, defaults, settings));
}
return this.__buttonMenu;
},
+18 -20
View File
@@ -23,26 +23,24 @@ function ImageEditor(canvasId, args) {
* @TODO: Refactor this. Since Canvas knows the type of editor it probably
* better could reside there.
*/
$(function () {
if (_canvas.__type === 'canvas') {
_canvas.getButtonMenu(config.buttonMenu.canvas)
.addItem('3D', function () {})
.addItem('Flat', function () {}, true)
.render();
} else {
_canvas.getButtonMenu(config.buttonMenu.wallpaper)
.addItem(['Show Murals Panel', 'Hide Murals Panel'], function () {
_canvas.getViewport().getGores().enable(this.isActive());
})
.addItem(['Show Ruler', 'Hide Ruler'], function () {
_canvas.getViewport().getRulers().enable(this.isActive());
})
.addItem(['Fullscreen', 'Exit Fullscreen'], function () {
util.toggleFullscreen(_canvas.getSelectionElement().parentNode);
})
.render();
}
});
if (_canvas.__type === 'canvas') {
_canvas.getButtonMenu()
.addItem('3D', function () {})
.addItem('Flat', function () {}, true)
.render();
} else {
_canvas.getButtonMenu()
.addItem(['Show Murals Panel', 'Hide Murals Panel'], function () {
_canvas.getViewport().getGores().enable(this.isActive());
})
.addItem(['Show Ruler', 'Hide Ruler'], function () {
_canvas.getViewport().getRulers().enable(this.isActive());
})
.addItem(['Fullscreen', 'Exit Fullscreen'], function () {
util.toggleFullscreen(_canvas.getSelectionElement().parentNode);
})
.render();
}
/**
* Crops image to desired dimensions
+1 -1
View File
@@ -13,7 +13,7 @@
var imageUrl = '//images.photowall.com/products/' + $input.image_id.val() + '.jpg?h=450';
var editor = new ImageEditor('canvas-editor', {'type': 'wallpaper'})
var editor = new ImageEditor('canvas-editor', {'type': 'canvas'})
.loadImage(imageUrl, function() {
$input.w.trigger('input');
});