@ives_xxz/framework 1.2.19 → 1.2.21
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/FW.d.ts +1 -1
- package/manager/FWLayerManager.ts +20 -12
- package/package.json +1 -1
package/FW.d.ts
CHANGED
|
@@ -34,7 +34,7 @@ export class FWLayerManager extends FWManager implements FW.LayerManager {
|
|
|
34
34
|
/**
|
|
35
35
|
* 当前已经打开的layer缓存容器
|
|
36
36
|
*/
|
|
37
|
-
private layerMap: Map<
|
|
37
|
+
private layerMap: Map<new () => FW.LayerController, FW.LayerData>;
|
|
38
38
|
|
|
39
39
|
/**
|
|
40
40
|
* 当前所有打开Layer注册表
|
|
@@ -47,7 +47,7 @@ export class FWLayerManager extends FWManager implements FW.LayerManager {
|
|
|
47
47
|
|
|
48
48
|
public initialize(): void {
|
|
49
49
|
this.layerQueue = new FWQueue<FW.LayerData>();
|
|
50
|
-
this.layerMap = new Map<
|
|
50
|
+
this.layerMap = new Map<new () => FW.LayerController, FW.LayerData>();
|
|
51
51
|
this.layerRegistry = new Set<new () => FW.LayerController>();
|
|
52
52
|
this.layerStack = [];
|
|
53
53
|
}
|
|
@@ -137,10 +137,11 @@ export class FWLayerManager extends FWManager implements FW.LayerManager {
|
|
|
137
137
|
layerData.controller = ctr;
|
|
138
138
|
layerData.controllerName = ctrName;
|
|
139
139
|
|
|
140
|
-
this.layerMap.set(
|
|
140
|
+
this.layerMap.set(data.type, layerData);
|
|
141
|
+
FWLog.debug('打开Layer -> ', layerData?.controllerName, this.layerMap.has(data.type));
|
|
141
142
|
|
|
142
143
|
if (this.layerRegistry.has(data.type)) {
|
|
143
|
-
return this.layerMap.get(
|
|
144
|
+
return this.layerMap.get(data.type).controllerProxy as Ctr;
|
|
144
145
|
}
|
|
145
146
|
|
|
146
147
|
this.layerRegistry.add(data.type);
|
|
@@ -228,10 +229,10 @@ export class FWLayerManager extends FWManager implements FW.LayerManager {
|
|
|
228
229
|
layerData.controller = ctr;
|
|
229
230
|
layerData.controllerName = ctrName;
|
|
230
231
|
|
|
231
|
-
this.layerMap.set(
|
|
232
|
+
this.layerMap.set(data.type, layerData);
|
|
232
233
|
|
|
233
234
|
if (this.layerRegistry.has(data.type)) {
|
|
234
|
-
return this.layerMap.get(
|
|
235
|
+
return this.layerMap.get(data.type).controllerProxy as Ctr;
|
|
235
236
|
}
|
|
236
237
|
|
|
237
238
|
this.layerRegistry.add(data.type);
|
|
@@ -300,7 +301,10 @@ export class FWLayerManager extends FWManager implements FW.LayerManager {
|
|
|
300
301
|
*/
|
|
301
302
|
displayLayer<Ctr extends FW.LayerController = FW.LayerController>(ctr: Ctr): Ctr {
|
|
302
303
|
const layerData = ctr.layerData;
|
|
303
|
-
|
|
304
|
+
|
|
305
|
+
FWLog.debug('关闭Layer -> ', layerData?.controllerName);
|
|
306
|
+
|
|
307
|
+
if (!this.layerMap.has(ctr.layerData.controllerConstructor)) {
|
|
304
308
|
FWLog.warn(`display layer failed,layer name : ${layerData.layerName}`);
|
|
305
309
|
return;
|
|
306
310
|
}
|
|
@@ -322,7 +326,7 @@ export class FWLayerManager extends FWManager implements FW.LayerManager {
|
|
|
322
326
|
*/
|
|
323
327
|
hideLayer<Ctr extends FW.LayerController = FW.LayerController>(ctr: Ctr): Ctr {
|
|
324
328
|
const layerData = ctr.layerData;
|
|
325
|
-
if (!this.layerMap.has(layerData.
|
|
329
|
+
if (!this.layerMap.has(ctr.layerData.controllerConstructor)) {
|
|
326
330
|
FWLog.warn(`hide layer failed,layer name : ${layerData.layerName}`);
|
|
327
331
|
return;
|
|
328
332
|
}
|
|
@@ -364,7 +368,7 @@ export class FWLayerManager extends FWManager implements FW.LayerManager {
|
|
|
364
368
|
for (let i = 0; i < count; i++) {
|
|
365
369
|
let layerData = this.layerStack.pop();
|
|
366
370
|
let ctr = layerData.controller;
|
|
367
|
-
if (!this.layerMap.has(layerData.
|
|
371
|
+
if (!this.layerMap.has(layerData.controllerConstructor)) {
|
|
368
372
|
return;
|
|
369
373
|
}
|
|
370
374
|
if (cc.isValid(ctr.layer?.node)) {
|
|
@@ -374,7 +378,7 @@ export class FWLayerManager extends FWManager implements FW.LayerManager {
|
|
|
374
378
|
}
|
|
375
379
|
this.notifyExternalRefUpdates(ctr.layerData);
|
|
376
380
|
}
|
|
377
|
-
this.layerMap.delete(layerData.
|
|
381
|
+
this.layerMap.delete(layerData.controllerConstructor);
|
|
378
382
|
}
|
|
379
383
|
}
|
|
380
384
|
|
|
@@ -399,7 +403,9 @@ export class FWLayerManager extends FWManager implements FW.LayerManager {
|
|
|
399
403
|
this.notifyExternalRefUpdates(ctr.layerData);
|
|
400
404
|
}
|
|
401
405
|
|
|
402
|
-
|
|
406
|
+
FWLog.debug('closeLayer', layerData.controllerConstructor);
|
|
407
|
+
|
|
408
|
+
this.layerMap.delete(layerData.controllerConstructor);
|
|
403
409
|
this.layerRegistry.delete(ctr.layerData.controllerConstructor);
|
|
404
410
|
|
|
405
411
|
const index = this.layerStack.findIndex((v) => {
|
|
@@ -512,11 +518,12 @@ export class FWLayerManager extends FWManager implements FW.LayerManager {
|
|
|
512
518
|
};
|
|
513
519
|
}
|
|
514
520
|
|
|
515
|
-
getLayerMap(): Map<
|
|
521
|
+
getLayerMap(): Map<new () => FW.LayerController, FW.LayerData> {
|
|
516
522
|
return this.layerMap;
|
|
517
523
|
}
|
|
518
524
|
|
|
519
525
|
public clear() {
|
|
526
|
+
FWLog.debug('调用clear');
|
|
520
527
|
this.layerQueue = new FWQueue();
|
|
521
528
|
this.layerStack = [];
|
|
522
529
|
this.layerRegistry = new Set<new () => FW.LayerController>();
|
|
@@ -525,6 +532,7 @@ export class FWLayerManager extends FWManager implements FW.LayerManager {
|
|
|
525
532
|
}
|
|
526
533
|
|
|
527
534
|
public onDestroy(): void {
|
|
535
|
+
FWLog.debug('调用onDestroy');
|
|
528
536
|
this.layerMap.clear();
|
|
529
537
|
this.layerMap = null;
|
|
530
538
|
this.layerQueue = null;
|