@gedit/editor-2d 0.2.62 → 0.2.64
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/browser/playground/canvas-draw.d.ts +5 -4
- package/lib/browser/playground/canvas-draw.d.ts.map +1 -1
- package/lib/browser/playground/canvas-draw.js +76 -42
- package/lib/browser/playground/canvas-draw.js.map +1 -1
- package/package.json +2 -2
- package/src/browser/playground/canvas-draw.ts +76 -42
- package/LICENSE +0 -21
|
@@ -96,7 +96,7 @@ export declare class CanvasDraw extends DisposableImpl {
|
|
|
96
96
|
* @return visible changed
|
|
97
97
|
*/
|
|
98
98
|
protected toggleVisible(appConfig: AppConfigData, visible: boolean): boolean;
|
|
99
|
-
addComponentSymbolsMetaToLoader(
|
|
99
|
+
addComponentSymbolsMetaToLoader(): void;
|
|
100
100
|
protected switchSnapline(node?: Editor2dNode): void;
|
|
101
101
|
updateGameObjects(scene: GameSceneIDE, content: Editor2dNode): void;
|
|
102
102
|
updateGameObject(scene: GameSceneIDE, node: Editor2dNode, depth: number, renderKeys: string[], isInside?: boolean, parentId?: string, engineName?: string): number;
|
|
@@ -104,12 +104,13 @@ export declare class CanvasDraw extends DisposableImpl {
|
|
|
104
104
|
protected lastZoom: number;
|
|
105
105
|
refreshScale(delayDraw?: boolean, zoom?: number): void;
|
|
106
106
|
update(data: CanvasDrawData): void;
|
|
107
|
-
setComponentSymbolsToLoader(
|
|
108
|
-
symbolsToCurrent(
|
|
107
|
+
setComponentSymbolsToLoader(child?: GameObjectData[]): void;
|
|
108
|
+
symbolsToCurrent(content: Editor2dNode): void;
|
|
109
|
+
getSceneSymbolToValue(): GameObjectData['scene'] | undefined;
|
|
109
110
|
/**
|
|
110
111
|
* 获取画布的宽高
|
|
111
112
|
*/
|
|
112
|
-
getSceneSize(): SizeSchema | undefined;
|
|
113
|
+
getSceneSize(scene?: GameObjectData['scene']): SizeSchema | undefined;
|
|
113
114
|
protected draw(): void;
|
|
114
115
|
}
|
|
115
116
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"canvas-draw.d.ts","sourceRoot":"","sources":["../../../src/browser/playground/canvas-draw.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"canvas-draw.d.ts","sourceRoot":"","sources":["../../../src/browser/playground/canvas-draw.ts"],"names":[],"mappings":"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"}
|
|
@@ -149,28 +149,34 @@ class CanvasDraw extends utils_1.DisposableImpl {
|
|
|
149
149
|
}
|
|
150
150
|
return false;
|
|
151
151
|
}
|
|
152
|
-
addComponentSymbolsMetaToLoader(
|
|
152
|
+
addComponentSymbolsMetaToLoader() {
|
|
153
153
|
if (this.currentSymbols.length) {
|
|
154
154
|
this.currentSymbols.forEach(c => {
|
|
155
|
+
var _a, _b;
|
|
155
156
|
// 数组模式只支持 url;
|
|
156
157
|
if (c.meta && typeof c.value === 'string') {
|
|
158
|
+
const scene = ((_a = this.renderWidget) === null || _a === void 0 ? void 0 : _a.getSceneByKey(SCENE_KEY)) ||
|
|
159
|
+
((_b = this.renderWidget) === null || _b === void 0 ? void 0 : _b.createScene(SCENE_KEY));
|
|
160
|
+
if (!scene)
|
|
161
|
+
return;
|
|
157
162
|
scene.loader.addMetaByObject(c.value, c.meta);
|
|
158
163
|
}
|
|
159
164
|
});
|
|
160
165
|
}
|
|
161
166
|
}
|
|
162
167
|
switchSnapline(node) {
|
|
163
|
-
var _a, _b, _c
|
|
168
|
+
var _a, _b, _c;
|
|
164
169
|
// dom 下开启滚动的话,,显示标尺展示场景大小;
|
|
165
170
|
if (node &&
|
|
166
171
|
editor2d_1.Editor2dNode.isRootNode(node) &&
|
|
167
172
|
node.displayType === render_engine_1.GameObjectBaseType.COMPONENT &&
|
|
168
173
|
((_a = this.data) === null || _a === void 0 ? void 0 : _a.engineName) === 'dom') {
|
|
169
174
|
const snaplineEntity = (_b = this.opts.entityManager) === null || _b === void 0 ? void 0 : _b.getEntity(playground_1.SnaplineConfigEntity);
|
|
170
|
-
if (!snaplineEntity) {
|
|
175
|
+
if (!snaplineEntity || !node.scene) {
|
|
171
176
|
return;
|
|
172
177
|
}
|
|
173
|
-
|
|
178
|
+
const scene = toNodeData(node.scene, ((_c = node.component) === null || _c === void 0 ? void 0 : _c.symbols) || []);
|
|
179
|
+
if ((scene === null || scene === void 0 ? void 0 : scene.scrollXBool) || (scene === null || scene === void 0 ? void 0 : scene.scrollYBool)) {
|
|
174
180
|
snaplineEntity.updateConfig({
|
|
175
181
|
lines: [
|
|
176
182
|
{
|
|
@@ -184,7 +190,7 @@ class CanvasDraw extends utils_1.DisposableImpl {
|
|
|
184
190
|
id: 'component_scene_top',
|
|
185
191
|
color: '#fff000',
|
|
186
192
|
horizontal: true,
|
|
187
|
-
start: { x: 0, y: (
|
|
193
|
+
start: { x: 0, y: (scene === null || scene === void 0 ? void 0 : scene.height) || 400 },
|
|
188
194
|
strokeWidth: 1,
|
|
189
195
|
},
|
|
190
196
|
{
|
|
@@ -198,7 +204,7 @@ class CanvasDraw extends utils_1.DisposableImpl {
|
|
|
198
204
|
id: 'component_scene_right',
|
|
199
205
|
color: 'red',
|
|
200
206
|
vertical: true,
|
|
201
|
-
start: { x: (
|
|
207
|
+
start: { x: (scene === null || scene === void 0 ? void 0 : scene.width) || 400, y: 0 },
|
|
202
208
|
strokeWidth: 1,
|
|
203
209
|
},
|
|
204
210
|
],
|
|
@@ -216,7 +222,7 @@ class CanvasDraw extends utils_1.DisposableImpl {
|
|
|
216
222
|
if (!content)
|
|
217
223
|
return;
|
|
218
224
|
// 场景是组件的情况,把组件里的 symbols 的 meta 添加到 loader;
|
|
219
|
-
this.addComponentSymbolsMetaToLoader(
|
|
225
|
+
this.addComponentSymbolsMetaToLoader();
|
|
220
226
|
this.allCount = this.updateGameObject(scene, content, 0, renderKeys);
|
|
221
227
|
// 删除节点
|
|
222
228
|
this.lastRenderKeys.forEach(key => {
|
|
@@ -253,6 +259,10 @@ class CanvasDraw extends utils_1.DisposableImpl {
|
|
|
253
259
|
.concat(children);
|
|
254
260
|
const component = this.opts.getComponentContent(compId, node, true);
|
|
255
261
|
componentScene = (_a = component === null || component === void 0 ? void 0 : component[0]) === null || _a === void 0 ? void 0 : _a.scene;
|
|
262
|
+
if (componentScene) {
|
|
263
|
+
const symbols = render_engine_1.GameObjectData.getComponentSymbols(component[0], node);
|
|
264
|
+
componentScene = toNodeData(componentScene, symbols);
|
|
265
|
+
}
|
|
256
266
|
// 内部节点
|
|
257
267
|
childInside = true;
|
|
258
268
|
// 组件开启吸附
|
|
@@ -302,27 +312,27 @@ class CanvasDraw extends utils_1.DisposableImpl {
|
|
|
302
312
|
return depth;
|
|
303
313
|
}
|
|
304
314
|
gameObjectCache.set(nodePath, gameObject);
|
|
305
|
-
const updateParent = (
|
|
315
|
+
const updateParent = (n, obj, type = GameObjectEventType.UPDATE) => {
|
|
306
316
|
// 如果父级是组件或分组更新中心点;
|
|
307
|
-
if (
|
|
317
|
+
if (n && obj && !editor2d_1.Editor2dNode.isRootNode(n)) {
|
|
308
318
|
this.onGameObjectChangeEmitter.fire({
|
|
309
319
|
type,
|
|
310
320
|
gameObject: obj,
|
|
311
|
-
node:
|
|
321
|
+
node: n,
|
|
312
322
|
});
|
|
313
|
-
if (
|
|
314
|
-
updateParent(
|
|
323
|
+
if (n.parent && obj.parent) {
|
|
324
|
+
updateParent(n.parent, obj.parent, type);
|
|
315
325
|
}
|
|
316
326
|
}
|
|
317
327
|
};
|
|
318
328
|
scene.onGameObjectDispose(gameObject, () => {
|
|
319
|
-
const
|
|
329
|
+
const n = this.nodeCache.get(nodePath);
|
|
320
330
|
this.onGameObjectChangeEmitter.fire({
|
|
321
331
|
type: GameObjectEventType.DESTROY,
|
|
322
332
|
gameObject: gameObject,
|
|
323
|
-
node,
|
|
333
|
+
node: n,
|
|
324
334
|
});
|
|
325
|
-
updateParent(
|
|
335
|
+
updateParent(n, gameObject);
|
|
326
336
|
this.gameObjectCache.delete(nodePath);
|
|
327
337
|
this.nodeVersionCache.delete(nodePath);
|
|
328
338
|
this.nodeCache.delete(nodePath);
|
|
@@ -330,24 +340,26 @@ class CanvasDraw extends utils_1.DisposableImpl {
|
|
|
330
340
|
});
|
|
331
341
|
scene.onGameObjectUpdate(gameObject, () => {
|
|
332
342
|
var _a;
|
|
333
|
-
const
|
|
343
|
+
const n = this.nodeCache.get(nodePath);
|
|
344
|
+
if (!n)
|
|
345
|
+
return;
|
|
334
346
|
/* this.onGameObjectChangeEmitter.fire({
|
|
335
347
|
type: GameObjectEventType.UPDATE,
|
|
336
348
|
gameObject: gameObject!,
|
|
337
349
|
node: node!,
|
|
338
350
|
}); */
|
|
339
351
|
// 初始化的 size 为 0; 大小在 getSelectionData 里靠 render 后的实例获取,这里只更改 node 的 size;
|
|
340
|
-
if (gameObject &&
|
|
352
|
+
if (gameObject && n) {
|
|
341
353
|
const register = this.opts.renderEngine.getGameObjectIDERegister(gameObject.scene.config.engine, gameObject.type);
|
|
342
354
|
const data = (_a = register.getSelectionData) === null || _a === void 0 ? void 0 : _a.call(register, gameObject, this.lastZoom);
|
|
343
355
|
if (data) {
|
|
344
|
-
|
|
356
|
+
n.size = data.size;
|
|
345
357
|
gameObject.data.size = Object.assign({}, data.size);
|
|
346
358
|
}
|
|
347
359
|
}
|
|
348
360
|
// 更新父级
|
|
349
|
-
updateParent(
|
|
350
|
-
this.switchSnapline(
|
|
361
|
+
updateParent(n, gameObject);
|
|
362
|
+
this.switchSnapline(n);
|
|
351
363
|
});
|
|
352
364
|
scene.onGameObjectCreate(gameObject, () => {
|
|
353
365
|
this.nodeVersionCache.set(nodePath, newVersion);
|
|
@@ -458,7 +470,7 @@ class CanvasDraw extends utils_1.DisposableImpl {
|
|
|
458
470
|
this.data = data;
|
|
459
471
|
this.draw();
|
|
460
472
|
}
|
|
461
|
-
setComponentSymbolsToLoader(
|
|
473
|
+
setComponentSymbolsToLoader(child = []) {
|
|
462
474
|
child.forEach((item) => {
|
|
463
475
|
if (item.displayType === render_engine_1.GameObjectBaseType.COMPONENT && item.component) {
|
|
464
476
|
const { id } = item.component;
|
|
@@ -468,15 +480,15 @@ class CanvasDraw extends utils_1.DisposableImpl {
|
|
|
468
480
|
const currentSymbols = getCurrentSymbols(this.data.appConfig, comp).filter(c => !this.currentSymbols.some(d => d.id === c.id));
|
|
469
481
|
// 变量数据更新
|
|
470
482
|
this.currentSymbols = this.currentSymbols.concat(currentSymbols);
|
|
471
|
-
this.addComponentSymbolsMetaToLoader(
|
|
483
|
+
this.addComponentSymbolsMetaToLoader();
|
|
472
484
|
}
|
|
473
485
|
if (item.children) {
|
|
474
|
-
this.setComponentSymbolsToLoader(
|
|
486
|
+
this.setComponentSymbolsToLoader(item.children);
|
|
475
487
|
}
|
|
476
488
|
}
|
|
477
489
|
});
|
|
478
490
|
}
|
|
479
|
-
symbolsToCurrent(
|
|
491
|
+
symbolsToCurrent(content) {
|
|
480
492
|
// const currentSymbols = getCurrentSymbols(this.data!.appConfig!, content);
|
|
481
493
|
const currentSymbols = getCurrentSymbols(this.data.appConfig, content).filter(c => !this.currentSymbols.some(d => d.id === c.id));
|
|
482
494
|
// 变量数据更新
|
|
@@ -487,15 +499,33 @@ class CanvasDraw extends utils_1.DisposableImpl {
|
|
|
487
499
|
// 场景里的 symbols;
|
|
488
500
|
this.currentSymbols = this.currentSymbols.concat(currentSymbols);
|
|
489
501
|
if (content.children) {
|
|
490
|
-
this.setComponentSymbolsToLoader(
|
|
502
|
+
this.setComponentSymbolsToLoader(content.children);
|
|
491
503
|
}
|
|
492
504
|
this.oldSymbols = this.currentSymbols;
|
|
493
505
|
}
|
|
506
|
+
getSceneSymbolToValue() {
|
|
507
|
+
var _a, _b;
|
|
508
|
+
const scene = (_b = (_a = this.data) === null || _a === void 0 ? void 0 : _a.content) === null || _b === void 0 ? void 0 : _b.scene;
|
|
509
|
+
if (!scene)
|
|
510
|
+
return scene;
|
|
511
|
+
const t = Object.assign({}, scene);
|
|
512
|
+
Object.keys(scene).forEach((c) => {
|
|
513
|
+
const v = t[c];
|
|
514
|
+
if (v && typeof v === 'string') {
|
|
515
|
+
const matched = v.match(/^\$\{([^\}]+)\}$/);
|
|
516
|
+
if (matched) {
|
|
517
|
+
const symbolId = matched[1];
|
|
518
|
+
const symbol = this.currentSymbols.find(s => s.id === symbolId);
|
|
519
|
+
t[c] = symbol === null || symbol === void 0 ? void 0 : symbol.value;
|
|
520
|
+
}
|
|
521
|
+
}
|
|
522
|
+
});
|
|
523
|
+
return t;
|
|
524
|
+
}
|
|
494
525
|
/**
|
|
495
526
|
* 获取画布的宽高
|
|
496
527
|
*/
|
|
497
|
-
getSceneSize() {
|
|
498
|
-
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
528
|
+
getSceneSize(scene = this.getSceneSymbolToValue()) {
|
|
499
529
|
if (!this.data)
|
|
500
530
|
return undefined;
|
|
501
531
|
const { content, appConfig } = this.data;
|
|
@@ -503,12 +533,12 @@ class CanvasDraw extends utils_1.DisposableImpl {
|
|
|
503
533
|
return undefined;
|
|
504
534
|
if (content.displayType === 'component') {
|
|
505
535
|
if (this.data.engineName === 'dom') {
|
|
506
|
-
const w = (
|
|
507
|
-
? (
|
|
508
|
-
:
|
|
509
|
-
const h = (
|
|
510
|
-
? (
|
|
511
|
-
:
|
|
536
|
+
const w = (scene === null || scene === void 0 ? void 0 : scene.scrollXBool)
|
|
537
|
+
? (scene === null || scene === void 0 ? void 0 : scene.contentWidth) || (scene === null || scene === void 0 ? void 0 : scene.width)
|
|
538
|
+
: scene === null || scene === void 0 ? void 0 : scene.width;
|
|
539
|
+
const h = (scene === null || scene === void 0 ? void 0 : scene.scrollYBool)
|
|
540
|
+
? (scene === null || scene === void 0 ? void 0 : scene.contentHeight) || (scene === null || scene === void 0 ? void 0 : scene.height)
|
|
541
|
+
: scene === null || scene === void 0 ? void 0 : scene.height;
|
|
512
542
|
return {
|
|
513
543
|
width: w || 400,
|
|
514
544
|
height: h || 400,
|
|
@@ -519,7 +549,7 @@ class CanvasDraw extends utils_1.DisposableImpl {
|
|
|
519
549
|
return render_engine_1.GameConfig.getSceneSize(appConfig, content);
|
|
520
550
|
}
|
|
521
551
|
draw() {
|
|
522
|
-
var _a
|
|
552
|
+
var _a;
|
|
523
553
|
if (!this.data)
|
|
524
554
|
return;
|
|
525
555
|
const { visible, appConfig, content, engineName } = this.data;
|
|
@@ -528,9 +558,18 @@ class CanvasDraw extends utils_1.DisposableImpl {
|
|
|
528
558
|
this.startLoadLibs();
|
|
529
559
|
return;
|
|
530
560
|
}
|
|
531
|
-
|
|
532
|
-
|
|
561
|
+
if (!content || !appConfig || !this.libLoaded)
|
|
562
|
+
return;
|
|
563
|
+
this.currentSymbols = [];
|
|
564
|
+
/**
|
|
565
|
+
* 取出子级是组件的 symbols;
|
|
566
|
+
*/
|
|
567
|
+
this.symbolsToCurrent(content);
|
|
568
|
+
const sceneData = this.getSceneSymbolToValue();
|
|
569
|
+
const size = this.getSceneSize(sceneData);
|
|
570
|
+
if (!size) {
|
|
533
571
|
return;
|
|
572
|
+
}
|
|
534
573
|
this.engineName =
|
|
535
574
|
(content.displayType === render_engine_1.GameObjectBaseType.COMPONENT &&
|
|
536
575
|
((_a = content.scene) === null || _a === void 0 ? void 0 : _a.engine)) ||
|
|
@@ -540,18 +579,13 @@ class CanvasDraw extends utils_1.DisposableImpl {
|
|
|
540
579
|
return;
|
|
541
580
|
let backgroundColor;
|
|
542
581
|
if (engineName === 'dom' && content.displayType === 'component') {
|
|
543
|
-
backgroundColor =
|
|
582
|
+
backgroundColor = sceneData === null || sceneData === void 0 ? void 0 : sceneData.backgroundColor;
|
|
544
583
|
}
|
|
545
584
|
const scene = this.renderWidget.switchScene(SCENE_KEY, {
|
|
546
585
|
size,
|
|
547
586
|
backgroundColor,
|
|
548
587
|
});
|
|
549
588
|
// 绘制时清除 currentSymbol;
|
|
550
|
-
this.currentSymbols = [];
|
|
551
|
-
/**
|
|
552
|
-
* 取出子级是组件的 symbols;
|
|
553
|
-
*/
|
|
554
|
-
this.symbolsToCurrent(scene, content);
|
|
555
589
|
/**
|
|
556
590
|
* 更新画布大小
|
|
557
591
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"canvas-draw.js","sourceRoot":"","sources":["../../../src/browser/playground/canvas-draw.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"canvas-draw.js","sourceRoot":"","sources":["../../../src/browser/playground/canvas-draw.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gedit/editor-2d",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.64",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"main": "lib/browser/index",
|
|
6
6
|
"typings": "lib/browser/index.d.ts",
|
|
@@ -39,5 +39,5 @@
|
|
|
39
39
|
"nyc": {
|
|
40
40
|
"extends": "../../configs/nyc.json"
|
|
41
41
|
},
|
|
42
|
-
"gitHead": "
|
|
42
|
+
"gitHead": "2878f4d9609cfd63bd6746e5d703749a16b6af6a"
|
|
43
43
|
}
|
|
@@ -242,11 +242,15 @@ export class CanvasDraw extends DisposableImpl {
|
|
|
242
242
|
}
|
|
243
243
|
return false;
|
|
244
244
|
}
|
|
245
|
-
addComponentSymbolsMetaToLoader(
|
|
245
|
+
addComponentSymbolsMetaToLoader(): void {
|
|
246
246
|
if (this.currentSymbols.length) {
|
|
247
247
|
this.currentSymbols.forEach(c => {
|
|
248
248
|
// 数组模式只支持 url;
|
|
249
249
|
if (c.meta && typeof c.value === 'string') {
|
|
250
|
+
const scene =
|
|
251
|
+
this.renderWidget?.getSceneByKey(SCENE_KEY) ||
|
|
252
|
+
this.renderWidget?.createScene(SCENE_KEY);
|
|
253
|
+
if (!scene) return;
|
|
250
254
|
scene.loader.addMetaByObject(c.value, c.meta);
|
|
251
255
|
}
|
|
252
256
|
});
|
|
@@ -264,10 +268,14 @@ export class CanvasDraw extends DisposableImpl {
|
|
|
264
268
|
const snaplineEntity = this.opts.entityManager?.getEntity<SnaplineConfigEntity>(
|
|
265
269
|
SnaplineConfigEntity
|
|
266
270
|
);
|
|
267
|
-
if (!snaplineEntity) {
|
|
271
|
+
if (!snaplineEntity || !node.scene) {
|
|
268
272
|
return;
|
|
269
273
|
}
|
|
270
|
-
|
|
274
|
+
const scene: any = toNodeData(
|
|
275
|
+
node.scene as any,
|
|
276
|
+
((node as unknown) as ComponentGameObjectData).component?.symbols || []
|
|
277
|
+
);
|
|
278
|
+
if (scene?.scrollXBool || scene?.scrollYBool) {
|
|
271
279
|
snaplineEntity.updateConfig({
|
|
272
280
|
lines: [
|
|
273
281
|
{
|
|
@@ -281,7 +289,7 @@ export class CanvasDraw extends DisposableImpl {
|
|
|
281
289
|
id: 'component_scene_top',
|
|
282
290
|
color: '#fff000',
|
|
283
291
|
horizontal: true,
|
|
284
|
-
start: { x: 0, y:
|
|
292
|
+
start: { x: 0, y: scene?.height || 400 },
|
|
285
293
|
strokeWidth: 1,
|
|
286
294
|
},
|
|
287
295
|
{
|
|
@@ -295,7 +303,7 @@ export class CanvasDraw extends DisposableImpl {
|
|
|
295
303
|
id: 'component_scene_right',
|
|
296
304
|
color: 'red',
|
|
297
305
|
vertical: true,
|
|
298
|
-
start: { x:
|
|
306
|
+
start: { x: scene?.width || 400, y: 0 },
|
|
299
307
|
strokeWidth: 1,
|
|
300
308
|
},
|
|
301
309
|
],
|
|
@@ -312,7 +320,7 @@ export class CanvasDraw extends DisposableImpl {
|
|
|
312
320
|
const renderKeys: string[] = [];
|
|
313
321
|
if (!content) return;
|
|
314
322
|
// 场景是组件的情况,把组件里的 symbols 的 meta 添加到 loader;
|
|
315
|
-
this.addComponentSymbolsMetaToLoader(
|
|
323
|
+
this.addComponentSymbolsMetaToLoader();
|
|
316
324
|
this.allCount = this.updateGameObject(scene, content, 0, renderKeys);
|
|
317
325
|
// 删除节点
|
|
318
326
|
this.lastRenderKeys.forEach(key => {
|
|
@@ -362,6 +370,10 @@ export class CanvasDraw extends DisposableImpl {
|
|
|
362
370
|
.concat(children);
|
|
363
371
|
const component = this.opts.getComponentContent(compId, node, true);
|
|
364
372
|
componentScene = component?.[0]?.scene;
|
|
373
|
+
if (componentScene) {
|
|
374
|
+
const symbols = GameObjectData.getComponentSymbols(component![0], node);
|
|
375
|
+
componentScene = toNodeData(componentScene, symbols);
|
|
376
|
+
}
|
|
365
377
|
// 内部节点
|
|
366
378
|
childInside = true;
|
|
367
379
|
// 组件开启吸附
|
|
@@ -420,57 +432,58 @@ export class CanvasDraw extends DisposableImpl {
|
|
|
420
432
|
}
|
|
421
433
|
gameObjectCache.set(nodePath, gameObject);
|
|
422
434
|
const updateParent = (
|
|
423
|
-
|
|
435
|
+
n?: Editor2dNode,
|
|
424
436
|
obj?: GameObject,
|
|
425
437
|
type: GameObjectEventType = GameObjectEventType.UPDATE
|
|
426
438
|
) => {
|
|
427
439
|
// 如果父级是组件或分组更新中心点;
|
|
428
|
-
if (
|
|
440
|
+
if (n && obj && !Editor2dNode.isRootNode(n)) {
|
|
429
441
|
this.onGameObjectChangeEmitter.fire({
|
|
430
442
|
type,
|
|
431
443
|
gameObject: obj!,
|
|
432
|
-
node:
|
|
444
|
+
node: n!,
|
|
433
445
|
});
|
|
434
|
-
if (
|
|
435
|
-
updateParent(
|
|
446
|
+
if (n.parent && obj.parent) {
|
|
447
|
+
updateParent(n.parent, obj.parent, type);
|
|
436
448
|
}
|
|
437
449
|
}
|
|
438
450
|
};
|
|
439
451
|
scene.onGameObjectDispose(gameObject, () => {
|
|
440
|
-
const
|
|
452
|
+
const n = this.nodeCache.get(nodePath)!;
|
|
441
453
|
this.onGameObjectChangeEmitter.fire({
|
|
442
454
|
type: GameObjectEventType.DESTROY,
|
|
443
455
|
gameObject: gameObject!,
|
|
444
|
-
node,
|
|
456
|
+
node: n,
|
|
445
457
|
});
|
|
446
|
-
updateParent(
|
|
458
|
+
updateParent(n, gameObject);
|
|
447
459
|
this.gameObjectCache.delete(nodePath);
|
|
448
460
|
this.nodeVersionCache.delete(nodePath);
|
|
449
461
|
this.nodeCache.delete(nodePath);
|
|
450
462
|
this.maskCache.delete(nodePath);
|
|
451
463
|
});
|
|
452
464
|
scene.onGameObjectUpdate(gameObject, () => {
|
|
453
|
-
const
|
|
465
|
+
const n = this.nodeCache.get(nodePath);
|
|
466
|
+
if (!n) return;
|
|
454
467
|
/* this.onGameObjectChangeEmitter.fire({
|
|
455
468
|
type: GameObjectEventType.UPDATE,
|
|
456
469
|
gameObject: gameObject!,
|
|
457
470
|
node: node!,
|
|
458
471
|
}); */
|
|
459
472
|
// 初始化的 size 为 0; 大小在 getSelectionData 里靠 render 后的实例获取,这里只更改 node 的 size;
|
|
460
|
-
if (gameObject &&
|
|
473
|
+
if (gameObject && n) {
|
|
461
474
|
const register = this.opts.renderEngine.getGameObjectIDERegister(
|
|
462
475
|
gameObject!.scene.config.engine,
|
|
463
476
|
gameObject!.type
|
|
464
477
|
);
|
|
465
478
|
const data = register.getSelectionData?.(gameObject, this.lastZoom);
|
|
466
479
|
if (data) {
|
|
467
|
-
|
|
480
|
+
n.size = data.size;
|
|
468
481
|
gameObject.data.size = { ...data.size };
|
|
469
482
|
}
|
|
470
483
|
}
|
|
471
484
|
// 更新父级
|
|
472
|
-
updateParent(
|
|
473
|
-
this.switchSnapline(
|
|
485
|
+
updateParent(n, gameObject);
|
|
486
|
+
this.switchSnapline(n);
|
|
474
487
|
});
|
|
475
488
|
scene.onGameObjectCreate(gameObject, () => {
|
|
476
489
|
this.nodeVersionCache.set(nodePath, newVersion);
|
|
@@ -601,10 +614,7 @@ export class CanvasDraw extends DisposableImpl {
|
|
|
601
614
|
this.draw();
|
|
602
615
|
}
|
|
603
616
|
|
|
604
|
-
setComponentSymbolsToLoader(
|
|
605
|
-
scene: GameSceneIDE,
|
|
606
|
-
child: GameObjectData[] = []
|
|
607
|
-
): void {
|
|
617
|
+
setComponentSymbolsToLoader(child: GameObjectData[] = []): void {
|
|
608
618
|
child.forEach((item: ComponentGameObjectData) => {
|
|
609
619
|
if (item.displayType === GameObjectBaseType.COMPONENT && item.component) {
|
|
610
620
|
const { id } = item.component;
|
|
@@ -618,16 +628,16 @@ export class CanvasDraw extends DisposableImpl {
|
|
|
618
628
|
).filter(c => !this.currentSymbols.some(d => d.id === c.id));
|
|
619
629
|
// 变量数据更新
|
|
620
630
|
this.currentSymbols = this.currentSymbols.concat(currentSymbols);
|
|
621
|
-
this.addComponentSymbolsMetaToLoader(
|
|
631
|
+
this.addComponentSymbolsMetaToLoader();
|
|
622
632
|
}
|
|
623
633
|
if (item.children) {
|
|
624
|
-
this.setComponentSymbolsToLoader(
|
|
634
|
+
this.setComponentSymbolsToLoader(item.children);
|
|
625
635
|
}
|
|
626
636
|
}
|
|
627
637
|
});
|
|
628
638
|
}
|
|
629
639
|
|
|
630
|
-
symbolsToCurrent(
|
|
640
|
+
symbolsToCurrent(content: Editor2dNode): void {
|
|
631
641
|
// const currentSymbols = getCurrentSymbols(this.data!.appConfig!, content);
|
|
632
642
|
const currentSymbols = getCurrentSymbols(
|
|
633
643
|
this.data!.appConfig!,
|
|
@@ -641,26 +651,44 @@ export class CanvasDraw extends DisposableImpl {
|
|
|
641
651
|
// 场景里的 symbols;
|
|
642
652
|
this.currentSymbols = this.currentSymbols.concat(currentSymbols);
|
|
643
653
|
if (content.children) {
|
|
644
|
-
this.setComponentSymbolsToLoader(
|
|
654
|
+
this.setComponentSymbolsToLoader(content.children);
|
|
645
655
|
}
|
|
646
656
|
this.oldSymbols = this.currentSymbols;
|
|
647
657
|
}
|
|
648
658
|
|
|
659
|
+
getSceneSymbolToValue(): GameObjectData['scene'] | undefined {
|
|
660
|
+
const scene = this.data?.content?.scene;
|
|
661
|
+
if (!scene) return scene;
|
|
662
|
+
const t: GameObjectData['scene'] = { ...scene };
|
|
663
|
+
Object.keys(scene).forEach((c: keyof typeof t) => {
|
|
664
|
+
const v: string | number | boolean | undefined = t[c];
|
|
665
|
+
if (v && typeof v === 'string') {
|
|
666
|
+
const matched = v.match(/^\$\{([^\}]+)\}$/);
|
|
667
|
+
if (matched) {
|
|
668
|
+
const symbolId = matched[1];
|
|
669
|
+
const symbol = this.currentSymbols.find(s => s.id === symbolId);
|
|
670
|
+
t[c] = symbol?.value as any;
|
|
671
|
+
}
|
|
672
|
+
}
|
|
673
|
+
});
|
|
674
|
+
return t;
|
|
675
|
+
}
|
|
676
|
+
|
|
649
677
|
/**
|
|
650
678
|
* 获取画布的宽高
|
|
651
679
|
*/
|
|
652
|
-
getSceneSize(): SizeSchema | undefined {
|
|
680
|
+
getSceneSize(scene: GameObjectData['scene'] = this.getSceneSymbolToValue()): SizeSchema | undefined {
|
|
653
681
|
if (!this.data) return undefined;
|
|
654
682
|
const { content, appConfig } = this.data;
|
|
655
683
|
if (!appConfig || !content) return undefined;
|
|
656
684
|
if (content.displayType === 'component') {
|
|
657
685
|
if (this.data.engineName === 'dom') {
|
|
658
|
-
const w =
|
|
659
|
-
?
|
|
660
|
-
:
|
|
661
|
-
const h =
|
|
662
|
-
?
|
|
663
|
-
:
|
|
686
|
+
const w = scene?.scrollXBool
|
|
687
|
+
? scene?.contentWidth || scene?.width
|
|
688
|
+
: scene?.width;
|
|
689
|
+
const h = scene?.scrollYBool
|
|
690
|
+
? scene?.contentHeight || scene?.height
|
|
691
|
+
: scene?.height;
|
|
664
692
|
return {
|
|
665
693
|
width: w || 400,
|
|
666
694
|
height: h || 400,
|
|
@@ -678,8 +706,19 @@ export class CanvasDraw extends DisposableImpl {
|
|
|
678
706
|
this.startLoadLibs();
|
|
679
707
|
return;
|
|
680
708
|
}
|
|
681
|
-
|
|
682
|
-
if (!content || !appConfig || !this.libLoaded
|
|
709
|
+
|
|
710
|
+
if (!content || !appConfig || !this.libLoaded) return;
|
|
711
|
+
|
|
712
|
+
this.currentSymbols = [];
|
|
713
|
+
/**
|
|
714
|
+
* 取出子级是组件的 symbols;
|
|
715
|
+
*/
|
|
716
|
+
this.symbolsToCurrent(content);
|
|
717
|
+
const sceneData = this.getSceneSymbolToValue();
|
|
718
|
+
const size = this.getSceneSize(sceneData);
|
|
719
|
+
if (!size) {
|
|
720
|
+
return;
|
|
721
|
+
}
|
|
683
722
|
this.engineName =
|
|
684
723
|
(content.displayType === GameObjectBaseType.COMPONENT &&
|
|
685
724
|
content.scene?.engine) ||
|
|
@@ -689,7 +728,7 @@ export class CanvasDraw extends DisposableImpl {
|
|
|
689
728
|
|
|
690
729
|
let backgroundColor;
|
|
691
730
|
if (engineName === 'dom' && content.displayType === 'component') {
|
|
692
|
-
backgroundColor =
|
|
731
|
+
backgroundColor = sceneData?.backgroundColor;
|
|
693
732
|
}
|
|
694
733
|
|
|
695
734
|
const scene = this.renderWidget.switchScene(SCENE_KEY, {
|
|
@@ -697,11 +736,6 @@ export class CanvasDraw extends DisposableImpl {
|
|
|
697
736
|
backgroundColor,
|
|
698
737
|
});
|
|
699
738
|
// 绘制时清除 currentSymbol;
|
|
700
|
-
this.currentSymbols = [];
|
|
701
|
-
/**
|
|
702
|
-
* 取出子级是组件的 symbols;
|
|
703
|
-
*/
|
|
704
|
-
this.symbolsToCurrent(scene, content);
|
|
705
739
|
/**
|
|
706
740
|
* 更新画布大小
|
|
707
741
|
*/
|
package/LICENSE
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
MIT License
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2020 GEdit
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|