@wcardinal/wcardinal-ui 0.396.0 → 0.397.0

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.
Files changed (159) hide show
  1. package/dist/types/wcardinal/ui/d-base.d.ts +1 -3
  2. package/dist/types/wcardinal/ui/d-button-base.d.ts +8 -8
  3. package/dist/types/wcardinal/ui/d-button-color-gradient.d.ts +2 -2
  4. package/dist/types/wcardinal/ui/d-button-color.d.ts +2 -2
  5. package/dist/types/wcardinal/ui/d-button-date.d.ts +2 -2
  6. package/dist/types/wcardinal/ui/d-button-datetime.d.ts +2 -2
  7. package/dist/types/wcardinal/ui/d-button-file.d.ts +2 -2
  8. package/dist/types/wcardinal/ui/d-button-link.d.ts +3 -3
  9. package/dist/types/wcardinal/ui/d-button-redo.d.ts +2 -2
  10. package/dist/types/wcardinal/ui/d-button-select.d.ts +2 -2
  11. package/dist/types/wcardinal/ui/d-button-time.d.ts +2 -2
  12. package/dist/types/wcardinal/ui/d-button-undo.d.ts +2 -2
  13. package/dist/types/wcardinal/ui/d-canvas-container.d.ts +3 -3
  14. package/dist/types/wcardinal/ui/d-chart-plot-area-impl.d.ts +3 -3
  15. package/dist/types/wcardinal/ui/d-chart-selection-simple.d.ts +5 -5
  16. package/dist/types/wcardinal/ui/d-diagram-canvas-base.d.ts +0 -1
  17. package/dist/types/wcardinal/ui/d-diagram-canvas.d.ts +13 -13
  18. package/dist/types/wcardinal/ui/d-diagram.d.ts +1 -3
  19. package/dist/types/wcardinal/ui/d-dropdown-base.d.ts +2 -2
  20. package/dist/types/wcardinal/ui/d-expandable-header.d.ts +2 -2
  21. package/dist/types/wcardinal/ui/d-html-element.d.ts +3 -3
  22. package/dist/types/wcardinal/ui/d-link.d.ts +1 -2
  23. package/dist/types/wcardinal/ui/d-list-item.d.ts +4 -4
  24. package/dist/types/wcardinal/ui/d-menu-bar-item.d.ts +2 -2
  25. package/dist/types/wcardinal/ui/d-menu-item-base.d.ts +4 -4
  26. package/dist/types/wcardinal/ui/d-menu-item-check.d.ts +2 -2
  27. package/dist/types/wcardinal/ui/d-menu-item-link.d.ts +3 -3
  28. package/dist/types/wcardinal/ui/d-menu-item-menu.d.ts +2 -2
  29. package/dist/types/wcardinal/ui/d-menu-item-text.d.ts +2 -2
  30. package/dist/types/wcardinal/ui/d-pane.d.ts +2 -2
  31. package/dist/types/wcardinal/ui/d-picker-color-gradient-view.d.ts +2 -2
  32. package/dist/types/wcardinal/ui/d-picker-color-gradient.d.ts +1 -2
  33. package/dist/types/wcardinal/ui/d-picker-color.d.ts +1 -2
  34. package/dist/types/wcardinal/ui/d-scroll-bar-horizontal.d.ts +1 -2
  35. package/dist/types/wcardinal/ui/d-scroll-bar-vertical.d.ts +1 -2
  36. package/dist/types/wcardinal/ui/d-shadow.d.ts +2 -1
  37. package/dist/types/wcardinal/ui/d-slider.d.ts +1 -3
  38. package/dist/types/wcardinal/ui/d-table-body-cell-button.d.ts +5 -5
  39. package/dist/types/wcardinal/ui/d-table-body-cell-check.d.ts +3 -3
  40. package/dist/types/wcardinal/ui/d-table-body-cell-input-tree.d.ts +2 -2
  41. package/dist/types/wcardinal/ui/d-table-body-cell-link.d.ts +3 -3
  42. package/dist/types/wcardinal/ui/d-table-body-cell-select-dialog.d.ts +2 -2
  43. package/dist/types/wcardinal/ui/d-table-body-cell-select-promise.d.ts +2 -2
  44. package/dist/types/wcardinal/ui/d-table-body-cell-tree.d.ts +4 -4
  45. package/dist/types/wcardinal/ui/d-table-body-cell.d.ts +2 -2
  46. package/dist/types/wcardinal/ui/d-table-body.d.ts +2 -3
  47. package/dist/types/wcardinal/ui/d-table-header-cell.d.ts +1 -2
  48. package/dist/types/wcardinal/ui/d-table.d.ts +1 -2
  49. package/dist/types/wcardinal/ui/d-tree-item-button.d.ts +5 -5
  50. package/dist/types/wcardinal/ui/d-tree-item-non-editable.d.ts +2 -2
  51. package/dist/types/wcardinal/ui/d-tree-item-text.d.ts +2 -2
  52. package/dist/types/wcardinal/ui/d-view-gesture-impl.d.ts +2 -2
  53. package/dist/types/wcardinal/ui/d-view-impl.d.ts +5 -5
  54. package/dist/types/wcardinal/ui/shape/action/e-shape-action-runtime-base.d.ts +1 -3
  55. package/dist/types/wcardinal/ui/shape/action/e-shape-action-runtime-gesture-layer.d.ts +1 -2
  56. package/dist/types/wcardinal/ui/shape/action/e-shape-action-runtime-gesture-shape.d.ts +1 -2
  57. package/dist/types/wcardinal/ui/shape/action/e-shape-action-runtime-misc-html-element-base.d.ts +1 -3
  58. package/dist/types/wcardinal/ui/shape/action/e-shape-action-runtime.d.ts +1 -3
  59. package/dist/types/wcardinal/ui/shape/e-shape-runtime-impl.d.ts +1 -3
  60. package/dist/types/wcardinal/ui/shape/e-shape-runtime.d.ts +1 -3
  61. package/dist/types/wcardinal/ui/shape/variant/e-shape-button-runtime.d.ts +2 -2
  62. package/dist/types/wcardinal/ui/util/util-click-outside.d.ts +1 -2
  63. package/dist/types/wcardinal/ui/util/util-gesture-data.d.ts +1 -3
  64. package/dist/types/wcardinal/ui/util/util-gesture-modifiers.d.ts +2 -2
  65. package/dist/types/wcardinal/ui/util/util-gesture.d.ts +1 -2
  66. package/dist/types/wcardinal/ui/util/util-html-element.d.ts +4 -4
  67. package/dist/types/wcardinal/ui/util/util-pointer-event.d.ts +2 -3
  68. package/dist/wcardinal/ui/d-application-layer.js.map +1 -1
  69. package/dist/wcardinal/ui/d-base.js.map +1 -1
  70. package/dist/wcardinal/ui/d-button-base.js +5 -3
  71. package/dist/wcardinal/ui/d-button-base.js.map +1 -1
  72. package/dist/wcardinal/ui/d-button-color-gradient.js.map +1 -1
  73. package/dist/wcardinal/ui/d-button-color.js.map +1 -1
  74. package/dist/wcardinal/ui/d-button-date.js.map +1 -1
  75. package/dist/wcardinal/ui/d-button-datetime.js.map +1 -1
  76. package/dist/wcardinal/ui/d-button-file.js.map +1 -1
  77. package/dist/wcardinal/ui/d-button-link.js.map +1 -1
  78. package/dist/wcardinal/ui/d-button-redo.js.map +1 -1
  79. package/dist/wcardinal/ui/d-button-select.js.map +1 -1
  80. package/dist/wcardinal/ui/d-button-time.js.map +1 -1
  81. package/dist/wcardinal/ui/d-button-undo.js.map +1 -1
  82. package/dist/wcardinal/ui/d-canvas-container.js.map +1 -1
  83. package/dist/wcardinal/ui/d-chart-plot-area-impl.js.map +1 -1
  84. package/dist/wcardinal/ui/d-chart-selection-simple.js.map +1 -1
  85. package/dist/wcardinal/ui/d-diagram-canvas-base.js +2 -1
  86. package/dist/wcardinal/ui/d-diagram-canvas-base.js.map +1 -1
  87. package/dist/wcardinal/ui/d-diagram-canvas.js.map +1 -1
  88. package/dist/wcardinal/ui/d-diagram.js.map +1 -1
  89. package/dist/wcardinal/ui/d-dropdown-base.js.map +1 -1
  90. package/dist/wcardinal/ui/d-expandable-header.js.map +1 -1
  91. package/dist/wcardinal/ui/d-html-element.js.map +1 -1
  92. package/dist/wcardinal/ui/d-link.js +1 -2
  93. package/dist/wcardinal/ui/d-link.js.map +1 -1
  94. package/dist/wcardinal/ui/d-list-item.js.map +1 -1
  95. package/dist/wcardinal/ui/d-menu-bar-item.js.map +1 -1
  96. package/dist/wcardinal/ui/d-menu-item-base.js.map +1 -1
  97. package/dist/wcardinal/ui/d-menu-item-check.js.map +1 -1
  98. package/dist/wcardinal/ui/d-menu-item-link.js.map +1 -1
  99. package/dist/wcardinal/ui/d-menu-item-menu.js.map +1 -1
  100. package/dist/wcardinal/ui/d-menu-item-text.js.map +1 -1
  101. package/dist/wcardinal/ui/d-pane.js.map +1 -1
  102. package/dist/wcardinal/ui/d-picker-color-gradient-view.js +7 -4
  103. package/dist/wcardinal/ui/d-picker-color-gradient-view.js.map +1 -1
  104. package/dist/wcardinal/ui/d-picker-color-gradient.js.map +1 -1
  105. package/dist/wcardinal/ui/d-picker-color.js.map +1 -1
  106. package/dist/wcardinal/ui/d-scroll-bar-horizontal.js.map +1 -1
  107. package/dist/wcardinal/ui/d-scroll-bar-vertical.js.map +1 -1
  108. package/dist/wcardinal/ui/d-shadow.js.map +1 -1
  109. package/dist/wcardinal/ui/d-slider.js.map +1 -1
  110. package/dist/wcardinal/ui/d-table-body-cell-button.js.map +1 -1
  111. package/dist/wcardinal/ui/d-table-body-cell-check.js.map +1 -1
  112. package/dist/wcardinal/ui/d-table-body-cell-input-tree.js.map +1 -1
  113. package/dist/wcardinal/ui/d-table-body-cell-link.js.map +1 -1
  114. package/dist/wcardinal/ui/d-table-body-cell-select-dialog.js.map +1 -1
  115. package/dist/wcardinal/ui/d-table-body-cell-select-promise.js.map +1 -1
  116. package/dist/wcardinal/ui/d-table-body-cell-tree.js.map +1 -1
  117. package/dist/wcardinal/ui/d-table-body-cell.js.map +1 -1
  118. package/dist/wcardinal/ui/d-table-body.js.map +1 -1
  119. package/dist/wcardinal/ui/d-table-header-cell.js +1 -2
  120. package/dist/wcardinal/ui/d-table-header-cell.js.map +1 -1
  121. package/dist/wcardinal/ui/d-table.js.map +1 -1
  122. package/dist/wcardinal/ui/d-tree-item-button.js.map +1 -1
  123. package/dist/wcardinal/ui/d-tree-item-non-editable.js.map +1 -1
  124. package/dist/wcardinal/ui/d-tree-item-text.js.map +1 -1
  125. package/dist/wcardinal/ui/d-view-gesture-impl.js.map +1 -1
  126. package/dist/wcardinal/ui/d-view-impl.js.map +1 -1
  127. package/dist/wcardinal/ui/shape/action/e-shape-action-runtime-base.js.map +1 -1
  128. package/dist/wcardinal/ui/shape/action/e-shape-action-runtime-gesture-layer.js +1 -2
  129. package/dist/wcardinal/ui/shape/action/e-shape-action-runtime-gesture-layer.js.map +1 -1
  130. package/dist/wcardinal/ui/shape/action/e-shape-action-runtime-gesture-shape.js +1 -2
  131. package/dist/wcardinal/ui/shape/action/e-shape-action-runtime-gesture-shape.js.map +1 -1
  132. package/dist/wcardinal/ui/shape/action/e-shape-action-runtime-misc-html-element-base.js.map +1 -1
  133. package/dist/wcardinal/ui/shape/action/e-shape-action-runtime.js.map +1 -1
  134. package/dist/wcardinal/ui/shape/e-shape-runtime-impl.js.map +1 -1
  135. package/dist/wcardinal/ui/shape/e-shape-runtime.js.map +1 -1
  136. package/dist/wcardinal/ui/shape/variant/e-shape-button-runtime.js.map +1 -1
  137. package/dist/wcardinal/ui/util/util-click-outside.js.map +1 -1
  138. package/dist/wcardinal/ui/util/util-gesture-data.js.map +1 -1
  139. package/dist/wcardinal/ui/util/util-gesture-modifiers.js.map +1 -1
  140. package/dist/wcardinal/ui/util/util-gesture.js.map +1 -1
  141. package/dist/wcardinal/ui/util/util-html-element.js.map +1 -1
  142. package/dist/wcardinal/ui/util/util-pointer-event.js.map +1 -1
  143. package/dist/wcardinal-ui-theme-dark-en-us.js +1 -1
  144. package/dist/wcardinal-ui-theme-dark-en-us.min.js +1 -1
  145. package/dist/wcardinal-ui-theme-dark-ja-jp.js +1 -1
  146. package/dist/wcardinal-ui-theme-dark-ja-jp.min.js +1 -1
  147. package/dist/wcardinal-ui-theme-dark.js +1 -1
  148. package/dist/wcardinal-ui-theme-dark.min.js +1 -1
  149. package/dist/wcardinal-ui-theme-white-en-us.js +1 -1
  150. package/dist/wcardinal-ui-theme-white-en-us.min.js +1 -1
  151. package/dist/wcardinal-ui-theme-white-ja-jp.js +1 -1
  152. package/dist/wcardinal-ui-theme-white-ja-jp.min.js +1 -1
  153. package/dist/wcardinal-ui-theme-white.js +1 -1
  154. package/dist/wcardinal-ui-theme-white.min.js +1 -1
  155. package/dist/wcardinal-ui.cjs.js +18 -16
  156. package/dist/wcardinal-ui.js +18 -16
  157. package/dist/wcardinal-ui.min.js +2 -2
  158. package/dist/wcardinal-ui.min.js.map +1 -1
  159. package/package.json +3 -3
@@ -1,4 +1,4 @@
1
- import { interaction } from "pixi.js";
1
+ import { InteractionEvent } from "pixi.js";
2
2
  import { DButtonCheck, DButtonCheckOptions, DThemeButtonCheck } from "./d-button-check";
3
3
  import { DTableBodyCell, DTableBodyCellOnChange } from "./d-table-body-cell";
4
4
  import { DTableColumn } from "./d-table-column";
@@ -14,8 +14,8 @@ export declare class DTableBodyCellCheck<ROW = unknown, THEME extends DThemeTabl
14
14
  protected _column: DTableColumn<ROW, boolean>;
15
15
  protected _onChange: DTableBodyCellOnChange<ROW, boolean>;
16
16
  constructor(columnIndex: number, column: DTableColumn<ROW, boolean>, onChange: DTableBodyCellOnChange<ROW, boolean>, options?: OPTIONS);
17
- protected onActivate(e?: interaction.InteractionEvent | KeyboardEvent | MouseEvent | TouchEvent): void;
18
- protected onInactivate(e?: interaction.InteractionEvent | KeyboardEvent | MouseEvent | TouchEvent): void;
17
+ protected onActivate(e?: InteractionEvent | KeyboardEvent | MouseEvent | TouchEvent): void;
18
+ protected onInactivate(e?: InteractionEvent | KeyboardEvent | MouseEvent | TouchEvent): void;
19
19
  protected onValueChange(newValue: boolean, oldValue: boolean): void;
20
20
  protected onChangeSingle(rowIndex: number, columnIndex: number, column: DTableColumn<ROW, boolean>, onChange: DTableBodyCellOnChange<ROW, boolean>): void;
21
21
  get row(): ROW | undefined;
@@ -1,4 +1,4 @@
1
- import { interaction, Point } from "pixi.js";
1
+ import { InteractionEvent, Point } from "pixi.js";
2
2
  import { DBase, DThemeBase } from "./d-base";
3
3
  import { DTableBodyCellInputTreeInput, DTableBodyCellInputTreeInputOptions } from "./d-table-body-cell-input-tree-input";
4
4
  import { DTableBodyCellInputTreeMarker } from "./d-table-body-cell-input-tree-marker";
@@ -27,7 +27,7 @@ export declare class DTableBodyCellInputTree<ROW = unknown, THEME extends DTheme
27
27
  get columnIndex(): number;
28
28
  get column(): DTableColumn<ROW, string>;
29
29
  protected toggle(): void;
30
- onRowSelect(e: interaction.InteractionEvent, local: Point): boolean;
30
+ onRowSelect(e: InteractionEvent, local: Point): boolean;
31
31
  set(value: unknown, row: ROW, supplimental: DTableDataSupplimental | null, rowIndex: number, columnIndex: number, forcibly?: boolean): void;
32
32
  unset(): void;
33
33
  protected getType(): string;
@@ -1,4 +1,4 @@
1
- import { interaction } from "pixi.js";
1
+ import { InteractionEvent } from "pixi.js";
2
2
  import { DLink, DLinkChecker, DLinkOptions, DLinkUrlMaker } from "./d-link";
3
3
  import { DLinkMenuItemId } from "./d-link-menu-item-id";
4
4
  import { DLinkTarget } from "./d-link-target";
@@ -25,9 +25,9 @@ export declare const toChecker: <ROW, VALUE>(cell: DTableBodyCell<ROW, VALUE | n
25
25
  export declare class DTableBodyCellLink<ROW, VALUE = unknown, THEME extends DThemeTableBodyCellLink<VALUE> = DThemeTableBodyCellLink<VALUE>, OPTIONS extends DTableBodyCellLinkOptions<ROW, VALUE, THEME> = DTableBodyCellLinkOptions<ROW, VALUE, THEME>> extends DTableBodyCellButton<ROW, VALUE, THEME, OPTIONS> {
26
26
  protected _link?: DLink;
27
27
  constructor(columnIndex: number, column: DTableColumn<ROW, VALUE | null>, onChange: DTableBodyCellOnChange<ROW, VALUE | null>, options: OPTIONS);
28
- protected onClick(e: interaction.InteractionEvent): void;
28
+ protected onClick(e: InteractionEvent): void;
29
29
  get link(): DLink;
30
30
  protected getType(): string;
31
- protected onActivate(e?: interaction.InteractionEvent | KeyboardEvent | MouseEvent | TouchEvent): void;
31
+ protected onActivate(e?: InteractionEvent | KeyboardEvent | MouseEvent | TouchEvent): void;
32
32
  open(inNewWindow: boolean): void;
33
33
  }
@@ -1,4 +1,4 @@
1
- import { interaction } from "pixi.js";
1
+ import { InteractionEvent } from "pixi.js";
2
2
  import { DButton, DButtonOptions, DThemeButton } from "./d-button";
3
3
  import { DTableBodyCell, DTableBodyCellOnChange } from "./d-table-body-cell";
4
4
  import { DTableColumn } from "./d-table-column";
@@ -20,7 +20,7 @@ export declare class DTableBodyCellSelectDialog<ROW = unknown, VALUE = unknown,
20
20
  protected _onChange: DTableBodyCellOnChange<ROW, VALUE | null>;
21
21
  protected _isSyncEnabled: boolean;
22
22
  constructor(columnIndex: number, column: DTableColumn<ROW, VALUE | null>, onChange: DTableBodyCellOnChange<ROW, VALUE | null>, options?: OPTIONS);
23
- protected onActivate(e?: interaction.InteractionEvent | KeyboardEvent | MouseEvent | TouchEvent): void;
23
+ protected onActivate(e?: InteractionEvent | KeyboardEvent | MouseEvent | TouchEvent): void;
24
24
  protected onValueChange(newValue: VALUE | null, oldValue: VALUE | null): void;
25
25
  get row(): ROW | undefined;
26
26
  get rowIndex(): number;
@@ -1,4 +1,4 @@
1
- import { interaction } from "pixi.js";
1
+ import { InteractionEvent } from "pixi.js";
2
2
  import { DButton, DButtonOptions, DThemeButton } from "./d-button";
3
3
  import { DTableBodyCell, DTableBodyCellOnChange } from "./d-table-body-cell";
4
4
  import { DTableColumn } from "./d-table-column";
@@ -20,7 +20,7 @@ export declare class DTableBodyCellSelectPromise<ROW = unknown, VALUE = unknown,
20
20
  protected _onChange: DTableBodyCellOnChange<ROW, VALUE | null>;
21
21
  protected _isSyncEnabled: boolean;
22
22
  constructor(columnIndex: number, column: DTableColumn<ROW, VALUE | null>, onChange: DTableBodyCellOnChange<ROW, VALUE | null>, options?: OPTIONS);
23
- protected onActivate(e?: interaction.InteractionEvent | KeyboardEvent | MouseEvent | TouchEvent): void;
23
+ protected onActivate(e?: InteractionEvent | KeyboardEvent | MouseEvent | TouchEvent): void;
24
24
  protected onValueChange(newValue: VALUE | null, oldValue: VALUE | null): void;
25
25
  get row(): ROW | undefined;
26
26
  get rowIndex(): number;
@@ -1,4 +1,4 @@
1
- import { interaction, Point } from "pixi.js";
1
+ import { InteractionEvent, Point } from "pixi.js";
2
2
  import { DBasePaddingAdjustable } from "./d-base-padding-adjustable";
3
3
  import { DLink } from "./d-link";
4
4
  import { DTableBodyCellButton, DTableBodyCellButtonOptions, DThemeTableBodyCellButton } from "./d-table-body-cell-button";
@@ -17,12 +17,12 @@ export declare class DTableBodyCellTree<ROW, VALUE = unknown, THEME extends DThe
17
17
  protected _link?: DLink | null;
18
18
  constructor(columnIndex: number, column: DTableColumn<ROW, VALUE | null>, onChange: DTableBodyCellOnChange<ROW, VALUE | null>, options?: OPTIONS);
19
19
  protected newPadding(theme: THEME, options?: OPTIONS, callback?: () => void): DBasePaddingAdjustable;
20
- protected onClick(e: interaction.InteractionEvent): void;
20
+ protected onClick(e: InteractionEvent): void;
21
21
  get link(): DLink | null;
22
22
  protected newLink(): DLink | null;
23
- protected onActivate(e?: interaction.InteractionEvent | KeyboardEvent | MouseEvent | TouchEvent): void;
23
+ protected onActivate(e?: InteractionEvent | KeyboardEvent | MouseEvent | TouchEvent): void;
24
24
  protected toggle(): void;
25
- onRowSelect(e: interaction.InteractionEvent, local: Point): boolean;
25
+ onRowSelect(e: InteractionEvent, local: Point): boolean;
26
26
  set(value: unknown, row: ROW, supplimental: DTableDataSupplimental | null, rowIndex: number, columnIndex: number, forcibly?: boolean): void;
27
27
  protected getType(): string;
28
28
  }
@@ -1,4 +1,4 @@
1
- import { interaction, Point } from "pixi.js";
1
+ import { InteractionEvent, Point } from "pixi.js";
2
2
  import { DBase } from "./d-base";
3
3
  import { DTableColumn } from "./d-table-column";
4
4
  import { DTableDataSupplimental } from "./d-table-data";
@@ -37,5 +37,5 @@ export interface DTableBodyCell<ROW, VALUE> extends DBase {
37
37
  * @param local
38
38
  * @return true to prevent the row selection
39
39
  */
40
- onRowSelect?(e: interaction.InteractionEvent, local: Point): boolean;
40
+ onRowSelect?(e: InteractionEvent, local: Point): boolean;
41
41
  }
@@ -1,5 +1,4 @@
1
- import { interaction, Point, Rectangle } from "pixi.js";
2
- import InteractionEvent = interaction.InteractionEvent;
1
+ import { InteractionEvent, InteractionManager, Point, Rectangle } from "pixi.js";
3
2
  import { DBase, DBaseEvents, DBaseOptions, DThemeBase } from "./d-base";
4
3
  import { DTableBodyRow, DTableBodyRowOnChange, DTableBodyRowOptions } from "./d-table-body-row";
5
4
  import { DTableColumn } from "./d-table-column";
@@ -111,7 +110,7 @@ export declare class DTableBody<ROW, DATA extends DTableData<ROW> = DTableDataLi
111
110
  toCell(row: DTableBodyRow<ROW>, localX: number): DTableBodyCell<ROW, unknown> | null;
112
111
  onRowClick(e: InteractionEvent): void;
113
112
  protected onRowSelect(e: InteractionEvent, rowIndexMapped: number): void;
114
- onDblClick(e: MouseEvent | TouchEvent, interactionManager: interaction.InteractionManager): boolean;
113
+ onDblClick(e: MouseEvent | TouchEvent, interactionManager: InteractionManager): boolean;
115
114
  protected getType(): string;
116
115
  get data(): DATA;
117
116
  }
@@ -1,5 +1,4 @@
1
- import { interaction, Point } from "pixi.js";
2
- import InteractionEvent = interaction.InteractionEvent;
1
+ import { InteractionEvent, Point } from "pixi.js";
3
2
  import { DImage, DImageOptions, DThemeImage } from "./d-image";
4
3
  import { DTableColumn } from "./d-table-column";
5
4
  import { DTableDataComparator, DTableDataSorter } from "./d-table-data-sorter";
@@ -1,5 +1,4 @@
1
- import { interaction, Rectangle } from "pixi.js";
2
- import InteractionManager = interaction.InteractionManager;
1
+ import { InteractionManager, Rectangle } from "pixi.js";
3
2
  import { DBase, DBaseOptions } from "./d-base";
4
3
  import { DContentOptions } from "./d-content";
5
4
  import { DFocusable } from "./d-controller-focus";
@@ -1,4 +1,4 @@
1
- import { interaction } from "pixi.js";
1
+ import { InteractionEvent, InteractionManager } from "pixi.js";
2
2
  import { DButtonBaseWhen } from "./d-button-base-when";
3
3
  import { DTreeData } from "./d-tree-data";
4
4
  import { DThemeTreeItemText, DTreeItemText, DTreeItemTextOptions } from "./d-tree-item-text";
@@ -11,10 +11,10 @@ export interface DThemeTreeItemButton extends DThemeTreeItemText {
11
11
  export declare class DTreeItemButton<NODE extends DTreeNode = DTreeNode, THEME extends DThemeTreeItemButton = DThemeTreeItemButton, OPTIONS extends DTreeItemButtonOptions<NODE, THEME> = DTreeItemButtonOptions<NODE, THEME>> extends DTreeItemText<NODE, THEME, OPTIONS> {
12
12
  protected _when: DButtonBaseWhen;
13
13
  constructor(data: DTreeData<NODE>, options?: OPTIONS);
14
- protected onClick(e: interaction.InteractionEvent): void;
15
- protected onDblClick(e: MouseEvent | TouchEvent, interactionManager: interaction.InteractionManager): boolean;
16
- activate(e?: interaction.InteractionEvent | KeyboardEvent | MouseEvent | TouchEvent): void;
17
- protected onActivate(e?: interaction.InteractionEvent | KeyboardEvent | MouseEvent | TouchEvent): void;
14
+ protected onClick(e: InteractionEvent): void;
15
+ protected onDblClick(e: MouseEvent | TouchEvent, interactionManager: InteractionManager): boolean;
16
+ activate(e?: InteractionEvent | KeyboardEvent | MouseEvent | TouchEvent): void;
17
+ protected onActivate(e?: InteractionEvent | KeyboardEvent | MouseEvent | TouchEvent): void;
18
18
  protected onActivateKeyDown(e: KeyboardEvent): void;
19
19
  protected onActivateKeyUp(e: KeyboardEvent): void;
20
20
  protected onKeyDown(e: KeyboardEvent): boolean;
@@ -1,4 +1,4 @@
1
- import { interaction } from "pixi.js";
1
+ import { InteractionEvent } from "pixi.js";
2
2
  import { DTreeNode } from "./d-tree-node";
3
3
  import { DThemeTreeItemButton, DTreeItemButton, DTreeItemButtonOptions } from "./d-tree-item-button";
4
4
  export interface DTreeItemNonEditableOptions<NODE extends DTreeNode = DTreeNode, THEME extends DThemeTreeItemNonEditable = DThemeTreeItemNonEditable, EMITTER = any> extends DTreeItemButtonOptions<NODE, THEME, EMITTER> {
@@ -6,6 +6,6 @@ export interface DTreeItemNonEditableOptions<NODE extends DTreeNode = DTreeNode,
6
6
  export interface DThemeTreeItemNonEditable extends DThemeTreeItemButton {
7
7
  }
8
8
  export declare class DTreeItemNonEditable<NODE extends DTreeNode = DTreeNode, THEME extends DThemeTreeItemNonEditable = DThemeTreeItemNonEditable, OPTIONS extends DTreeItemNonEditableOptions<NODE, THEME> = DTreeItemNonEditableOptions<NODE, THEME>> extends DTreeItemButton<NODE, THEME, OPTIONS> {
9
- protected onActivate(e?: interaction.InteractionEvent | KeyboardEvent | MouseEvent | TouchEvent): void;
9
+ protected onActivate(e?: InteractionEvent | KeyboardEvent | MouseEvent | TouchEvent): void;
10
10
  protected getType(): string;
11
11
  }
@@ -1,4 +1,4 @@
1
- import { interaction } from "pixi.js";
1
+ import { InteractionEvent } from "pixi.js";
2
2
  import { DBasePaddingAdjustable } from "./d-base-padding-adjustable";
3
3
  import { DImageBase, DImageBaseEvents, DImageBaseOptions, DThemeImageBase } from "./d-image-base";
4
4
  import { DOnOptions } from "./d-on-options";
@@ -52,7 +52,7 @@ export declare class DTreeItemText<NODE extends DTreeNode = DTreeNode, THEME ext
52
52
  toggle(): void;
53
53
  set(node: NODE, index: number, forcibly?: boolean): void;
54
54
  unset(): void;
55
- protected onSelect(e: interaction.InteractionEvent | KeyboardEvent | MouseEvent | TouchEvent | undefined, value: NODE): void;
55
+ protected onSelect(e: InteractionEvent | KeyboardEvent | MouseEvent | TouchEvent | undefined, value: NODE): void;
56
56
  protected onKeyDown(e: KeyboardEvent): boolean;
57
57
  protected onKeyDownActivate(e: KeyboardEvent): boolean;
58
58
  protected getType(): string;
@@ -1,4 +1,4 @@
1
- import { interaction } from "pixi.js";
1
+ import { InteractionEvent } from "pixi.js";
2
2
  import { DBase } from "./d-base";
3
3
  import { DThemeViewGesture, DViewGesture, DViewGestureOptions } from "./d-view-gesture";
4
4
  import { DViewParent } from "./d-view-parent";
@@ -16,5 +16,5 @@ export declare class DViewGestureImpl implements DViewGesture {
16
16
  protected onStop(target: DBase): void;
17
17
  protected onGestureMove(target: DViewTarget | null, dx: number, dy: number, x: number, y: number, ds: number): void;
18
18
  stop(): void;
19
- onDown(e: interaction.InteractionEvent): void;
19
+ onDown(e: InteractionEvent): void;
20
20
  }
@@ -1,4 +1,4 @@
1
- import { interaction, IPoint, Point, Rectangle, utils } from "pixi.js";
1
+ import { IPoint, InteractionEvent, InteractionManager, Point, Rectangle, utils } from "pixi.js";
2
2
  import { DBase } from "./d-base";
3
3
  import { UtilGestureModifier } from "./util/util-gesture-modifier";
4
4
  import { DThemeView, DView, DViewChecker, DViewOptions } from "./d-view";
@@ -49,12 +49,12 @@ export declare class DViewImpl extends utils.EventEmitter implements DView {
49
49
  get position(): DViewTargetPoint;
50
50
  set position(position: DViewTargetPoint);
51
51
  transform(x: number, y: number, scaleX: number, scaleY: number, duration?: number, stop?: boolean): void;
52
- toLocal(global: IPoint, local: IPoint, skipUpdate?: boolean): IPoint;
53
- toGlobal(local: IPoint, global: IPoint, skipUpdate?: boolean): IPoint;
52
+ toLocal(global: IPoint, local: Point, skipUpdate?: boolean): IPoint;
53
+ toGlobal(local: IPoint, global: Point, skipUpdate?: boolean): IPoint;
54
54
  toNormalizedScale(scale: number): number;
55
55
  onWheel(e: WheelEvent, deltas: UtilWheelEventDeltas, global: Point): boolean;
56
- onDown(e: interaction.InteractionEvent): void;
57
- onDblClick(e: MouseEvent | TouchEvent, interactionManager: interaction.InteractionManager): boolean;
56
+ onDown(e: InteractionEvent): void;
57
+ onDblClick(e: MouseEvent | TouchEvent, interactionManager: InteractionManager): boolean;
58
58
  protected toTheme(options?: DViewOptions): DThemeView | null;
59
59
  protected getThemeDefault(): DThemeView;
60
60
  protected getType(): string;
@@ -1,6 +1,4 @@
1
- import { interaction, Renderer } from "pixi.js";
2
- import InteractionEvent = interaction.InteractionEvent;
3
- import InteractionManager = interaction.InteractionManager;
1
+ import { InteractionEvent, InteractionManager, Renderer } from "pixi.js";
4
2
  import { EShape } from "../e-shape";
5
3
  import { EShapeRuntime } from "../e-shape-runtime";
6
4
  import { EShapeRuntimeReset } from "../e-shape-runtime-reset";
@@ -1,5 +1,4 @@
1
- import { interaction, Point } from "pixi.js";
2
- import InteractionEvent = interaction.InteractionEvent;
1
+ import { InteractionEvent, Point } from "pixi.js";
3
2
  import { DDiagramLayersLayer } from "../../d-diagram-layers";
4
3
  import { EShape } from "../e-shape";
5
4
  import { EShapeRuntime } from "../e-shape-runtime";
@@ -1,5 +1,4 @@
1
- import { interaction, Point } from "pixi.js";
2
- import InteractionEvent = interaction.InteractionEvent;
1
+ import { InteractionEvent, Point } from "pixi.js";
3
2
  import { EShape } from "../e-shape";
4
3
  import { EShapeRuntime } from "../e-shape-runtime";
5
4
  import { EShapeActionRuntimeConditional } from "./e-shape-action-runtime-conditional";
@@ -1,6 +1,4 @@
1
- import { interaction, Matrix, Point, Rectangle, Renderer } from "pixi.js";
2
- import InteractionEvent = interaction.InteractionEvent;
3
- import InteractionManager = interaction.InteractionManager;
1
+ import { InteractionEvent, InteractionManager, Matrix, Point, Rectangle, Renderer } from "pixi.js";
4
2
  import { UtilHtmlElement, UtilHtmlElementCreator, UtilHtmlElementOperation, UtilHtmlElementOptions, UtilHtmlElementPadding } from "../../util/util-html-element";
5
3
  import { UtilHtmlElementWhen } from "../../util/util-html-element-when";
6
4
  import { EShape } from "../e-shape";
@@ -1,6 +1,4 @@
1
- import { interaction, Renderer } from "pixi.js";
2
- import InteractionEvent = interaction.InteractionEvent;
3
- import InteractionManager = interaction.InteractionManager;
1
+ import { InteractionEvent, InteractionManager, Renderer } from "pixi.js";
4
2
  import { EShape } from "../e-shape";
5
3
  import { EShapeRuntime } from "../e-shape-runtime";
6
4
  import { EShapeRuntimeReset } from "../e-shape-runtime-reset";
@@ -1,6 +1,4 @@
1
- import { interaction, Renderer } from "pixi.js";
2
- import InteractionEvent = interaction.InteractionEvent;
3
- import InteractionManager = interaction.InteractionManager;
1
+ import { InteractionEvent, InteractionManager, Renderer } from "pixi.js";
4
2
  import { EShapeActionRuntime } from "./action/e-shape-action-runtime";
5
3
  import { EShape } from "./e-shape";
6
4
  import { EShapeFillLike } from "./e-shape-fill";
@@ -1,6 +1,4 @@
1
- import { interaction, Renderer } from "pixi.js";
2
- import InteractionEvent = interaction.InteractionEvent;
3
- import InteractionManager = interaction.InteractionManager;
1
+ import { InteractionEvent, InteractionManager, Renderer } from "pixi.js";
4
2
  import { EShapeActionRuntime } from "./action/e-shape-action-runtime";
5
3
  import { EShape } from "./e-shape";
6
4
  import { EShapeFillLike } from "./e-shape-fill";
@@ -1,4 +1,4 @@
1
- import { interaction } from "pixi.js";
1
+ import { InteractionEvent } from "pixi.js";
2
2
  import { DBaseStateSet } from "../../d-base-state-set";
3
3
  import { EShape } from "../e-shape";
4
4
  import { EShapeRuntimeImpl } from "../e-shape-runtime-impl";
@@ -8,7 +8,7 @@ export declare class EShapeButtonRuntime extends EShapeRuntimeImpl {
8
8
  constructor(shape: EShape);
9
9
  isActionable(): boolean;
10
10
  initialize(shape: EShape): void;
11
- onClick(shape: EShape, e: interaction.InteractionEvent | KeyboardEvent): void;
11
+ onClick(shape: EShape, e: InteractionEvent | KeyboardEvent): void;
12
12
  onStateChange(shape: EShape, newState: DBaseStateSet, oldState: DBaseStateSet): void;
13
13
  protected onActivated(shape: EShape): void;
14
14
  }
@@ -1,5 +1,4 @@
1
- import { interaction, Point } from "pixi.js";
2
- import InteractionEvent = interaction.InteractionEvent;
1
+ import { InteractionEvent, Point } from "pixi.js";
3
2
  import { DBase } from "../d-base";
4
3
  export type UtilClickOutsideOnClick = (e: InteractionEvent) => void;
5
4
  export declare class UtilClickOutside {
@@ -1,7 +1,5 @@
1
- import { interaction, Point } from "pixi.js";
1
+ import { InteractionEvent, InteractionManager, Point } from "pixi.js";
2
2
  import { UtilGestureEasing } from "./util-gesture-easing";
3
- import InteractionEvent = interaction.InteractionEvent;
4
- import InteractionManager = interaction.InteractionManager;
5
3
  export declare class UtilGestureData<TARGET> {
6
4
  target?: TARGET;
7
5
  pointers: Map<number, PointerEvent>;
@@ -1,6 +1,6 @@
1
- import { interaction } from "pixi.js";
1
+ import { InteractionEvent } from "pixi.js";
2
2
  import { UtilGestureModifier } from "./util-gesture-modifier";
3
- export type UtilGestureModifierEvent = WheelEvent | MouseEvent | TouchEvent | interaction.InteractionEvent;
3
+ export type UtilGestureModifierEvent = WheelEvent | MouseEvent | TouchEvent | InteractionEvent;
4
4
  export declare class UtilGestureModifiers {
5
5
  static from(e: UtilGestureModifierEvent): UtilGestureModifier;
6
6
  static match(e: UtilGestureModifierEvent, modifier: UtilGestureModifier): boolean;
@@ -1,10 +1,9 @@
1
- import { interaction, utils } from "pixi.js";
1
+ import { InteractionEvent, utils } from "pixi.js";
2
2
  import { DApplicationTarget } from "../d-application-like";
3
3
  import { DBaseStateSet } from "../d-base-state-set";
4
4
  import { UtilGestureModifier } from "./util-gesture-modifier";
5
5
  import { UtilGestureData } from "./util-gesture-data";
6
6
  import { UtilGestureEasing, UtilGestureEasingOptions } from "./util-gesture-easing";
7
- import InteractionEvent = interaction.InteractionEvent;
8
7
  export interface UtilGestureTarget extends DApplicationTarget {
9
8
  state: DBaseStateSet;
10
9
  }
@@ -1,4 +1,4 @@
1
- import { interaction, Matrix, Point, Rectangle, Renderer } from "pixi.js";
1
+ import { InteractionEvent, InteractionManager, Matrix, Point, Rectangle, Renderer } from "pixi.js";
2
2
  import { DBaseStateSet } from "../d-base-state-set";
3
3
  import { DFocusableMightBe } from "../d-controller-focus";
4
4
  import { UtilHtmlElementClipperEx } from "./util-html-element-clipper-ex";
@@ -136,9 +136,9 @@ export declare class UtilHtmlElement<ELEMENT extends HTMLElement = HTMLElement,
136
136
  protected newAfterStyler(theme: THEME): (target: HTMLDivElement) => void;
137
137
  get element(): ELEMENT | null;
138
138
  get when(): UtilHtmlElementWhen;
139
- onDowning(e: interaction.InteractionEvent | KeyboardEvent): void;
140
- onDown(e: interaction.InteractionEvent | KeyboardEvent): void;
141
- onDblClick(e: MouseEvent | TouchEvent | KeyboardEvent, interactionManager: interaction.InteractionManager): void;
139
+ onDowning(e: InteractionEvent | KeyboardEvent): void;
140
+ onDown(e: InteractionEvent | KeyboardEvent): void;
141
+ onDblClick(e: MouseEvent | TouchEvent | KeyboardEvent, interactionManager: InteractionManager): void;
142
142
  onFocus(): void;
143
143
  onBlur(): void;
144
144
  isStartable(): boolean;
@@ -1,5 +1,4 @@
1
- import { DisplayObject, interaction, Point } from "pixi.js";
2
- import InteractionEvent = interaction.InteractionEvent;
1
+ import { DisplayObject, InteractionEvent, InteractionManager, Point } from "pixi.js";
3
2
  import { DApplicationTarget } from "../d-application-like";
4
3
  export type UtilPointerEventOnClick = (e: InteractionEvent, isSimulated: boolean) => void;
5
4
  export type UtilPointerEventOnDblClick = (e: MouseEvent | TouchEvent, isSimulated: boolean) => void;
@@ -25,7 +24,7 @@ export declare class UtilPointerEvent {
25
24
  static get rightdown(): string;
26
25
  static get rightup(): string;
27
26
  static get rightupoutside(): string;
28
- static toGlobal(e: MouseEvent | TouchEvent, interactionManager: interaction.InteractionManager, result: Point): Point;
27
+ static toGlobal(e: MouseEvent | TouchEvent, interactionManager: InteractionManager, result: Point): Point;
29
28
  static onDblClick(target: HTMLElement, onDblClick: UtilPointerEventOnDblClick): void;
30
29
  static contains(target: unknown, targetOrChild: DisplayObject | null): boolean;
31
30
  }
@@ -1 +1 @@
1
- {"version":3,"file":"d-application-layer.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-application-layer.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { Application, interaction, Point } from \"pixi.js\";\nimport { DApplicationLayerLike } from \"./d-application-layer-like\";\nimport { DApplicationLayerOptions } from \"./d-application-layer-options\";\nimport { DApplicationLike } from \"./d-application-like\";\nimport { DBase } from \"./d-base\";\nimport { DControllerFocus, DFocusable, DFocusableContainer } from \"./d-controller-focus\";\nimport { DControllers } from \"./d-controllers\";\nimport { DPadding } from \"./d-padding\";\nimport { DynamicFontAtlases } from \"./util/dynamic-font-atlases\";\nimport { UtilPointerEvent } from \"./util/util-pointer-event\";\nimport { UtilWheelEvent, UtilWheelEventDeltas } from \"./util/util-wheel-event\";\n\ninterface DblClickable {\n\tonDblClick(\n\t\te: MouseEvent | TouchEvent,\n\t\tinteractionManager: interaction.InteractionManager\n\t): boolean;\n}\n\nconst isDblClickable = (target: any): target is DblClickable => {\n\treturn target != null && target.onDblClick != null;\n};\n\ninterface Wheelable {\n\tonWheel(e: WheelEvent, deltas: UtilWheelEventDeltas, global: Point): boolean;\n}\n\nconst isWheelable = (target: any): target is Wheelable => {\n\treturn target != null && target.onWheel != null;\n};\n\nexport class DApplicationLayer extends Application implements DApplicationLayerLike {\n\tprotected _options: DApplicationLayerOptions;\n\tprotected _renderId: number | null = null;\n\tprotected _renderBound: () => void;\n\tprotected _isLocked: boolean;\n\tprotected _isOverlay: boolean;\n\tprotected _reflowLimit: number;\n\tprotected _rootElement: HTMLElement;\n\tprotected _elementContainer: HTMLElement;\n\tprotected _padding: DPadding;\n\tprotected _dynamicFontAtlases: DynamicFontAtlases | null = null;\n\tprotected _isVisible: boolean;\n\n\treadonly application: DApplicationLike;\n\n\tconstructor(application: DApplicationLike, options: DApplicationLayerOptions) {\n\t\tsuper(options.getPixiApplicationOptions());\n\n\t\tthis._options = options;\n\t\tthis._isLocked = false;\n\t\tthis._isVisible = true;\n\t\tthis._isOverlay = options.isOverlay();\n\t\tthis._padding = options.getPadding();\n\t\tthis._rootElement = options.getRootElement();\n\t\tthis._reflowLimit = 5;\n\t\tthis._elementContainer = this.newElementContainer();\n\n\t\tthis.application = application;\n\n\t\tthis._renderBound = (): void => {\n\t\t\tif (this._renderId != null) {\n\t\t\t\tthis.render();\n\t\t\t}\n\t\t};\n\n\t\tthis.initStage();\n\t\tthis.initView();\n\t\tthis.initRootElement();\n\t\tthis.initFocusHandling();\n\t\tthis.initResizeHandling();\n\t\tthis.initWheelHandling();\n\t\tthis.initDoubleClickHandling();\n\t}\n\n\tprotected newElementContainer(): HTMLElement {\n\t\tconst result = document.createElement(\"div\");\n\t\tresult.setAttribute(\n\t\t\t\"style\",\n\t\t\t\"position: absolute; top: 0; left: 0; width: 0; height: 0;\" +\n\t\t\t\t\"margin: 0; padding: 0; outline: none;\"\n\t\t);\n\t\treturn result;\n\t}\n\n\tprotected initStage(): void {\n\t\tconst stage = this.stage;\n\t\t(stage as any).layer = this;\n\t\t(stage as any).application = this.application;\n\t\tstage.interactive = true;\n\t}\n\n\tprotected initView(): void {\n\t\tconst view = this.view;\n\t\tconst style = view.style;\n\t\tstyle.position = \"absolute\";\n\t\tstyle.top = \"0\";\n\t\tstyle.left = \"0\";\n\t\tstyle.width = \"100%\";\n\t\tstyle.height = \"100%\";\n\t\tstyle.display = \"block\";\n\t\tstyle.outline = \"none\";\n\t\t(style as any).webkitTapHighlightColor = \"rgba(255,255,255,0)\";\n\t\tstyle.webkitUserSelect = \"none\";\n\t\tstyle.setProperty(\"-khtml-user-select\", \"none\");\n\t\tstyle.setProperty(\"-moz-user-select\", \"none\");\n\t\tstyle.setProperty(\"-ms-user-select\", \"none\");\n\t\tstyle.userSelect = \"none\";\n\t}\n\n\tprotected initRootElement(): void {\n\t\tconst view = this.view;\n\t\tconst isOverlay = this._isOverlay;\n\t\tconst rootElement = this._rootElement;\n\t\tconst elementContainer = this._elementContainer;\n\n\t\t// Insert elements\n\t\tconst insertionPosition = isOverlay ? 2 : 0;\n\t\tconst children = rootElement.children;\n\t\tif (insertionPosition < children.length) {\n\t\t\tconst child = children[insertionPosition];\n\t\t\trootElement.insertBefore(view, child);\n\t\t\trootElement.insertBefore(elementContainer, child);\n\t\t} else {\n\t\t\trootElement.appendChild(view);\n\t\t\trootElement.appendChild(elementContainer);\n\t\t}\n\n\t\tif (isOverlay) {\n\t\t\tconst stage = this.stage;\n\t\t\tconst oldOnChildrenChange = (stage as any).onChildrenChange;\n\t\t\t(stage as any).onChildrenChange = (): void => {\n\t\t\t\tthis.onStageDirty();\n\t\t\t\toldOnChildrenChange.call(stage);\n\t\t\t};\n\t\t}\n\n\t\t// Init styles\n\t\tconst rootElementStyle = rootElement.style;\n\t\tif (rootElement !== document.body) {\n\t\t\tconst rootElementStylePosition = window.getComputedStyle(rootElement).position;\n\t\t\tif (rootElementStylePosition === \"static\") {\n\t\t\t\trootElementStyle.position = \"relative\";\n\t\t\t}\n\t\t}\n\t\trootElementStyle.margin = \"0\";\n\t\trootElementStyle.padding = \"0\";\n\t\trootElementStyle.overflow = \"hidden\";\n\t}\n\n\tprotected initFocusHandling(): void {\n\t\tconst view = this.view;\n\t\tconst stage = this.stage;\n\t\tconst focusController = this.getFocusController();\n\n\t\tview.setAttribute(\"tabindex\", \"0\");\n\n\t\tDControllers.getKeyboardController().init(view, stage, focusController);\n\n\t\tconst interactionManager = this.renderer.plugins.interaction;\n\t\tinteractionManager.on(UtilPointerEvent.down, (e: interaction.InteractionEvent): void => {\n\t\t\tif (e.target == null || e.target === stage) {\n\t\t\t\tfocusController.clear();\n\t\t\t}\n\t\t});\n\t}\n\n\tprotected initResizeHandling(): void {\n\t\tconst options = this._options;\n\t\tconst isWidthFixed = options.isWidthFixed();\n\t\tconst isHeightFixed = options.isHeightFixed();\n\t\tif (!isWidthFixed || !isHeightFixed) {\n\t\t\tconst onResizeBound = (): void => {\n\t\t\t\tthis.onResize();\n\t\t\t};\n\t\t\tif (window.ResizeObserver != null) {\n\t\t\t\tnew ResizeObserver(onResizeBound).observe(this._rootElement);\n\t\t\t} else {\n\t\t\t\twindow.addEventListener(\"resize\", onResizeBound);\n\t\t\t\twindow.addEventListener(\"orientationchange\", onResizeBound);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected onResize(): void {\n\t\tconst options = this._options;\n\t\tconst bboxes = this._rootElement.getClientRects();\n\t\tif (bboxes.length <= 0) {\n\t\t\t// The root element size is (0, 0) and not visible.\n\t\t\t// In this case, skip the resizing.\n\t\t\treturn;\n\t\t}\n\t\tconst bbox = bboxes[0];\n\t\tconst newWidth = options.isWidthFixed() ? options.getWidth() : bbox.width;\n\t\tconst newHeight = options.isHeightFixed() ? options.getHeight() : bbox.height;\n\t\tthis.renderer.resize(newWidth, newHeight);\n\n\t\tconst padding = this._padding;\n\t\tconst children = this.stage.children;\n\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\tconst child = children[i];\n\t\t\tif (child instanceof DBase) {\n\t\t\t\tchild.onParentResize(newWidth, newHeight, padding);\n\t\t\t}\n\t\t}\n\n\t\tthis.update();\n\t}\n\n\tprotected initWheelHandling(): void {\n\t\tconst global = new Point();\n\t\tconst util = UtilWheelEvent.getInstance();\n\t\tconst interactionManager = this.renderer.plugins.interaction;\n\t\tutil.on(this.view, (e: WheelEvent | Event): void => {\n\t\t\tconst wheelEvent = e as WheelEvent;\n\t\t\tUtilPointerEvent.toGlobal(wheelEvent, interactionManager, global);\n\t\t\tlet current = interactionManager.hitTest(global);\n\t\t\tconst deltas = util.normalize(e);\n\t\t\tif (deltas != null) {\n\t\t\t\twhile (current != null) {\n\t\t\t\t\tif (isWheelable(current)) {\n\t\t\t\t\t\tif (current.onWheel(wheelEvent, deltas, global)) {\n\t\t\t\t\t\t\twheelEvent.preventDefault();\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tcurrent = current.parent;\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tprotected initDoubleClickHandling(): void {\n\t\tconst focusController = this.getFocusController();\n\t\tconst interactionManager = this.renderer.plugins.interaction;\n\t\tUtilPointerEvent.onDblClick(this.view, (e: MouseEvent | TouchEvent): void => {\n\t\t\tconst focused = focusController.get();\n\t\t\tif (focused != null) {\n\t\t\t\tlet current: DFocusable | DFocusableContainer | null = focused;\n\t\t\t\twhile (current != null) {\n\t\t\t\t\tif (isDblClickable(current)) {\n\t\t\t\t\t\tif (current.onDblClick(e, interactionManager)) {\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tcurrent = current.parent;\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tlock(): void {\n\t\tthis._isLocked = true;\n\t}\n\n\tunlock(): void {\n\t\tthis._isLocked = false;\n\t}\n\n\tupdate(): void {\n\t\tif (!this._isLocked && this._renderId == null) {\n\t\t\tthis._renderId = requestAnimationFrame(this._renderBound);\n\t\t}\n\t}\n\n\tprotected onStageDirty(): void {\n\t\t// Update the visibility if this is a overlay layer.\n\t\tif (this._isOverlay) {\n\t\t\tif (0 < this.stage.children.length) {\n\t\t\t\t// There are more than one children,\n\t\t\t\t// therefore must be visible.\n\t\t\t\tif (!this._isVisible) {\n\t\t\t\t\tthis._isVisible = true;\n\t\t\t\t\tthis.view.style.display = \"block\";\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// There is no child,\n\t\t\t\t// therefore must not be visible.\n\t\t\t\tif (this._isVisible) {\n\t\t\t\t\tthis._isVisible = false;\n\t\t\t\t\tthis.view.style.display = \"none\";\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\trender(): void {\n\t\tthis.reflow();\n\n\t\t// Please note why the following line is here.\n\t\t//\n\t\t// Before this line, the update method does not enque a rendering task\n\t\t// because `this._renderId` is not null. As a result, this prevents\n\t\t// an unintentional rendering loop caused by the refit or the reflow.\n\t\t//\n\t\t// After this line, the update method enques a rendering task.\n\t\t// Namely, in the DisplayObject#render(Renderer) method, allowed to enque\n\t\t// a rendering task. For instance, please refer to the DDiagramShape#update().\n\t\tthis._renderId = null;\n\n\t\t// Render\n\t\tsuper.render();\n\t}\n\n\tget width(): number {\n\t\treturn this.screen.width;\n\t}\n\n\tget height(): number {\n\t\treturn this.screen.height;\n\t}\n\n\tget padding(): DPadding {\n\t\treturn this._padding;\n\t}\n\n\treflow(): void {\n\t\tconst children = this.stage.children;\n\t\tfor (let ilimit = 0, limit = this._reflowLimit; ilimit < limit; ++ilimit) {\n\t\t\tlet isDirty = false;\n\t\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\t\tconst child = children[i];\n\t\t\t\tif (child instanceof DBase) {\n\t\t\t\t\tchild.reflow();\n\t\t\t\t\tisDirty =\n\t\t\t\t\t\tisDirty || child.isDirty() || child.hasDirty() || child.isHierarchyDirty();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// If DBases are changed during the `reflow` process, need to reflow again.\n\t\t\tif (!isDirty) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\tgetFocusController(): DControllerFocus {\n\t\treturn this.application.getFocusController();\n\t}\n\n\tgetRootElement(): HTMLElement {\n\t\treturn this._rootElement;\n\t}\n\n\tgetElementContainer(): HTMLElement {\n\t\treturn this._elementContainer;\n\t}\n\n\tgetDynamicFontAtlases(): DynamicFontAtlases {\n\t\tif (this._dynamicFontAtlases == null) {\n\t\t\tthis._dynamicFontAtlases = new DynamicFontAtlases(this);\n\t\t}\n\t\treturn this._dynamicFontAtlases;\n\t}\n}\n"]}
1
+ {"version":3,"file":"d-application-layer.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-application-layer.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { Application, InteractionEvent, InteractionManager, Point } from \"pixi.js\";\nimport { DApplicationLayerLike } from \"./d-application-layer-like\";\nimport { DApplicationLayerOptions } from \"./d-application-layer-options\";\nimport { DApplicationLike } from \"./d-application-like\";\nimport { DBase } from \"./d-base\";\nimport { DControllerFocus, DFocusable, DFocusableContainer } from \"./d-controller-focus\";\nimport { DControllers } from \"./d-controllers\";\nimport { DPadding } from \"./d-padding\";\nimport { DynamicFontAtlases } from \"./util/dynamic-font-atlases\";\nimport { UtilPointerEvent } from \"./util/util-pointer-event\";\nimport { UtilWheelEvent, UtilWheelEventDeltas } from \"./util/util-wheel-event\";\n\ninterface DblClickable {\n\tonDblClick(e: MouseEvent | TouchEvent, interactionManager: InteractionManager): boolean;\n}\n\nconst isDblClickable = (target: any): target is DblClickable => {\n\treturn target != null && target.onDblClick != null;\n};\n\ninterface Wheelable {\n\tonWheel(e: WheelEvent, deltas: UtilWheelEventDeltas, global: Point): boolean;\n}\n\nconst isWheelable = (target: any): target is Wheelable => {\n\treturn target != null && target.onWheel != null;\n};\n\nexport class DApplicationLayer extends Application implements DApplicationLayerLike {\n\tprotected _options: DApplicationLayerOptions;\n\tprotected _renderId: number | null = null;\n\tprotected _renderBound: () => void;\n\tprotected _isLocked: boolean;\n\tprotected _isOverlay: boolean;\n\tprotected _reflowLimit: number;\n\tprotected _rootElement: HTMLElement;\n\tprotected _elementContainer: HTMLElement;\n\tprotected _padding: DPadding;\n\tprotected _dynamicFontAtlases: DynamicFontAtlases | null = null;\n\tprotected _isVisible: boolean;\n\n\treadonly application: DApplicationLike;\n\n\tconstructor(application: DApplicationLike, options: DApplicationLayerOptions) {\n\t\tsuper(options.getPixiApplicationOptions());\n\n\t\tthis._options = options;\n\t\tthis._isLocked = false;\n\t\tthis._isVisible = true;\n\t\tthis._isOverlay = options.isOverlay();\n\t\tthis._padding = options.getPadding();\n\t\tthis._rootElement = options.getRootElement();\n\t\tthis._reflowLimit = 5;\n\t\tthis._elementContainer = this.newElementContainer();\n\n\t\tthis.application = application;\n\n\t\tthis._renderBound = (): void => {\n\t\t\tif (this._renderId != null) {\n\t\t\t\tthis.render();\n\t\t\t}\n\t\t};\n\n\t\tthis.initStage();\n\t\tthis.initView();\n\t\tthis.initRootElement();\n\t\tthis.initFocusHandling();\n\t\tthis.initResizeHandling();\n\t\tthis.initWheelHandling();\n\t\tthis.initDoubleClickHandling();\n\t}\n\n\tprotected newElementContainer(): HTMLElement {\n\t\tconst result = document.createElement(\"div\");\n\t\tresult.setAttribute(\n\t\t\t\"style\",\n\t\t\t\"position: absolute; top: 0; left: 0; width: 0; height: 0;\" +\n\t\t\t\t\"margin: 0; padding: 0; outline: none;\"\n\t\t);\n\t\treturn result;\n\t}\n\n\tprotected initStage(): void {\n\t\tconst stage = this.stage;\n\t\t(stage as any).layer = this;\n\t\t(stage as any).application = this.application;\n\t\tstage.interactive = true;\n\t}\n\n\tprotected initView(): void {\n\t\tconst view = this.view;\n\t\tconst style = view.style;\n\t\tstyle.position = \"absolute\";\n\t\tstyle.top = \"0\";\n\t\tstyle.left = \"0\";\n\t\tstyle.width = \"100%\";\n\t\tstyle.height = \"100%\";\n\t\tstyle.display = \"block\";\n\t\tstyle.outline = \"none\";\n\t\t(style as any).webkitTapHighlightColor = \"rgba(255,255,255,0)\";\n\t\tstyle.webkitUserSelect = \"none\";\n\t\tstyle.setProperty(\"-khtml-user-select\", \"none\");\n\t\tstyle.setProperty(\"-moz-user-select\", \"none\");\n\t\tstyle.setProperty(\"-ms-user-select\", \"none\");\n\t\tstyle.userSelect = \"none\";\n\t}\n\n\tprotected initRootElement(): void {\n\t\tconst view = this.view;\n\t\tconst isOverlay = this._isOverlay;\n\t\tconst rootElement = this._rootElement;\n\t\tconst elementContainer = this._elementContainer;\n\n\t\t// Insert elements\n\t\tconst insertionPosition = isOverlay ? 2 : 0;\n\t\tconst children = rootElement.children;\n\t\tif (insertionPosition < children.length) {\n\t\t\tconst child = children[insertionPosition];\n\t\t\trootElement.insertBefore(view, child);\n\t\t\trootElement.insertBefore(elementContainer, child);\n\t\t} else {\n\t\t\trootElement.appendChild(view);\n\t\t\trootElement.appendChild(elementContainer);\n\t\t}\n\n\t\tif (isOverlay) {\n\t\t\tconst stage = this.stage;\n\t\t\tconst oldOnChildrenChange = (stage as any).onChildrenChange;\n\t\t\t(stage as any).onChildrenChange = (): void => {\n\t\t\t\tthis.onStageDirty();\n\t\t\t\toldOnChildrenChange.call(stage);\n\t\t\t};\n\t\t}\n\n\t\t// Init styles\n\t\tconst rootElementStyle = rootElement.style;\n\t\tif (rootElement !== document.body) {\n\t\t\tconst rootElementStylePosition = window.getComputedStyle(rootElement).position;\n\t\t\tif (rootElementStylePosition === \"static\") {\n\t\t\t\trootElementStyle.position = \"relative\";\n\t\t\t}\n\t\t}\n\t\trootElementStyle.margin = \"0\";\n\t\trootElementStyle.padding = \"0\";\n\t\trootElementStyle.overflow = \"hidden\";\n\t}\n\n\tprotected initFocusHandling(): void {\n\t\tconst view = this.view;\n\t\tconst stage = this.stage;\n\t\tconst focusController = this.getFocusController();\n\n\t\tview.setAttribute(\"tabindex\", \"0\");\n\n\t\tDControllers.getKeyboardController().init(view, stage, focusController);\n\n\t\tconst interactionManager = this.renderer.plugins.interaction;\n\t\tinteractionManager.on(UtilPointerEvent.down, (e: InteractionEvent): void => {\n\t\t\tif (e.target == null || e.target === stage) {\n\t\t\t\tfocusController.clear();\n\t\t\t}\n\t\t});\n\t}\n\n\tprotected initResizeHandling(): void {\n\t\tconst options = this._options;\n\t\tconst isWidthFixed = options.isWidthFixed();\n\t\tconst isHeightFixed = options.isHeightFixed();\n\t\tif (!isWidthFixed || !isHeightFixed) {\n\t\t\tconst onResizeBound = (): void => {\n\t\t\t\tthis.onResize();\n\t\t\t};\n\t\t\tif (window.ResizeObserver != null) {\n\t\t\t\tnew ResizeObserver(onResizeBound).observe(this._rootElement);\n\t\t\t} else {\n\t\t\t\twindow.addEventListener(\"resize\", onResizeBound);\n\t\t\t\twindow.addEventListener(\"orientationchange\", onResizeBound);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected onResize(): void {\n\t\tconst options = this._options;\n\t\tconst bboxes = this._rootElement.getClientRects();\n\t\tif (bboxes.length <= 0) {\n\t\t\t// The root element size is (0, 0) and not visible.\n\t\t\t// In this case, skip the resizing.\n\t\t\treturn;\n\t\t}\n\t\tconst bbox = bboxes[0];\n\t\tconst newWidth = options.isWidthFixed() ? options.getWidth() : bbox.width;\n\t\tconst newHeight = options.isHeightFixed() ? options.getHeight() : bbox.height;\n\t\tthis.renderer.resize(newWidth, newHeight);\n\n\t\tconst padding = this._padding;\n\t\tconst children = this.stage.children;\n\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\tconst child = children[i];\n\t\t\tif (child instanceof DBase) {\n\t\t\t\tchild.onParentResize(newWidth, newHeight, padding);\n\t\t\t}\n\t\t}\n\n\t\tthis.update();\n\t}\n\n\tprotected initWheelHandling(): void {\n\t\tconst global = new Point();\n\t\tconst util = UtilWheelEvent.getInstance();\n\t\tconst interactionManager = this.renderer.plugins.interaction;\n\t\tutil.on(this.view, (e: WheelEvent | Event): void => {\n\t\t\tconst wheelEvent = e as WheelEvent;\n\t\t\tUtilPointerEvent.toGlobal(wheelEvent, interactionManager, global);\n\t\t\tlet current = interactionManager.hitTest(global);\n\t\t\tconst deltas = util.normalize(e);\n\t\t\tif (deltas != null) {\n\t\t\t\twhile (current != null) {\n\t\t\t\t\tif (isWheelable(current)) {\n\t\t\t\t\t\tif (current.onWheel(wheelEvent, deltas, global)) {\n\t\t\t\t\t\t\twheelEvent.preventDefault();\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tcurrent = current.parent;\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tprotected initDoubleClickHandling(): void {\n\t\tconst focusController = this.getFocusController();\n\t\tconst interactionManager = this.renderer.plugins.interaction;\n\t\tUtilPointerEvent.onDblClick(this.view, (e: MouseEvent | TouchEvent): void => {\n\t\t\tconst focused = focusController.get();\n\t\t\tif (focused != null) {\n\t\t\t\tlet current: DFocusable | DFocusableContainer | null = focused;\n\t\t\t\twhile (current != null) {\n\t\t\t\t\tif (isDblClickable(current)) {\n\t\t\t\t\t\tif (current.onDblClick(e, interactionManager)) {\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tcurrent = current.parent;\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tlock(): void {\n\t\tthis._isLocked = true;\n\t}\n\n\tunlock(): void {\n\t\tthis._isLocked = false;\n\t}\n\n\tupdate(): void {\n\t\tif (!this._isLocked && this._renderId == null) {\n\t\t\tthis._renderId = requestAnimationFrame(this._renderBound);\n\t\t}\n\t}\n\n\tprotected onStageDirty(): void {\n\t\t// Update the visibility if this is a overlay layer.\n\t\tif (this._isOverlay) {\n\t\t\tif (0 < this.stage.children.length) {\n\t\t\t\t// There are more than one children,\n\t\t\t\t// therefore must be visible.\n\t\t\t\tif (!this._isVisible) {\n\t\t\t\t\tthis._isVisible = true;\n\t\t\t\t\tthis.view.style.display = \"block\";\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// There is no child,\n\t\t\t\t// therefore must not be visible.\n\t\t\t\tif (this._isVisible) {\n\t\t\t\t\tthis._isVisible = false;\n\t\t\t\t\tthis.view.style.display = \"none\";\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\trender(): void {\n\t\tthis.reflow();\n\n\t\t// Please note why the following line is here.\n\t\t//\n\t\t// Before this line, the update method does not enque a rendering task\n\t\t// because `this._renderId` is not null. As a result, this prevents\n\t\t// an unintentional rendering loop caused by the refit or the reflow.\n\t\t//\n\t\t// After this line, the update method enques a rendering task.\n\t\t// Namely, in the DisplayObject#render(Renderer) method, allowed to enque\n\t\t// a rendering task. For instance, please refer to the DDiagramShape#update().\n\t\tthis._renderId = null;\n\n\t\t// Render\n\t\tsuper.render();\n\t}\n\n\tget width(): number {\n\t\treturn this.screen.width;\n\t}\n\n\tget height(): number {\n\t\treturn this.screen.height;\n\t}\n\n\tget padding(): DPadding {\n\t\treturn this._padding;\n\t}\n\n\treflow(): void {\n\t\tconst children = this.stage.children;\n\t\tfor (let ilimit = 0, limit = this._reflowLimit; ilimit < limit; ++ilimit) {\n\t\t\tlet isDirty = false;\n\t\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\t\tconst child = children[i];\n\t\t\t\tif (child instanceof DBase) {\n\t\t\t\t\tchild.reflow();\n\t\t\t\t\tisDirty =\n\t\t\t\t\t\tisDirty || child.isDirty() || child.hasDirty() || child.isHierarchyDirty();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// If DBases are changed during the `reflow` process, need to reflow again.\n\t\t\tif (!isDirty) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\tgetFocusController(): DControllerFocus {\n\t\treturn this.application.getFocusController();\n\t}\n\n\tgetRootElement(): HTMLElement {\n\t\treturn this._rootElement;\n\t}\n\n\tgetElementContainer(): HTMLElement {\n\t\treturn this._elementContainer;\n\t}\n\n\tgetDynamicFontAtlases(): DynamicFontAtlases {\n\t\tif (this._dynamicFontAtlases == null) {\n\t\t\tthis._dynamicFontAtlases = new DynamicFontAtlases(this);\n\t\t}\n\t\treturn this._dynamicFontAtlases;\n\t}\n}\n"]}