Browse Source

Update Select Component

no-jquery
Artur Arseniev 9 years ago
parent
commit
daeb85f83e
  1. 6
      src/commands/view/SelectComponent.js
  2. 13
      src/dom_components/view/ComponentView.js
  3. 60
      src/editor/model/Editor.js
  4. 6
      src/grapesjs/index.js

6
src/commands/view/SelectComponent.js

@ -1,7 +1,9 @@
var ToolbarView = require('dom_components/view/ToolbarView'); var ToolbarView = require('dom_components/view/ToolbarView');
var Toolbar = require('dom_components/model/Toolbar'); var Toolbar = require('dom_components/model/Toolbar');
var key = require('keymaster'); var key = require('keymaster');
var Backbone = require('backbone');
let showOffsets; let showOffsets;
const $ = Backbone.$;
module.exports = { module.exports = {
@ -140,11 +142,12 @@ module.exports = {
* @private * @private
*/ */
onHover(e) { onHover(e) {
const model = $(e.target).data('model');
e.stopPropagation(); e.stopPropagation();
var trg = e.target; var trg = e.target;
// Adjust tools scroll top // Adjust tools scroll top
if(!this.adjScroll){ if (!this.adjScroll) {
this.adjScroll = 1; this.adjScroll = 1;
this.onFrameScroll(e); this.onFrameScroll(e);
this.updateAttached(); this.updateAttached();
@ -282,6 +285,7 @@ module.exports = {
updateHighlighter(el, pos) { updateHighlighter(el, pos) {
var $el = $(el); var $el = $(el);
var model = $el.data('model'); var model = $el.data('model');
if(!model || (model && model.get('status') == 'selected')) { if(!model || (model && model.get('status') == 'selected')) {
return; return;
} }

13
src/dom_components/view/ComponentView.js

@ -29,9 +29,18 @@ module.exports = Backbone.View.extend({
this.listenTo(model, 'change:script', this.render); this.listenTo(model, 'change:script', this.render);
this.listenTo(model, 'change', this.handleChange); this.listenTo(model, 'change', this.handleChange);
this.listenTo(model.get('classes'), 'add remove change', this.updateClasses); this.listenTo(model.get('classes'), 'add remove change', this.updateClasses);
this.$el.data('model', model);
const $el = this.$el;
const el = this.el;
const em = this.em;
$el.data('model', model);
$el.data('collection', this.components);
model.view = this; model.view = this;
this.$el.data("collection", this.components);
if (em) {
em.data(el, 'model', model);
em.data(el, 'collection', model.get('components'));
}
if(model.get('classes').length) if(model.get('classes').length)
this.importClasses(); this.importClasses();

60
src/editor/model/Editor.js

@ -1,21 +1,23 @@
var deps = [ import { isUndefined, defaults } from 'underscore';
require('utils'),
require('storage_manager'), const deps = [
require('device_manager'), require('utils'),
require('parser'), require('storage_manager'),
require('selector_manager'), require('device_manager'),
require('modal_dialog'), require('parser'),
require('code_manager'), require('selector_manager'),
require('panels'), require('modal_dialog'),
require('rich_text_editor'), require('code_manager'),
require('style_manager'), require('panels'),
require('asset_manager'), require('rich_text_editor'),
require('css_composer'), require('style_manager'),
require('dom_components'), require('asset_manager'),
require('canvas'), require('css_composer'),
require('commands'), require('dom_components'),
require('block_manager'), require('canvas'),
require('trait_manager'), require('commands'),
require('block_manager'),
require('trait_manager'),
]; ];
const Backbone = require('backbone'); const Backbone = require('backbone');
@ -607,4 +609,26 @@ module.exports = Backbone.Model.extend({
w.getSelection().removeAllRanges(); w.getSelection().removeAllRanges();
}, },
/**
* Set/get data from the HTMLElement
* @param {HTMLElement} el
* @param {string} name Data name
* @param {any} value Date value
* @return {any}
* @private
*/
data(el, name, value) {
const varName = '_gjs-data';
if (!el[varName]) {
el[varName] = {};
}
if (isUndefined(value)) {
return el[varName][name];
} else {
el[varName][name] = value;
}
}
}); });

6
src/grapesjs/index.js

@ -1,15 +1,15 @@
import { isUndefined, defaults } from 'underscore'; import { isUndefined, defaults } from 'underscore';
module.exports = (() => { module.exports = (() => {
const cash = require('cash-dom');
require('utils/cashAdds')(cash);
const defaultConfig = require('./config/config'); const defaultConfig = require('./config/config');
const Editor = require('editor'); const Editor = require('editor');
const PluginManager = require('plugin_manager'); const PluginManager = require('plugin_manager');
const cash = require('cash-dom');
const plugins = new PluginManager(); const plugins = new PluginManager();
const editors = []; const editors = [];
require('utils/cashAdds')(cash);
return { return {
// Will be replaced on build // Will be replaced on build

Loading…
Cancel
Save