Commit b804b07c authored by rockyl's avatar rockyl

修复

parent 9c63bf5d
...@@ -10,6 +10,7 @@ import {devicePixelRatio} from "../../2d/const"; ...@@ -10,6 +10,7 @@ import {devicePixelRatio} from "../../2d/const";
import {Point} from "../../2d/math/Point"; import {Point} from "../../2d/math/Point";
const propPrefixFilter = ['_', '__', '$']; const propPrefixFilter = ['_', '__', '$'];
const includeProps = ['_width', '_height'];
const propTypeFilter = ['function']; const propTypeFilter = ['function'];
const offsetPrefix = 'offset_'; const offsetPrefix = 'offset_';
const absValueMapping = { const absValueMapping = {
...@@ -24,6 +25,7 @@ const absSelfValueMapping = { ...@@ -24,6 +25,7 @@ const absSelfValueMapping = {
width: 'X', width: 'X',
height: 'Y', height: 'Y',
}; };
const emptyProps = ['width', 'height'];
/** /**
* 编辑器舞台 * 编辑器舞台
...@@ -67,11 +69,18 @@ export class EditorStage extends Node { ...@@ -67,11 +69,18 @@ export class EditorStage extends Node {
break; break;
} }
} }
if (pass && includeProps.indexOf(key) > 0) {
pass = false;
}
if (pass) { if (pass) {
continue; continue;
} }
let v = node[key]; let v = node[key];
if (propTypeFilter.indexOf(typeof v) < 0) { if (propTypeFilter.indexOf(typeof v) < 0) {
if (typeof v === 'object') {
v = objClone(v);
}
node2[key] = v; node2[key] = v;
} }
} }
...@@ -91,12 +100,15 @@ export class EditorStage extends Node { ...@@ -91,12 +100,15 @@ export class EditorStage extends Node {
for (let key in props) { for (let key in props) {
let v = props[key]; let v = props[key];
if (key.indexOf(offsetPrefix) < 0) { if (key.indexOf(offsetPrefix) < 0) {
if (emptyProps.indexOf(key) >= 0) {
key = '_' + key;
}
node[key] = v; node[key] = v;
} else { } else {
key = key.replace(offsetPrefix, ''); key = key.replace(offsetPrefix, '');
let offsetV = v / node.worldMatrix[absValueMapping[key]] * node['scale' + absSelfValueMapping[key]]; let offsetV = v / node.worldMatrix[absValueMapping[key]] * node['scale' + absSelfValueMapping[key]];
node[key] += offsetV; node[key] += offsetV;
console.log('modifyProps:', key, offsetV, node[key]); //console.log('modifyProps:', key, offsetV, node[key]);
} }
} }
node.adjustProxy.adjustLayout(); node.adjustProxy.adjustLayout();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment