mirror of https://github.com/artf/grapesjs.git
19 changed files with 343 additions and 59 deletions
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -0,0 +1,6 @@ |
|||
define(['backbone','./ToolbarButton'], |
|||
function (Backbone, ToolbarButton) { |
|||
|
|||
return Backbone.Collection.extend({model: ToolbarButton}); |
|||
|
|||
}); |
|||
@ -0,0 +1,13 @@ |
|||
define(['backbone'], |
|||
function(Backbone) { |
|||
|
|||
return Backbone.Model.extend({ |
|||
|
|||
defaults: { |
|||
command: '', |
|||
attributes: {}, |
|||
}, |
|||
|
|||
|
|||
}); |
|||
}); |
|||
@ -0,0 +1,37 @@ |
|||
define(['backbone'], |
|||
function (Backbone) { |
|||
|
|||
return Backbone.View.extend({ |
|||
|
|||
events: { |
|||
'mousedown': 'handleClick', |
|||
}, |
|||
|
|||
attributes: function () { |
|||
return this.model.get('attributes'); |
|||
}, |
|||
|
|||
initialize: function(opts) { |
|||
this.editor = opts.config.editor; |
|||
}, |
|||
|
|||
handleClick: function() { |
|||
var command = this.model.get('command'); |
|||
|
|||
if (typeof command === 'function') { |
|||
command(this.editor); |
|||
} |
|||
|
|||
if (typeof command === 'string') { |
|||
this.editor.runCommand(command); |
|||
} |
|||
}, |
|||
|
|||
render: function () { |
|||
var config = this.editor.getConfig(); |
|||
this.el.className += ' ' + config.stylePrefix + 'toolbar-item'; |
|||
return this; |
|||
}, |
|||
|
|||
}); |
|||
}); |
|||
@ -0,0 +1,15 @@ |
|||
define(['backbone', 'Abstract/view/DomainViews', './ToolbarButtonView'], |
|||
function (Backbone, DomainViews, ToolbarButtonView) { |
|||
|
|||
return DomainViews.extend({ |
|||
|
|||
itemView: ToolbarButtonView, |
|||
|
|||
initialize: function(opts) { |
|||
this.config = {editor: opts.editor || ''}; |
|||
this.listenTo(this.collection, 'reset', this.render); |
|||
}, |
|||
|
|||
}); |
|||
|
|||
}); |
|||
Loading…
Reference in new issue