@gedit/editor-2d 0.1.84 → 0.1.87
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/editor2d-contribution.d.ts +1 -1
- package/lib/browser/editor2d-contribution.d.ts.map +1 -1
- package/lib/browser/editor2d-contribution.js +8 -6
- package/lib/browser/editor2d-contribution.js.map +1 -1
- package/lib/browser/model/editor2d-document.d.ts +1 -1
- package/lib/browser/model/editor2d-document.d.ts.map +1 -1
- package/lib/browser/model/editor2d-document.js +8 -5
- package/lib/browser/model/editor2d-document.js.map +1 -1
- package/lib/browser/model/editor2d-model-container.d.ts.map +1 -1
- package/lib/browser/model/editor2d-model-container.js +0 -1
- package/lib/browser/model/editor2d-model-container.js.map +1 -1
- package/lib/browser/model/editor2d-widget.d.ts.map +1 -1
- package/lib/browser/model/editor2d-widget.js +6 -6
- package/lib/browser/model/editor2d-widget.js.map +1 -1
- package/lib/browser/model/index.d.ts +0 -1
- package/lib/browser/model/index.d.ts.map +1 -1
- package/lib/browser/model/index.js +0 -1
- package/lib/browser/model/index.js.map +1 -1
- package/lib/browser/playground/canvas-draw.d.ts.map +1 -1
- package/lib/browser/playground/canvas-draw.js +8 -11
- package/lib/browser/playground/canvas-draw.js.map +1 -1
- package/lib/browser/playground/canvas-layer.d.ts.map +1 -1
- package/lib/browser/playground/canvas-layer.js +2 -2
- package/lib/browser/playground/canvas-layer.js.map +1 -1
- package/lib/browser/playground/entities/editor2d-entity.d.ts +4 -1
- package/lib/browser/playground/entities/editor2d-entity.d.ts.map +1 -1
- package/lib/browser/playground/entities/editor2d-entity.js +7 -0
- package/lib/browser/playground/entities/editor2d-entity.js.map +1 -1
- package/lib/browser/playground/playground-context.js +2 -2
- package/lib/browser/playground/playground-context.js.map +1 -1
- package/lib/browser/playground/selection-entity-manager.d.ts +3 -2
- package/lib/browser/playground/selection-entity-manager.d.ts.map +1 -1
- package/lib/browser/playground/selection-entity-manager.js +17 -13
- package/lib/browser/playground/selection-entity-manager.js.map +1 -1
- package/package.json +7 -8
- package/src/browser/editor2d-contribution.ts +8 -6
- package/src/browser/model/editor2d-document.ts +8 -5
- package/src/browser/model/editor2d-model-container.ts +0 -2
- package/src/browser/model/editor2d-widget.ts +6 -8
- package/src/browser/model/index.ts +0 -1
- package/src/browser/playground/canvas-draw.ts +8 -11
- package/src/browser/playground/canvas-layer.ts +2 -1
- package/src/browser/playground/entities/editor2d-entity.ts +6 -1
- package/src/browser/playground/playground-context.ts +2 -2
- package/src/browser/playground/selection-entity-manager.tsx +16 -12
- package/lib/browser/editor2d-history-contribution.d.ts +0 -5
- package/lib/browser/editor2d-history-contribution.d.ts.map +0 -1
- package/lib/browser/editor2d-history-contribution.js +0 -34
- package/lib/browser/editor2d-history-contribution.js.map +0 -1
- package/lib/browser/model/editor2d-history.d.ts +0 -6
- package/lib/browser/model/editor2d-history.d.ts.map +0 -1
- package/lib/browser/model/editor2d-history.js +0 -23
- package/lib/browser/model/editor2d-history.js.map +0 -1
- package/src/browser/editor2d-history-contribution.ts +0 -21
- package/src/browser/model/editor2d-history.ts +0 -8
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"canvas-layer.js","sourceRoot":"","sources":["../../../src/browser/playground/canvas-layer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAkD;AAClD,uCAA4C;AAC5C,oDAAoD;AAGpD,oCAAwC;AACxC,uEAAoE;AACpE,6CAA+G;AAE/G;IAAiC,+BAA0B;IAA3D;QAAA,
|
|
1
|
+
{"version":3,"file":"canvas-layer.js","sourceRoot":"","sources":["../../../src/browser/playground/canvas-layer.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,14 +2,17 @@ import { SelectableEntity } from '@gedit/playground/lib/browser';
|
|
|
2
2
|
import type { Editor2dNode } from '../../model';
|
|
3
3
|
import type { GameObject, GameObjectSelectionData } from '@gedit/render-engine-ide';
|
|
4
4
|
import type { PlaygroundContext2d } from '../playground-context';
|
|
5
|
+
import { Editor2dDocument } from '../../model';
|
|
5
6
|
export declare class Editor2dEntity extends SelectableEntity {
|
|
6
7
|
static type: string;
|
|
7
8
|
selectableInit: boolean;
|
|
8
9
|
adsorbableInit: boolean;
|
|
9
|
-
|
|
10
|
+
nodeId: string;
|
|
10
11
|
context: PlaygroundContext2d;
|
|
11
12
|
gameObject: GameObject;
|
|
12
13
|
ignoreTransformChanged: boolean;
|
|
14
|
+
document: Editor2dDocument;
|
|
15
|
+
get node(): Editor2dNode | undefined;
|
|
13
16
|
update(data: GameObjectSelectionData | undefined): void;
|
|
14
17
|
}
|
|
15
18
|
//# sourceMappingURL=editor2d-entity.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"editor2d-entity.d.ts","sourceRoot":"","sources":["../../../../src/browser/playground/entities/editor2d-entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,UAAU,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACpF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"editor2d-entity.d.ts","sourceRoot":"","sources":["../../../../src/browser/playground/entities/editor2d-entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,UAAU,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACpF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAI/C,qBAAa,cAAe,SAAQ,gBAAgB;IAClD,MAAM,CAAC,IAAI,SAAoB;IAC/B,cAAc,UAAS;IACvB,cAAc,UAAS;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,mBAAmB,CAAC;IAC7B,UAAU,EAAE,UAAU,CAAC;IACvB,sBAAsB,UAAQ;IAC9B,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,IAAI,IAAI,IAAI,YAAY,GAAG,SAAS,CAEnC;IAED,MAAM,CAAC,IAAI,EAAE,uBAAuB,GAAG,SAAS,GAAG,IAAI;CAOxD"}
|
|
@@ -25,6 +25,13 @@ var Editor2dEntity = /** @class */ (function (_super) {
|
|
|
25
25
|
_this.ignoreTransformChanged = true;
|
|
26
26
|
return _this;
|
|
27
27
|
}
|
|
28
|
+
Object.defineProperty(Editor2dEntity.prototype, "node", {
|
|
29
|
+
get: function () {
|
|
30
|
+
return this.document.getNode(this.nodeId);
|
|
31
|
+
},
|
|
32
|
+
enumerable: false,
|
|
33
|
+
configurable: true
|
|
34
|
+
});
|
|
28
35
|
// private data?: GameObjectSelectionData;
|
|
29
36
|
Editor2dEntity.prototype.update = function (data) {
|
|
30
37
|
if (data) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"editor2d-entity.js","sourceRoot":"","sources":["../../../../src/browser/playground/entities/editor2d-entity.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yDAAiE;
|
|
1
|
+
{"version":3,"file":"editor2d-entity.js","sourceRoot":"","sources":["../../../../src/browser/playground/entities/editor2d-entity.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yDAAiE;AAMjE,0CAA0C;AAE1C;IAAoC,kCAAgB;IAApD;QAAA,qEAoBC;QAlBC,oBAAc,GAAG,KAAK,CAAC;QACvB,oBAAc,GAAG,KAAK,CAAC;QAIvB,4BAAsB,GAAG,IAAI,CAAC;;IAahC,CAAC;IAXC,sBAAI,gCAAI;aAAR;YACE,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAE,CAAC;QAC7C,CAAC;;;OAAA;IACD,0CAA0C;IAC1C,+BAAM,GAAN,UAAO,IAAyC;QAC9C,IAAI,IAAI,EAAE;YACR,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC5B,oBAAoB;YACpB,gCAAgC;SACjC;IACH,CAAC;IAlBM,mBAAI,GAAG,gBAAgB,CAAC;IAmBjC,qBAAC;CAAA,AApBD,CAAoC,0BAAgB,GAoBnD;AApBY,wCAAc"}
|
|
@@ -44,7 +44,7 @@ var PlaygroundContext2d = /** @class */ (function () {
|
|
|
44
44
|
var selectedNodes = _this.selection.selectedNodes;
|
|
45
45
|
// 清空数据
|
|
46
46
|
selectedNodes.forEach(function (node) {
|
|
47
|
-
if (!selectedEntities.find(function (e) { return e.
|
|
47
|
+
if (!selectedEntities.find(function (e) { return e.nodeId === node.id; })) {
|
|
48
48
|
_this.selection.addSelection({
|
|
49
49
|
node: node,
|
|
50
50
|
type: SelectionType.TOGGLE
|
|
@@ -53,7 +53,7 @@ var PlaygroundContext2d = /** @class */ (function () {
|
|
|
53
53
|
});
|
|
54
54
|
selectedEntities.forEach(function (entity) {
|
|
55
55
|
var node = entity.node;
|
|
56
|
-
if (!selectedNodes.find(function (e) { return e.id === node.id; })) {
|
|
56
|
+
if (node && !selectedNodes.find(function (e) { return e.id === node.id; })) {
|
|
57
57
|
_this.expandedNode(node);
|
|
58
58
|
_this.selection.addSelection({
|
|
59
59
|
node: node,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"playground-context.js","sourceRoot":"","sources":["../../../src/browser/playground/playground-context.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,uCAA+C;AAC/C,8DAAkE;AAClE,oCAAgE;AAChE,gDAAqD;AACrD,sCAA6C;AAG7C,gDAA2D;AAC3D,gEAA8D;AAC9D,kEAAgE;AAChE,8CAAuE;AACvE,gEAA6D;AAC7D,gFAA4E;AAC5E,IAAO,aAAa,GAAG,oBAAa,CAAC,aAAa,CAAC;AAGtC,QAAA,kBAAkB,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAC;AAK/D;IACE,6BAC2C,YAAoC,EAC1C,QAA0B,EACzB,SAA4B,EAC7B,gBAAkC,EAClC,SAA2B,EACvB,OAA6B,EACxB,iBAA4C;QAP1F,iBASC;QAR0C,iBAAY,GAAZ,YAAY,CAAwB;QAC1C,aAAQ,GAAR,QAAQ,CAAkB;QACzB,cAAS,GAAT,SAAS,CAAmB;QAC7B,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,cAAS,GAAT,SAAS,CAAkB;QACvB,YAAO,GAAP,OAAO,CAAsB;QACxB,sBAAiB,GAAjB,iBAAiB,CAA2B;QAU1F;;WAEG;QACH,wBAAmB,GAAG,gBAAQ,CAAC,UAAC,QAAgC;YAC9D,IAAM,gBAAgB,GAAqB,QAAQ,CAAC,mBAAmB,EAAE,CAAC;YAC1E,IAAM,aAAa,GAAG,KAAI,CAAC,SAAS,CAAC,aAAa,CAAC;YACnD,OAAO;YACP,aAAa,CAAC,OAAO,CAAC,UAAA,IAAI;gBACxB,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"playground-context.js","sourceRoot":"","sources":["../../../src/browser/playground/playground-context.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,10 +11,11 @@ import { GameObject } from '@gedit/render-engine';
|
|
|
11
11
|
export declare class SelectionEntityManager {
|
|
12
12
|
protected entityManager: EntityManager;
|
|
13
13
|
protected context: PlaygroundContext2d;
|
|
14
|
+
protected loading: () => boolean;
|
|
14
15
|
protected getDocument: () => Editor2dDocument | undefined;
|
|
15
16
|
protected isVisible: () => boolean;
|
|
16
17
|
protected nodeEntitiesCache: Map<string, Editor2dEntity>;
|
|
17
|
-
constructor(entityManager: EntityManager, context: PlaygroundContext2d, getDocument: () => Editor2dDocument | undefined, isVisible: () => boolean);
|
|
18
|
+
constructor(entityManager: EntityManager, context: PlaygroundContext2d, loading: () => boolean, getDocument: () => Editor2dDocument | undefined, isVisible: () => boolean);
|
|
18
19
|
/**
|
|
19
20
|
* 创建画布对应的选择器实体
|
|
20
21
|
* @param nodePath
|
|
@@ -25,7 +26,7 @@ export declare class SelectionEntityManager {
|
|
|
25
26
|
*/
|
|
26
27
|
createEntity(nodePath: string, node: Editor2dNode, gameObject: GameObject, selectable: boolean, adsorbable: boolean): Editor2dEntity | undefined;
|
|
27
28
|
removeEntity(nodePath: string): void;
|
|
28
|
-
updateEntity(nodePath: string, gameObject: GameObject
|
|
29
|
+
updateEntity(nodePath: string, gameObject: GameObject): void;
|
|
29
30
|
getSelectedEntities(): Editor2dEntity[];
|
|
30
31
|
/**
|
|
31
32
|
* 滚动到选择器所在位置
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"selection-entity-manager.d.ts","sourceRoot":"","sources":["../../../src/browser/playground/selection-entity-manager.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D,OAAO,EAEL,aAAa,EAGd,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD;;GAEG;AACH,qBAAa,sBAAsB;IAG/B,SAAS,CAAC,aAAa,EAAE,aAAa;IACtC,SAAS,CAAC,OAAO,EAAE,mBAAmB;IACtC,SAAS,CAAC,WAAW,EAAE,MAAM,gBAAgB,GAAG,SAAS;IACzD,SAAS,CAAC,SAAS,EAAE,MAAM,OAAO;
|
|
1
|
+
{"version":3,"file":"selection-entity-manager.d.ts","sourceRoot":"","sources":["../../../src/browser/playground/selection-entity-manager.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D,OAAO,EAEL,aAAa,EAGd,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD;;GAEG;AACH,qBAAa,sBAAsB;IAG/B,SAAS,CAAC,aAAa,EAAE,aAAa;IACtC,SAAS,CAAC,OAAO,EAAE,mBAAmB;IACtC,SAAS,CAAC,OAAO,EAAE,MAAM,OAAO;IAChC,SAAS,CAAC,WAAW,EAAE,MAAM,gBAAgB,GAAG,SAAS;IACzD,SAAS,CAAC,SAAS,EAAE,MAAM,OAAO;IANpC,SAAS,CAAC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAa;gBAEzD,aAAa,EAAE,aAAa,EAC5B,OAAO,EAAE,mBAAmB,EAC5B,OAAO,EAAE,MAAM,OAAO,EACtB,WAAW,EAAE,MAAM,gBAAgB,GAAG,SAAS,EAC/C,SAAS,EAAE,MAAM,OAAO;IAoBpC;;;;;;;OAOG;IACH,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,GAAG,cAAc,GAAG,SAAS;IA2DhJ,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAMpC,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,GAAG,IAAI;IA8B5D,mBAAmB,IAAI,cAAc,EAAE;IASvC;;OAEG;IACH,qBAAqB,6CAgBd;IACP;;OAEG;IACH,sBAAsB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,SAAS;IAStE,QAAQ,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,OAAO;IAKjD,QAAQ,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,OAAO;CAKlD"}
|
|
@@ -33,10 +33,11 @@ var math_1 = require("@gedit/math");
|
|
|
33
33
|
* 选择器实体相关逻辑
|
|
34
34
|
*/
|
|
35
35
|
var SelectionEntityManager = /** @class */ (function () {
|
|
36
|
-
function SelectionEntityManager(entityManager, context, getDocument, isVisible) {
|
|
36
|
+
function SelectionEntityManager(entityManager, context, loading, getDocument, isVisible) {
|
|
37
37
|
var _this = this;
|
|
38
38
|
this.entityManager = entityManager;
|
|
39
39
|
this.context = context;
|
|
40
|
+
this.loading = loading;
|
|
40
41
|
this.getDocument = getDocument;
|
|
41
42
|
this.isVisible = isVisible;
|
|
42
43
|
this.nodeEntitiesCache = new Map();
|
|
@@ -49,7 +50,7 @@ var SelectionEntityManager = /** @class */ (function () {
|
|
|
49
50
|
try {
|
|
50
51
|
for (var _b = __values(_this.nodeEntitiesCache.values()), _c = _b.next(); !_c.done; _c = _b.next()) {
|
|
51
52
|
var entity = _c.value;
|
|
52
|
-
if (!model_1.Editor2dNode.isRootNode(entity.node) && entity.selectable) {
|
|
53
|
+
if (!model_1.Editor2dNode.isRootNode(entity.node) && entity.node && entity.selectable) {
|
|
53
54
|
if (!entity.selected && entity.node.selected) {
|
|
54
55
|
entitiesScrollTo.push(entity);
|
|
55
56
|
}
|
|
@@ -79,9 +80,11 @@ var SelectionEntityManager = /** @class */ (function () {
|
|
|
79
80
|
if (_this.context.options.extendEntityRenderer) {
|
|
80
81
|
newProps.extendRenderer = function () { return _this.context.options.extendEntityRenderer(__assign(__assign({}, props), { context: _this.context })); };
|
|
81
82
|
}
|
|
82
|
-
var deco =
|
|
83
|
+
var deco = entity.node
|
|
84
|
+
? _this.context.renderEngine.getGameObjectDecoration(entity.gameObject.scene.config.engine, entity.node.displayType)
|
|
85
|
+
: undefined;
|
|
83
86
|
// 自定义渲染器
|
|
84
|
-
if (deco.selectionRenderer) {
|
|
87
|
+
if (deco && deco.selectionRenderer) {
|
|
85
88
|
var Comp = deco.selectionRenderer;
|
|
86
89
|
return React.createElement(Comp, __assign({}, newProps));
|
|
87
90
|
}
|
|
@@ -108,8 +111,9 @@ var SelectionEntityManager = /** @class */ (function () {
|
|
|
108
111
|
entity.mouseSelect = selectable && (deco.mouseSelect === undefined ? true : deco.mouseSelect);
|
|
109
112
|
entity.adsorbable = adsorbable && (deco.adsorbable === undefined ? true : deco.adsorbable);
|
|
110
113
|
entity.gameObject = gameObject;
|
|
114
|
+
entity.document = this.getDocument();
|
|
115
|
+
entity.nodeId = node.id;
|
|
111
116
|
entity.context = this.context;
|
|
112
|
-
entity.node = node;
|
|
113
117
|
entity.transform.sizeToScale = !!deco.sizeToScale;
|
|
114
118
|
// 切换选择框的类型,如圆形、矩形, 默认矩形
|
|
115
119
|
if (deco.selectDisplayType) {
|
|
@@ -119,9 +123,10 @@ var SelectionEntityManager = /** @class */ (function () {
|
|
|
119
123
|
}
|
|
120
124
|
// 实体选中状态改变
|
|
121
125
|
entity.onToggleSelect(function (selected) {
|
|
122
|
-
|
|
126
|
+
var newNode = entity.node;
|
|
127
|
+
if (newNode && newNode.selected !== selected) {
|
|
123
128
|
// 这个只记录选择,但不会真实触发tree组件的选择器,所以需要再同步一次
|
|
124
|
-
|
|
129
|
+
newNode.selected = selected;
|
|
125
130
|
// 点击画布后则同步选择器
|
|
126
131
|
_this.context.syncToSelectionTree(_this);
|
|
127
132
|
}
|
|
@@ -134,7 +139,7 @@ var SelectionEntityManager = /** @class */ (function () {
|
|
|
134
139
|
// let lastTransform: TransformSchema | undefined;
|
|
135
140
|
entity.onTransformChanged(function (newTransform) {
|
|
136
141
|
var document = _this.getDocument();
|
|
137
|
-
if (!document) {
|
|
142
|
+
if (_this.loading() || !document) {
|
|
138
143
|
return;
|
|
139
144
|
}
|
|
140
145
|
/* if (!lastTransform || !document || document.animationStarted || entity.ignoreTransformChanged) {
|
|
@@ -142,7 +147,7 @@ var SelectionEntityManager = /** @class */ (function () {
|
|
|
142
147
|
return;
|
|
143
148
|
}; */
|
|
144
149
|
// const delta = TransformSchema.getDelta(lastTransform, newTransform);
|
|
145
|
-
document.updateNode(
|
|
150
|
+
document.updateNode(entity.nodeId, newTransform, true);
|
|
146
151
|
// lastTransform = newTransform;
|
|
147
152
|
});
|
|
148
153
|
// 设置控制key
|
|
@@ -161,15 +166,14 @@ var SelectionEntityManager = /** @class */ (function () {
|
|
|
161
166
|
entity.dispose();
|
|
162
167
|
}
|
|
163
168
|
};
|
|
164
|
-
SelectionEntityManager.prototype.updateEntity = function (nodePath, gameObject
|
|
169
|
+
SelectionEntityManager.prototype.updateEntity = function (nodePath, gameObject) {
|
|
165
170
|
var register = this.context.renderEngine.getGameObjectIDERegister(gameObject.scene.config.engine, gameObject.type);
|
|
166
171
|
var deco = register.decoration;
|
|
167
172
|
var entity = this.nodeEntitiesCache.get(nodePath);
|
|
168
173
|
if (!entity || !register.getSelectionData) {
|
|
169
174
|
return;
|
|
170
175
|
}
|
|
171
|
-
node =
|
|
172
|
-
entity.node = node;
|
|
176
|
+
var node = entity.node;
|
|
173
177
|
entity.ignoreTransformChanged = true;
|
|
174
178
|
if (gameObject.parent) {
|
|
175
179
|
var parentEntity = this.nodeEntitiesCache.get(gameObject.parent.id);
|
|
@@ -188,7 +192,7 @@ var SelectionEntityManager = /** @class */ (function () {
|
|
|
188
192
|
// 是否支持吸附
|
|
189
193
|
entity.adsorbable = entity.adsorbableInit && sizeVisible && (deco.adsorbable === undefined ? true : deco.adsorbable);
|
|
190
194
|
// 同步选中状态
|
|
191
|
-
entity.selected = node.selected;
|
|
195
|
+
entity.selected = !!(node === null || node === void 0 ? void 0 : node.selected);
|
|
192
196
|
// 更新zIndex, 每次都要更新,因为节点拖拽会导致所有的zIndex顺序错乱
|
|
193
197
|
entity.zIndex = gameObject.data.depth || 0;
|
|
194
198
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"selection-entity-manager.js","sourceRoot":"","sources":["../../../src/browser/playground/selection-entity-manager.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6BAA+B;AAC/B,kCAA0D;AAC1D,8DAA4D;AAC5D,sCAAyD;AACzD,gDAK2B;AAE3B,oCAAwC;AAGxC;;GAEG;AACH;IAEE,gCACY,aAA4B,EAC5B,OAA4B,EAC5B,WAA+C,EAC/C,SAAwB;
|
|
1
|
+
{"version":3,"file":"selection-entity-manager.js","sourceRoot":"","sources":["../../../src/browser/playground/selection-entity-manager.tsx"],"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.1.
|
|
3
|
+
"version": "0.1.87",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"main": "lib/browser/index",
|
|
6
6
|
"typings": "lib/browser/index.d.ts",
|
|
@@ -9,12 +9,11 @@
|
|
|
9
9
|
"src"
|
|
10
10
|
],
|
|
11
11
|
"dependencies": {
|
|
12
|
-
"@gedit/app-config": "^0.1.
|
|
13
|
-
"@gedit/editor": "^0.1.
|
|
14
|
-
"@gedit/
|
|
15
|
-
"@gedit/
|
|
16
|
-
"@gedit/
|
|
17
|
-
"@gedit/workspace-2d": "^0.1.66",
|
|
12
|
+
"@gedit/app-config": "^0.1.81",
|
|
13
|
+
"@gedit/editor": "^0.1.66",
|
|
14
|
+
"@gedit/playground": "^0.1.73",
|
|
15
|
+
"@gedit/render-engine-ide": "^0.1.87",
|
|
16
|
+
"@gedit/workspace-2d": "^0.1.69",
|
|
18
17
|
"json-stringify-pretty-compact": "^2.0.0"
|
|
19
18
|
},
|
|
20
19
|
"geditExtensions": [
|
|
@@ -35,5 +34,5 @@
|
|
|
35
34
|
"nyc": {
|
|
36
35
|
"extends": "../../configs/nyc.json"
|
|
37
36
|
},
|
|
38
|
-
"gitHead": "
|
|
37
|
+
"gitHead": "9e9f61f5ab9f1696ef5cf0875966dea9402a2c30"
|
|
39
38
|
}
|
|
@@ -47,23 +47,25 @@ export class Editor2dContribution implements FrontendApplicationContribution, Co
|
|
|
47
47
|
@inject(RenderEngineIDEService) readonly renderEngineService: RenderEngineIDEService;
|
|
48
48
|
|
|
49
49
|
onStart(): void {
|
|
50
|
-
this.appShell.onDidChangeActiveWidget(this.updateFocusContextKeys.bind(this));
|
|
50
|
+
// this.appShell.onDidChangeActiveWidget(this.updateFocusContextKeys.bind(this));
|
|
51
51
|
this.modelProvider.onModelCreate(model => {
|
|
52
52
|
model.onSelectionChanged(e => this.autoOpenUrls(e.selectedNodes as Editor2dNode[], model));
|
|
53
53
|
});
|
|
54
54
|
}
|
|
55
55
|
|
|
56
|
-
|
|
56
|
+
updateFocusContextKeys(): void {
|
|
57
57
|
const currentWidget = this.appShell?.currentWidget as NavigatableWidget;
|
|
58
58
|
const activeWidget = this.appShell?.activeWidget as NavigatableWidget;
|
|
59
59
|
let refsUri: URI | undefined;
|
|
60
60
|
let focusedUri: URI | undefined;
|
|
61
61
|
let editor2dWidgetFocused = false;
|
|
62
62
|
let editor2dWidgetRefs = false;
|
|
63
|
-
if (currentWidget
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
63
|
+
if (currentWidget) {
|
|
64
|
+
if (currentWidget.getReferenceUri) {
|
|
65
|
+
refsUri = currentWidget.getReferenceUri();
|
|
66
|
+
} else if (currentWidget.getResourceUri) {
|
|
67
|
+
refsUri = currentWidget.getResourceUri();
|
|
68
|
+
}
|
|
67
69
|
}
|
|
68
70
|
if (activeWidget && !!activeWidget.getResourceUri) {
|
|
69
71
|
focusedUri = activeWidget.getResourceUri();
|
|
@@ -39,7 +39,7 @@ export class Editor2dDocument extends TreeImpl<Editor2dNode, Editor2dContainerNo
|
|
|
39
39
|
protected errors: ResourceRefError[] = [];
|
|
40
40
|
protected componentContents: { [key: string]: Editor2dNode } = {};
|
|
41
41
|
protected _snaplines: any[] = [];
|
|
42
|
-
public
|
|
42
|
+
public loading = true;
|
|
43
43
|
|
|
44
44
|
get uri(): string {
|
|
45
45
|
return this.options.autoSaveService.resource.uri.toString();
|
|
@@ -206,7 +206,7 @@ export class Editor2dDocument extends TreeImpl<Editor2dNode, Editor2dContainerNo
|
|
|
206
206
|
}
|
|
207
207
|
}
|
|
208
208
|
updateNode(node: Editor2dNode | string, data: Partial<Editor2dNode> = {}, forceUpdate: boolean = false, noSave?: boolean, noFiredChanged?: boolean): void {
|
|
209
|
-
const treeNode = typeof node === 'string' ? this.nodes[node] : node;
|
|
209
|
+
const treeNode = typeof node === 'string' ? this.nodes[node] : this.nodes[node.id];
|
|
210
210
|
if (!treeNode) return;
|
|
211
211
|
// if (data.name) {
|
|
212
212
|
// // 名字重复了, 则回滚不可修改
|
|
@@ -253,6 +253,7 @@ export class Editor2dDocument extends TreeImpl<Editor2dNode, Editor2dContainerNo
|
|
|
253
253
|
}
|
|
254
254
|
protected reloadContent(content: string): void {
|
|
255
255
|
let data: Editor2dContent = { version: this.version };
|
|
256
|
+
this.loading = true;
|
|
256
257
|
try {
|
|
257
258
|
data = JSON.parse(content || '{}') as Editor2dContent;
|
|
258
259
|
} catch (e) {
|
|
@@ -268,10 +269,10 @@ export class Editor2dDocument extends TreeImpl<Editor2dNode, Editor2dContainerNo
|
|
|
268
269
|
if (data.snaplines) {
|
|
269
270
|
this._snaplines = data.snaplines;
|
|
270
271
|
}
|
|
271
|
-
this.firstLoaded = true;
|
|
272
272
|
this.refresh();
|
|
273
273
|
this.loadRefInfos();
|
|
274
274
|
this.fireContentChanged([], 'add', true);
|
|
275
|
+
this.loading = false;
|
|
275
276
|
}
|
|
276
277
|
protected createRootNode(): Editor2dNode {
|
|
277
278
|
const root = Editor2dNode.createRootNode(new URI(this.uri));
|
|
@@ -288,7 +289,7 @@ export class Editor2dDocument extends TreeImpl<Editor2dNode, Editor2dContainerNo
|
|
|
288
289
|
if (!noFiredChanged) {
|
|
289
290
|
this.onContentChangedEmitter.fire({ document: this, contentChanges: contents, nodes, type });
|
|
290
291
|
}
|
|
291
|
-
if (!noSave) {
|
|
292
|
+
if (!this.loading && !noSave) {
|
|
292
293
|
this.onSavedEmitter.fire({ document: this, contentChanges: contents, nodes, type });
|
|
293
294
|
}
|
|
294
295
|
};
|
|
@@ -731,6 +732,8 @@ export class Editor2dDocument extends TreeImpl<Editor2dNode, Editor2dContainerNo
|
|
|
731
732
|
}
|
|
732
733
|
set snaplines(lines) {
|
|
733
734
|
this._snaplines = lines;
|
|
734
|
-
|
|
735
|
+
if (JSON.stringify(lines) !== JSON.stringify(this._snaplines)) {
|
|
736
|
+
this.fireContentChanged([], 'update');
|
|
737
|
+
}
|
|
735
738
|
}
|
|
736
739
|
}
|
|
@@ -2,7 +2,6 @@ import { Container, interfaces } from 'inversify';
|
|
|
2
2
|
import {
|
|
3
3
|
Editor2dDocument,
|
|
4
4
|
Editor2dDocumentContextMenuPath,
|
|
5
|
-
Editor2dHistory,
|
|
6
5
|
Editor2dModel,
|
|
7
6
|
Editor2dModelOptions,
|
|
8
7
|
Editor2dSelection,
|
|
@@ -26,7 +25,6 @@ export function createEditor2dModelContainer(parent: interfaces.Container, opts:
|
|
|
26
25
|
child.bind(Editor2dDocument).toSelf();
|
|
27
26
|
child.bind(Editor2dSelection).toSelf();
|
|
28
27
|
child.bind(Editor2dModel).toSelf();
|
|
29
|
-
child.bind(Editor2dHistory).toSelf();
|
|
30
28
|
child.bind(Editor2dWidget).toSelf();
|
|
31
29
|
// 适配TreeSelection
|
|
32
30
|
child.bind(Tree).toService(Editor2dDocument);
|
|
@@ -47,19 +47,17 @@ export class Editor2dWidget extends BaseWidget implements IStatefulWidget {
|
|
|
47
47
|
initModel(model: Editor2dModel): void {
|
|
48
48
|
this.model = model;
|
|
49
49
|
const snaplineConfigEntity = this.playground.getConfigEntity<SnaplineConfigEntity>(SnaplineConfigEntity)!;
|
|
50
|
-
let snaplineLoaded = false;
|
|
51
50
|
this.toDispose.pushAll([
|
|
51
|
+
snaplineConfigEntity.onConfigChanged(() => {
|
|
52
|
+
if (!model.document.loading) {
|
|
53
|
+
model.document.snaplines = snaplineConfigEntity.toDataJSON().lines;
|
|
54
|
+
}
|
|
55
|
+
}),
|
|
52
56
|
model.onDocumentContentChanged(e => {
|
|
53
|
-
if (e.document.
|
|
54
|
-
snaplineLoaded = true;
|
|
57
|
+
if (e.document.loading) {
|
|
55
58
|
snaplineConfigEntity.updateConfig({
|
|
56
59
|
lines: model.document.snaplines || [],
|
|
57
60
|
});
|
|
58
|
-
this.toDispose.push(
|
|
59
|
-
snaplineConfigEntity.onConfigChanged(() => {
|
|
60
|
-
model.document.snaplines = snaplineConfigEntity.toDataJSON().lines;
|
|
61
|
-
}),
|
|
62
|
-
);
|
|
63
61
|
}
|
|
64
62
|
this.updateDocument(e);
|
|
65
63
|
this.playground.focus();
|
|
@@ -238,10 +238,6 @@ export class CanvasDraw extends DisposableImpl {
|
|
|
238
238
|
// 节点重置
|
|
239
239
|
if (nodeChanged) {
|
|
240
240
|
this.nodeCache.set(nodePath, node);
|
|
241
|
-
if (gameObject) {
|
|
242
|
-
gameObject.dispose();
|
|
243
|
-
return this.updateGameObject(scene, node, currentDepth, renderKeys, isInside, parentId);
|
|
244
|
-
}
|
|
245
241
|
}
|
|
246
242
|
let firstCreate = false;
|
|
247
243
|
const nodeData = toNodeData(node, this.data!.appConfig!);
|
|
@@ -261,32 +257,33 @@ export class CanvasDraw extends DisposableImpl {
|
|
|
261
257
|
scene.onGameObjectDispose(gameObject, () => {
|
|
262
258
|
this.gameObjectCache.delete(nodePath);
|
|
263
259
|
this.nodeVersionCache.delete(nodePath);
|
|
264
|
-
this.
|
|
260
|
+
this.nodeCache.delete(nodePath);
|
|
261
|
+
this.onGameObjectChangeEmitter.fire({ type: GameObjectEventType.DESTROY, gameObject: gameObject!, node: this.nodeCache.get(nodePath)! });
|
|
265
262
|
});
|
|
266
263
|
scene.onGameObjectUpdate(gameObject, () => {
|
|
267
264
|
this.onGameObjectChangeEmitter.fire({
|
|
268
265
|
type: GameObjectEventType.UPDATE,
|
|
269
266
|
gameObject: gameObject!,
|
|
270
|
-
node
|
|
267
|
+
node: this.nodeCache.get(nodePath)!,
|
|
271
268
|
});
|
|
272
269
|
});
|
|
273
270
|
scene.onGameObjectCreate(gameObject, () => {
|
|
274
271
|
this.nodeVersionCache.set(nodePath, newVersion);
|
|
275
272
|
// 根节点创建完成则代表加载完成
|
|
276
|
-
this.fireLoading(Editor2dNode.isRootNode(
|
|
273
|
+
this.fireLoading(Editor2dNode.isRootNode(this.nodeCache.get(nodePath)!));
|
|
277
274
|
});
|
|
278
275
|
scene.onGameObjectError(gameObject, error => {
|
|
279
276
|
this.onGameObjectChangeEmitter.fire({
|
|
280
277
|
type: GameObjectEventType.ERROR,
|
|
281
278
|
gameObject: gameObject!,
|
|
282
|
-
node
|
|
279
|
+
node: this.nodeCache.get(nodePath)!,
|
|
283
280
|
error,
|
|
284
281
|
});
|
|
285
282
|
});
|
|
286
283
|
this.onGameObjectChangeEmitter.fire({
|
|
287
284
|
type: GameObjectEventType.CREATE,
|
|
288
285
|
gameObject: gameObject!,
|
|
289
|
-
node
|
|
286
|
+
node: this.nodeCache.get(nodePath)!,
|
|
290
287
|
state: { selectable, adsorbable, isInside }
|
|
291
288
|
});
|
|
292
289
|
firstCreate = true;
|
|
@@ -297,12 +294,12 @@ export class CanvasDraw extends DisposableImpl {
|
|
|
297
294
|
// 素材更新则销毁重新创建
|
|
298
295
|
if (oldTexture !== newTexture) {
|
|
299
296
|
gameObject.dispose();
|
|
300
|
-
return this.updateGameObject(scene,
|
|
297
|
+
return this.updateGameObject(scene, this.nodeCache.get(nodePath)!, currentDepth, renderKeys, isInside, parentId);
|
|
301
298
|
}
|
|
302
299
|
}
|
|
303
300
|
const update = () => {
|
|
304
301
|
const oldVersion = this.nodeVersionCache.get(nodePath);
|
|
305
|
-
if (oldVersion !== newVersion) {
|
|
302
|
+
if (nodeChanged || oldVersion !== newVersion) {
|
|
306
303
|
gameObject!.update({
|
|
307
304
|
...nodeData,
|
|
308
305
|
parentId,
|
|
@@ -17,6 +17,7 @@ export class CanvasLayer extends Layer<PlaygroundContext2d> {
|
|
|
17
17
|
this.selectionEntityManager = new SelectionEntityManager(
|
|
18
18
|
this.entityManager,
|
|
19
19
|
this.context,
|
|
20
|
+
() => !!this.canvasDrawer?.loading,
|
|
20
21
|
() => this.document,
|
|
21
22
|
() => !!this.documentEntity.config?.visible
|
|
22
23
|
);
|
|
@@ -50,7 +51,7 @@ export class CanvasLayer extends Layer<PlaygroundContext2d> {
|
|
|
50
51
|
this.selectionEntityManager.removeEntity(gameObject.id);
|
|
51
52
|
break;
|
|
52
53
|
case GameObjectEventType.UPDATE:
|
|
53
|
-
this.selectionEntityManager.updateEntity(gameObject.id, gameObject
|
|
54
|
+
this.selectionEntityManager.updateEntity(gameObject.id, gameObject!);
|
|
54
55
|
// TODO 父节点更新则通知子节点更新, 用于刷新transform
|
|
55
56
|
gameObject!.children.forEach(c => {
|
|
56
57
|
this.selectionEntityManager.updateEntity(c.id as string, c);
|
|
@@ -2,6 +2,7 @@ import { SelectableEntity } from '@gedit/playground/lib/browser';
|
|
|
2
2
|
import type { Editor2dNode } from '../../model';
|
|
3
3
|
import type { GameObject, GameObjectSelectionData } from '@gedit/render-engine-ide';
|
|
4
4
|
import type { PlaygroundContext2d } from '../playground-context';
|
|
5
|
+
import { Editor2dDocument } from '../../model';
|
|
5
6
|
|
|
6
7
|
// import { Compare } from '@gedit/utils';
|
|
7
8
|
|
|
@@ -9,10 +10,14 @@ export class Editor2dEntity extends SelectableEntity {
|
|
|
9
10
|
static type = 'Editor2dEntity';
|
|
10
11
|
selectableInit = false;
|
|
11
12
|
adsorbableInit = false;
|
|
12
|
-
|
|
13
|
+
nodeId: string;
|
|
13
14
|
context: PlaygroundContext2d;
|
|
14
15
|
gameObject: GameObject;
|
|
15
16
|
ignoreTransformChanged = true;
|
|
17
|
+
document: Editor2dDocument;
|
|
18
|
+
get node(): Editor2dNode | undefined {
|
|
19
|
+
return this.document.getNode(this.nodeId)!;
|
|
20
|
+
}
|
|
16
21
|
// private data?: GameObjectSelectionData;
|
|
17
22
|
update(data: GameObjectSelectionData | undefined): void {
|
|
18
23
|
if (data) {
|
|
@@ -45,7 +45,7 @@ export class PlaygroundContext2d {
|
|
|
45
45
|
const selectedNodes = this.selection.selectedNodes;
|
|
46
46
|
// 清空数据
|
|
47
47
|
selectedNodes.forEach(node => {
|
|
48
|
-
if (!selectedEntities.find(e => e.
|
|
48
|
+
if (!selectedEntities.find(e => e.nodeId === node.id)) {
|
|
49
49
|
this.selection.addSelection({
|
|
50
50
|
node: node as Readonly<SelectableTreeNode>,
|
|
51
51
|
type: SelectionType.TOGGLE
|
|
@@ -54,7 +54,7 @@ export class PlaygroundContext2d {
|
|
|
54
54
|
});
|
|
55
55
|
selectedEntities.forEach(entity => {
|
|
56
56
|
const node = entity.node;
|
|
57
|
-
if (!selectedNodes.find(e => e.id === node.id)) {
|
|
57
|
+
if (node && !selectedNodes.find(e => e.id === node.id)) {
|
|
58
58
|
this.expandedNode(node);
|
|
59
59
|
this.selection.addSelection({
|
|
60
60
|
node: node as Readonly<SelectableTreeNode>,
|