Browse Source

Add __getStackRead to UndoManager

pull/3411/head
Artur Arseniev 5 years ago
parent
commit
35d1e4dac8
  1. 10
      src/canvas/model/Frame.js
  2. 20
      src/undo_manager/index.js

10
src/canvas/model/Frame.js

@ -43,6 +43,16 @@ export default Model.extend({
!props.width && this.set(keyAutoW, 1); !props.width && this.set(keyAutoW, 1);
!props.height && this.set(keyAutoH, 1); !props.height && this.set(keyAutoH, 1);
// this._initUm();
},
_initUm() {
const um = this.em.get('UndoManager');
const component = this.getComponent();
if (!um) return;
um.add(component);
console.log({ component, um });
}, },
getComponent() { getComponent() {

20
src/undo_manager/index.js

@ -307,6 +307,26 @@ export default () => {
return result; return result;
}, },
__getStackRead() {
const result = {};
const createItem = item => {
const { type, after, before, object } = item.attributes;
return {
type,
after,
before,
object
};
};
this.getStack().forEach(item => {
const index = item.get('magicFusionIndex');
const value = createItem(item);
if (!result[index]) result[index] = [value];
else result[index].push(value);
});
return Object.keys(result).map(i => result[i]);
},
getPointer() { getPointer() {
return this.getStack().pointer; return this.getStack().pointer;
}, },

Loading…
Cancel
Save