Browse Source

Retrive local el offset viewer

pull/2524/head
Artur Arseniev 7 years ago
parent
commit
a85025b40e
  1. 28
      src/canvas/index.js
  2. 14
      src/canvas/view/FrameView.js
  3. 2
      src/canvas/view/FrameWrapView.js
  4. 2
      src/commands/view/ShowOffset.js

28
src/canvas/index.js

@ -167,17 +167,21 @@ export default () => {
return compView && compView._getFrame();
},
_getLocalEl(globalEl, compView, method) {
let result = globalEl;
const frameView = this._getCompFrame(compView);
result = frameView ? frameView[method]() : result;
return result;
},
/**
* Returns element containing all canvas tools
* @return {HTMLElement}
* @private
*/
getToolsEl(compView) {
let result = CanvasView.toolsEl;
const frameView = this._getCompFrame(compView);
result = frameView ? frameView.getToolsEl() : result;
return result;
return this._getLocalEl(CanvasView.toolsEl, compView, 'getToolsEl');
},
/**
@ -186,11 +190,7 @@ export default () => {
* @private
*/
getHighlighter(compView) {
let result = CanvasView.hlEl;
const frameView = this._getCompFrame(compView);
result = frameView ? frameView.getHighlighter() : result;
return result;
return this._getLocalEl(CanvasView.hlEl, compView, 'getHighlighter');
},
/**
@ -243,8 +243,12 @@ export default () => {
* @return {HTMLElement}
* @private
*/
getOffsetViewerEl() {
return CanvasView.offsetEl;
getOffsetViewerEl(compView) {
return this._getLocalEl(
CanvasView.offsetEl,
compView,
'getOffsetViewerEl'
);
},
/**

14
src/canvas/view/FrameView.js

@ -125,13 +125,21 @@ export default Backbone.View.extend({
},
getHighlighter() {
return this._getTool('[data-hl]');
},
getOffsetViewerEl() {
return this._getTool('[data-offset]');
},
_getTool(name) {
const toolsEl = this.getToolsEl();
if (!this.elHighl) {
this.elHighl = toolsEl.querySelector('[data-hl]');
if (!this[name]) {
this[name] = toolsEl.querySelector(name);
}
return this.elHighl;
return this[name];
},
remove() {

2
src/canvas/view/FrameWrapView.js

@ -68,7 +68,7 @@ export default Backbone.View.extend({
<div class="${ppfx}ghost"></div>
<div class="${ppfx}toolbar" style="pointer-events:all"></div>
<div class="${ppfx}resizer"></div>
<div class="${ppfx}offset-v"></div>
<div class="${ppfx}offset-v" data-offset></div>
<div class="${ppfx}offset-fixed-v"></div>
`
);

2
src/commands/view/ShowOffset.js

@ -39,7 +39,7 @@ export default {
var ppfx = this.ppfx;
var stateVar = state + 'State';
var method = this.getOffsetMethod(state);
var offsetViewer = canvas[method]();
var offsetViewer = canvas[method](opts.view);
offsetViewer.style.display = 'block';
var marginT = this['marginT' + state];

Loading…
Cancel
Save