Browse Source

Set base Component toolbar dynamic

pull/72/head
Artur Arseniev 9 years ago
parent
commit
3739b3bdbd
  1. 8
      dist/grapes.min.js
  2. 19
      src/dom_components/config/config.js
  3. 41
      src/dom_components/model/Component.js

8
dist/grapes.min.js

File diff suppressed because one or more lines are too long

19
src/dom_components/config/config.js

@ -1,16 +1,17 @@
define(function () {
return {
stylePrefix : 'comp-',
stylePrefix: 'comp-',
wrapperId : 'wrapper',
wrapperId: 'wrapper',
// Default wrapper configuration
wrapper : {
removable : false,
copyable : false,
stylable : ['background','background-color','background-image', 'background-repeat','background-attachment','background-position'],
draggable : false,
badgable : false,
wrapper: {
//classes: ['body'],
removable: false,
copyable: false,
stylable: ['background','background-color','background-image', 'background-repeat','background-attachment','background-position'],
draggable: false,
badgable: false,
components: [],
},
@ -28,4 +29,4 @@ define(function () {
// List of void elements
voidElements: ['area', 'base', 'br', 'col', 'embed', 'hr', 'img', 'input', 'keygen', 'link', 'menuitem', 'meta', 'param', 'source', 'track', 'wbr'],
};
});
});

41
src/dom_components/model/Component.js

@ -41,16 +41,7 @@ define(['backbone','./Components', 'SelectorManager/model/Selectors', 'TraitMana
attributes: {},
classes: '',
traits: ['id', 'title'],
toolbar: [{
attributes: {class: 'fa fa-arrows'},
command: 'tlb-move',
},{
attributes: {class: 'fa fa-clone'},
command: 'tlb-clone',
},{
attributes: {class: 'fa fa-trash-o'},
command: 'tlb-delete',
}],
toolbar: null,
},
initialize: function(o, opt) {
@ -71,6 +62,36 @@ define(['backbone','./Components', 'SelectorManager/model/Selectors', 'TraitMana
traits.setTarget(this);
traits.add(this.get('traits'));
this.set('traits', traits);
this.initToolbar();
},
/**
* Init toolbar
*/
initToolbar: function () {
var model = this;
if(!model.get('toolbar')) {
var tb = [];
if(model.get('draggable')) {
tb.push({
attributes: {class: 'fa fa-arrows'},
command: 'tlb-move',
});
}
if(model.get('copyable')) {
tb.push({
attributes: {class: 'fa fa-clone'},
command: 'tlb-clone',
});
}
if(model.get('removable')) {
tb.push({
attributes: {class: 'fa fa-trash-o'},
command: 'tlb-delete',
});
}
model.set('toolbar', tb);
}
},
/**

Loading…
Cancel
Save