projects/wms-framework/src/lib/models/services/childwindow/childWindow.service.ts
Service to manage information about child windows.
Properties |
|
Methods |
|
Accessors |
Private Static _endOpeningCallbacks |
Type : (function)[]
|
Default value : []
|
Stores callback functions to call when child window has finished opening. |
Private Static _isOpeningChildWindow |
Default value : false
|
Stores the opening child window status. |
Static BeginOpening |
BeginOpening()
|
Signal
Returns :
void
|
Static EndOpening |
EndOpening()
|
Signal
Returns :
void
|
Static RegisterEndOpeningCallback | ||||||
RegisterEndOpeningCallback(func: () => void)
|
||||||
Register a callback function which will be called when the child window has finish opening (i.e. after opening animation has ended).
Parameters :
Returns :
void
|
IsOpening |
getIsOpening()
|
Indicates if a child window is opening, i.e., it has started to open, but has not finish opening yet.
Returns :
boolean
|
export class ChildWindowService {
/**
* Stores the opening child window status.
*
* @private
* @static
* @memberof ChildWindowService
*/
// eslint-disable-next-line @typescript-eslint/naming-convention
private static _isOpeningChildWindow = false;
/**
* Stores callback functions to call when child window has finished opening.
*
* @private
* @static
* @memberof ChildWindowService
*/
// eslint-disable-next-line @typescript-eslint/naming-convention
private static _endOpeningCallbacks: (() => void)[] = [];
/**
* Indicates if a child window is opening, i.e., it has
* started to open, but has not finish opening yet.
*
* @readonly
* @static
* @type {boolean}
* @memberof ChildWindowService
*/
public static get IsOpening(): boolean {
return ChildWindowService._isOpeningChildWindow;
}
/**
* Signal `ChildWindowService` that a child window is about to be opened.
*
* @static
* @memberof ChildWindowService
*/
public static BeginOpening(): void {
ChildWindowService._isOpeningChildWindow = true;
}
/**
* Signal `ChildWindowService` that a child window has finish opening.
*
* @static
* @memberof ChildWindowService
*/
public static EndOpening(): void {
ChildWindowService._isOpeningChildWindow = false;
ChildWindowService._endOpeningCallbacks.forEach((x) => x());
ChildWindowService._endOpeningCallbacks.length = 0;
}
/**
* Register a callback function which will be called when the child window
* has finish opening (i.e. after opening animation has ended).
*
* @static
* @param {() => void} func
* @memberof ChildWindowService
*/
public static RegisterEndOpeningCallback(func: () => void): void {
ChildWindowService._endOpeningCallbacks.push(func);
}
}