@babylonjs/gui 5.0.0-rc.5 → 5.0.0-rc.9

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 (203) hide show
  1. package/2D/adtInstrumentation.d.ts +52 -52
  2. package/2D/adtInstrumentation.js +126 -126
  3. package/2D/advancedDynamicTexture.d.ts +448 -448
  4. package/2D/advancedDynamicTexture.js +1318 -1318
  5. package/2D/controls/button.d.ts +135 -135
  6. package/2D/controls/button.js +276 -276
  7. package/2D/controls/checkbox.d.ts +59 -59
  8. package/2D/controls/checkbox.js +188 -188
  9. package/2D/controls/colorpicker.d.ts +103 -103
  10. package/2D/controls/colorpicker.js +1417 -1417
  11. package/2D/controls/container.d.ts +175 -175
  12. package/2D/controls/container.js +570 -570
  13. package/2D/controls/control.d.ts +866 -866
  14. package/2D/controls/control.js +2433 -2433
  15. package/2D/controls/displayGrid.d.ts +53 -53
  16. package/2D/controls/displayGrid.js +245 -245
  17. package/2D/controls/ellipse.d.ts +21 -21
  18. package/2D/controls/ellipse.js +85 -85
  19. package/2D/controls/focusableButton.d.ts +59 -59
  20. package/2D/controls/focusableButton.js +99 -99
  21. package/2D/controls/focusableControl.d.ts +34 -34
  22. package/2D/controls/focusableControl.js +1 -1
  23. package/2D/controls/grid.d.ts +139 -139
  24. package/2D/controls/grid.js +529 -529
  25. package/2D/controls/image.d.ts +204 -204
  26. package/2D/controls/image.js +887 -887
  27. package/2D/controls/index.d.ts +29 -29
  28. package/2D/controls/index.js +29 -29
  29. package/2D/controls/inputPassword.d.ts +8 -8
  30. package/2D/controls/inputPassword.js +25 -25
  31. package/2D/controls/inputText.d.ts +201 -201
  32. package/2D/controls/inputText.js +1119 -1119
  33. package/2D/controls/line.d.ts +66 -66
  34. package/2D/controls/line.js +271 -271
  35. package/2D/controls/multiLine.d.ts +75 -75
  36. package/2D/controls/multiLine.js +262 -262
  37. package/2D/controls/radioButton.d.ts +49 -49
  38. package/2D/controls/radioButton.js +205 -205
  39. package/2D/controls/rectangle.d.ts +29 -29
  40. package/2D/controls/rectangle.js +150 -150
  41. package/2D/controls/scrollViewers/scrollViewer.d.ts +182 -182
  42. package/2D/controls/scrollViewers/scrollViewer.js +677 -677
  43. package/2D/controls/scrollViewers/scrollViewerWindow.d.ts +57 -57
  44. package/2D/controls/scrollViewers/scrollViewerWindow.js +278 -278
  45. package/2D/controls/selector.d.ts +263 -263
  46. package/2D/controls/selector.js +692 -692
  47. package/2D/controls/sliders/baseSlider.d.ts +82 -82
  48. package/2D/controls/sliders/baseSlider.js +347 -347
  49. package/2D/controls/sliders/imageBasedSlider.d.ts +49 -49
  50. package/2D/controls/sliders/imageBasedSlider.js +192 -192
  51. package/2D/controls/sliders/imageScrollBar.d.ts +65 -65
  52. package/2D/controls/sliders/imageScrollBar.js +263 -263
  53. package/2D/controls/sliders/scrollBar.d.ts +38 -38
  54. package/2D/controls/sliders/scrollBar.js +143 -143
  55. package/2D/controls/sliders/slider.d.ts +35 -35
  56. package/2D/controls/sliders/slider.js +271 -271
  57. package/2D/controls/stackPanel.d.ts +64 -64
  58. package/2D/controls/stackPanel.js +246 -246
  59. package/2D/controls/statics.d.ts +6 -6
  60. package/2D/controls/statics.js +49 -49
  61. package/2D/controls/textBlock.d.ts +175 -175
  62. package/2D/controls/textBlock.js +603 -603
  63. package/2D/controls/textWrapper.d.ts +13 -13
  64. package/2D/controls/textWrapper.js +101 -101
  65. package/2D/controls/toggleButton.d.ts +117 -117
  66. package/2D/controls/toggleButton.js +268 -268
  67. package/2D/controls/virtualKeyboard.d.ts +96 -96
  68. package/2D/controls/virtualKeyboard.js +256 -256
  69. package/2D/index.d.ts +9 -9
  70. package/2D/index.js +9 -9
  71. package/2D/math2D.d.ts +117 -117
  72. package/2D/math2D.js +221 -221
  73. package/2D/measure.d.ts +77 -77
  74. package/2D/measure.js +139 -139
  75. package/2D/multiLinePoint.d.ts +47 -47
  76. package/2D/multiLinePoint.js +127 -127
  77. package/2D/style.d.ts +46 -46
  78. package/2D/style.js +97 -97
  79. package/2D/valueAndUnit.d.ts +89 -89
  80. package/2D/valueAndUnit.js +226 -226
  81. package/2D/xmlLoader.d.ts +60 -60
  82. package/2D/xmlLoader.js +348 -348
  83. package/3D/behaviors/defaultBehavior.d.ts +73 -73
  84. package/3D/behaviors/defaultBehavior.js +121 -121
  85. package/3D/controls/abstractButton3D.d.ts +15 -15
  86. package/3D/controls/abstractButton3D.js +25 -25
  87. package/3D/controls/button3D.d.ts +30 -30
  88. package/3D/controls/button3D.js +93 -93
  89. package/3D/controls/container3D.d.ts +72 -72
  90. package/3D/controls/container3D.js +139 -139
  91. package/3D/controls/contentDisplay3D.d.ts +30 -30
  92. package/3D/controls/contentDisplay3D.js +79 -79
  93. package/3D/controls/control3D.d.ts +201 -201
  94. package/3D/controls/control3D.js +445 -445
  95. package/3D/controls/cylinderPanel.d.ts +17 -17
  96. package/3D/controls/cylinderPanel.js +66 -66
  97. package/3D/controls/handMenu.d.ts +28 -28
  98. package/3D/controls/handMenu.js +47 -47
  99. package/3D/controls/holographicBackplate.d.ts +49 -49
  100. package/3D/controls/holographicBackplate.js +120 -120
  101. package/3D/controls/holographicButton.d.ts +84 -84
  102. package/3D/controls/holographicButton.js +339 -339
  103. package/3D/controls/holographicSlate.d.ts +131 -131
  104. package/3D/controls/holographicSlate.js +431 -431
  105. package/3D/controls/index.d.ts +21 -21
  106. package/3D/controls/index.js +21 -21
  107. package/3D/controls/meshButton3D.d.ts +21 -21
  108. package/3D/controls/meshButton3D.js +62 -62
  109. package/3D/controls/nearMenu.d.ts +44 -44
  110. package/3D/controls/nearMenu.js +114 -114
  111. package/3D/controls/planePanel.d.ts +9 -9
  112. package/3D/controls/planePanel.js +36 -36
  113. package/3D/controls/scatterPanel.d.ts +18 -18
  114. package/3D/controls/scatterPanel.js +108 -108
  115. package/3D/controls/slider3D.d.ts +81 -81
  116. package/3D/controls/slider3D.js +268 -268
  117. package/3D/controls/spherePanel.d.ts +17 -17
  118. package/3D/controls/spherePanel.js +67 -67
  119. package/3D/controls/stackPanel3D.d.ts +22 -22
  120. package/3D/controls/stackPanel3D.js +107 -107
  121. package/3D/controls/touchButton3D.d.ts +80 -80
  122. package/3D/controls/touchButton3D.js +233 -233
  123. package/3D/controls/touchHolographicButton.d.ts +110 -110
  124. package/3D/controls/touchHolographicButton.js +445 -445
  125. package/3D/controls/touchHolographicMenu.d.ts +61 -61
  126. package/3D/controls/touchHolographicMenu.js +149 -149
  127. package/3D/controls/touchMeshButton3D.d.ts +21 -21
  128. package/3D/controls/touchMeshButton3D.js +62 -62
  129. package/3D/controls/volumeBasedPanel.d.ts +53 -53
  130. package/3D/controls/volumeBasedPanel.js +174 -174
  131. package/3D/gizmos/gizmoHandle.d.ts +108 -108
  132. package/3D/gizmos/gizmoHandle.js +209 -209
  133. package/3D/gizmos/index.d.ts +2 -2
  134. package/3D/gizmos/index.js +2 -2
  135. package/3D/gizmos/slateGizmo.d.ts +57 -57
  136. package/3D/gizmos/slateGizmo.js +369 -369
  137. package/3D/gui3DManager.d.ts +94 -94
  138. package/3D/gui3DManager.js +257 -257
  139. package/3D/index.d.ts +5 -5
  140. package/3D/index.js +5 -5
  141. package/3D/materials/fluent/fluentMaterial.d.ts +90 -90
  142. package/3D/materials/fluent/fluentMaterial.js +292 -292
  143. package/3D/materials/fluent/index.d.ts +1 -1
  144. package/3D/materials/fluent/index.js +1 -1
  145. package/3D/materials/fluent/shaders/fluent.fragment.d.ts +5 -5
  146. package/3D/materials/fluent/shaders/fluent.fragment.js +8 -8
  147. package/3D/materials/fluent/shaders/fluent.vertex.d.ts +5 -5
  148. package/3D/materials/fluent/shaders/fluent.vertex.js +8 -8
  149. package/3D/materials/fluentBackplate/fluentBackplateMaterial.d.ts +154 -154
  150. package/3D/materials/fluentBackplate/fluentBackplateMaterial.js +469 -469
  151. package/3D/materials/fluentBackplate/index.d.ts +1 -1
  152. package/3D/materials/fluentBackplate/index.js +1 -1
  153. package/3D/materials/fluentBackplate/shaders/fluentBackplate.fragment.d.ts +5 -5
  154. package/3D/materials/fluentBackplate/shaders/fluentBackplate.fragment.js +8 -8
  155. package/3D/materials/fluentBackplate/shaders/fluentBackplate.vertex.d.ts +5 -5
  156. package/3D/materials/fluentBackplate/shaders/fluentBackplate.vertex.js +8 -8
  157. package/3D/materials/fluentButton/fluentButtonMaterial.d.ts +189 -189
  158. package/3D/materials/fluentButton/fluentButtonMaterial.js +539 -539
  159. package/3D/materials/fluentButton/index.d.ts +1 -1
  160. package/3D/materials/fluentButton/index.js +1 -1
  161. package/3D/materials/fluentButton/shaders/fluentButton.fragment.d.ts +5 -5
  162. package/3D/materials/fluentButton/shaders/fluentButton.fragment.js +8 -8
  163. package/3D/materials/fluentButton/shaders/fluentButton.vertex.d.ts +5 -5
  164. package/3D/materials/fluentButton/shaders/fluentButton.vertex.js +8 -8
  165. package/3D/materials/fluentMaterial.d.ts +4 -4
  166. package/3D/materials/fluentMaterial.js +4 -4
  167. package/3D/materials/handle/handleMaterial.d.ts +68 -68
  168. package/3D/materials/handle/handleMaterial.js +126 -126
  169. package/3D/materials/handle/index.d.ts +1 -1
  170. package/3D/materials/handle/index.js +1 -1
  171. package/3D/materials/handle/shaders/handle.fragment.d.ts +5 -5
  172. package/3D/materials/handle/shaders/handle.fragment.js +8 -8
  173. package/3D/materials/handle/shaders/handle.vertex.d.ts +5 -5
  174. package/3D/materials/handle/shaders/handle.vertex.js +8 -8
  175. package/3D/materials/index.d.ts +5 -5
  176. package/3D/materials/index.js +5 -5
  177. package/3D/materials/mrdl/index.d.ts +3 -3
  178. package/3D/materials/mrdl/index.js +3 -3
  179. package/3D/materials/mrdl/mrdlBackplateMaterial.d.ts +147 -147
  180. package/3D/materials/mrdl/mrdlBackplateMaterial.js +436 -436
  181. package/3D/materials/mrdl/mrdlSliderBarMaterial.d.ts +333 -333
  182. package/3D/materials/mrdl/mrdlSliderBarMaterial.js +851 -851
  183. package/3D/materials/mrdl/mrdlSliderThumbMaterial.d.ts +333 -333
  184. package/3D/materials/mrdl/mrdlSliderThumbMaterial.js +851 -851
  185. package/3D/materials/mrdl/shaders/mrdlBackplate.fragment.d.ts +5 -5
  186. package/3D/materials/mrdl/shaders/mrdlBackplate.fragment.js +8 -8
  187. package/3D/materials/mrdl/shaders/mrdlBackplate.vertex.d.ts +5 -5
  188. package/3D/materials/mrdl/shaders/mrdlBackplate.vertex.js +8 -8
  189. package/3D/materials/mrdl/shaders/mrdlSliderBar.fragment.d.ts +5 -5
  190. package/3D/materials/mrdl/shaders/mrdlSliderBar.fragment.js +8 -8
  191. package/3D/materials/mrdl/shaders/mrdlSliderBar.vertex.d.ts +5 -5
  192. package/3D/materials/mrdl/shaders/mrdlSliderBar.vertex.js +8 -8
  193. package/3D/materials/mrdl/shaders/mrdlSliderThumb.fragment.d.ts +5 -5
  194. package/3D/materials/mrdl/shaders/mrdlSliderThumb.fragment.js +8 -8
  195. package/3D/materials/mrdl/shaders/mrdlSliderThumb.vertex.d.ts +5 -5
  196. package/3D/materials/mrdl/shaders/mrdlSliderThumb.vertex.js +8 -8
  197. package/3D/vector3WithInfo.d.ts +16 -16
  198. package/3D/vector3WithInfo.js +23 -23
  199. package/index.d.ts +2 -2
  200. package/index.js +2 -2
  201. package/legacy/legacy.d.ts +1 -1
  202. package/legacy/legacy.js +13 -13
  203. package/package.json +2 -2
@@ -1,86 +1,86 @@
1
- import { __decorate, __extends } from "tslib";
2
- import { Container } from "./container.js";
3
- import { Control } from "./control.js";
4
- import { RegisterClass } from "@babylonjs/core/Misc/typeStore.js";
5
- import { serialize } from "@babylonjs/core/Misc/decorators.js";
6
- /** Class used to create 2D ellipse containers */
7
- var Ellipse = /** @class */ (function (_super) {
8
- __extends(Ellipse, _super);
9
- /**
10
- * Creates a new Ellipse
11
- * @param name defines the control name
12
- */
13
- function Ellipse(name) {
14
- var _this = _super.call(this, name) || this;
15
- _this.name = name;
16
- _this._thickness = 1;
17
- return _this;
18
- }
19
- Object.defineProperty(Ellipse.prototype, "thickness", {
20
- /** Gets or sets border thickness */
21
- get: function () {
22
- return this._thickness;
23
- },
24
- set: function (value) {
25
- if (this._thickness === value) {
26
- return;
27
- }
28
- this._thickness = value;
29
- this._markAsDirty();
30
- },
31
- enumerable: false,
32
- configurable: true
33
- });
34
- Ellipse.prototype._getTypeName = function () {
35
- return "Ellipse";
36
- };
37
- Ellipse.prototype._localDraw = function (context) {
38
- context.save();
39
- if (this.shadowBlur || this.shadowOffsetX || this.shadowOffsetY) {
40
- context.shadowColor = this.shadowColor;
41
- context.shadowBlur = this.shadowBlur;
42
- context.shadowOffsetX = this.shadowOffsetX;
43
- context.shadowOffsetY = this.shadowOffsetY;
44
- }
45
- Control.drawEllipse(this._currentMeasure.left + this._currentMeasure.width / 2, this._currentMeasure.top + this._currentMeasure.height / 2, this._currentMeasure.width / 2 - this._thickness / 2, this._currentMeasure.height / 2 - this._thickness / 2, context);
46
- if (this._background) {
47
- context.fillStyle = this._background;
48
- context.fill();
49
- }
50
- if (this.shadowBlur || this.shadowOffsetX || this.shadowOffsetY) {
51
- context.shadowBlur = 0;
52
- context.shadowOffsetX = 0;
53
- context.shadowOffsetY = 0;
54
- }
55
- if (this._thickness) {
56
- if (this.color) {
57
- context.strokeStyle = this.color;
58
- }
59
- context.lineWidth = this._thickness;
60
- context.stroke();
61
- }
62
- context.restore();
63
- };
64
- Ellipse.prototype._additionalProcessing = function (parentMeasure, context) {
65
- _super.prototype._additionalProcessing.call(this, parentMeasure, context);
66
- this._measureForChildren.width -= 2 * this._thickness;
67
- this._measureForChildren.height -= 2 * this._thickness;
68
- this._measureForChildren.left += this._thickness;
69
- this._measureForChildren.top += this._thickness;
70
- };
71
- Ellipse.prototype._clipForChildren = function (context) {
72
- Control.drawEllipse(this._currentMeasure.left + this._currentMeasure.width / 2, this._currentMeasure.top + this._currentMeasure.height / 2, this._currentMeasure.width / 2, this._currentMeasure.height / 2, context);
73
- context.clip();
74
- };
75
- Ellipse.prototype._renderHighlightSpecific = function (context) {
76
- Control.drawEllipse(this._currentMeasure.left + this._currentMeasure.width / 2, this._currentMeasure.top + this._currentMeasure.height / 2, this._currentMeasure.width / 2 - this._highlightLineWidth / 2, this._currentMeasure.height / 2 - this._highlightLineWidth / 2, context);
77
- context.stroke();
78
- };
79
- __decorate([
80
- serialize()
81
- ], Ellipse.prototype, "thickness", null);
82
- return Ellipse;
83
- }(Container));
84
- export { Ellipse };
85
- RegisterClass("BABYLON.GUI.Ellipse", Ellipse);
1
+ import { __decorate, __extends } from "tslib";
2
+ import { Container } from "./container";
3
+ import { Control } from "./control";
4
+ import { RegisterClass } from "@babylonjs/core/Misc/typeStore.js";
5
+ import { serialize } from "@babylonjs/core/Misc/decorators.js";
6
+ /** Class used to create 2D ellipse containers */
7
+ var Ellipse = /** @class */ (function (_super) {
8
+ __extends(Ellipse, _super);
9
+ /**
10
+ * Creates a new Ellipse
11
+ * @param name defines the control name
12
+ */
13
+ function Ellipse(name) {
14
+ var _this = _super.call(this, name) || this;
15
+ _this.name = name;
16
+ _this._thickness = 1;
17
+ return _this;
18
+ }
19
+ Object.defineProperty(Ellipse.prototype, "thickness", {
20
+ /** Gets or sets border thickness */
21
+ get: function () {
22
+ return this._thickness;
23
+ },
24
+ set: function (value) {
25
+ if (this._thickness === value) {
26
+ return;
27
+ }
28
+ this._thickness = value;
29
+ this._markAsDirty();
30
+ },
31
+ enumerable: false,
32
+ configurable: true
33
+ });
34
+ Ellipse.prototype._getTypeName = function () {
35
+ return "Ellipse";
36
+ };
37
+ Ellipse.prototype._localDraw = function (context) {
38
+ context.save();
39
+ if (this.shadowBlur || this.shadowOffsetX || this.shadowOffsetY) {
40
+ context.shadowColor = this.shadowColor;
41
+ context.shadowBlur = this.shadowBlur;
42
+ context.shadowOffsetX = this.shadowOffsetX;
43
+ context.shadowOffsetY = this.shadowOffsetY;
44
+ }
45
+ Control.drawEllipse(this._currentMeasure.left + this._currentMeasure.width / 2, this._currentMeasure.top + this._currentMeasure.height / 2, this._currentMeasure.width / 2 - this._thickness / 2, this._currentMeasure.height / 2 - this._thickness / 2, context);
46
+ if (this._background) {
47
+ context.fillStyle = this._background;
48
+ context.fill();
49
+ }
50
+ if (this.shadowBlur || this.shadowOffsetX || this.shadowOffsetY) {
51
+ context.shadowBlur = 0;
52
+ context.shadowOffsetX = 0;
53
+ context.shadowOffsetY = 0;
54
+ }
55
+ if (this._thickness) {
56
+ if (this.color) {
57
+ context.strokeStyle = this.color;
58
+ }
59
+ context.lineWidth = this._thickness;
60
+ context.stroke();
61
+ }
62
+ context.restore();
63
+ };
64
+ Ellipse.prototype._additionalProcessing = function (parentMeasure, context) {
65
+ _super.prototype._additionalProcessing.call(this, parentMeasure, context);
66
+ this._measureForChildren.width -= 2 * this._thickness;
67
+ this._measureForChildren.height -= 2 * this._thickness;
68
+ this._measureForChildren.left += this._thickness;
69
+ this._measureForChildren.top += this._thickness;
70
+ };
71
+ Ellipse.prototype._clipForChildren = function (context) {
72
+ Control.drawEllipse(this._currentMeasure.left + this._currentMeasure.width / 2, this._currentMeasure.top + this._currentMeasure.height / 2, this._currentMeasure.width / 2, this._currentMeasure.height / 2, context);
73
+ context.clip();
74
+ };
75
+ Ellipse.prototype._renderHighlightSpecific = function (context) {
76
+ Control.drawEllipse(this._currentMeasure.left + this._currentMeasure.width / 2, this._currentMeasure.top + this._currentMeasure.height / 2, this._currentMeasure.width / 2 - this._highlightLineWidth / 2, this._currentMeasure.height / 2 - this._highlightLineWidth / 2, context);
77
+ context.stroke();
78
+ };
79
+ __decorate([
80
+ serialize()
81
+ ], Ellipse.prototype, "thickness", null);
82
+ return Ellipse;
83
+ }(Container));
84
+ export { Ellipse };
85
+ RegisterClass("BABYLON.GUI.Ellipse", Ellipse);
86
86
  //# sourceMappingURL=ellipse.js.map
@@ -1,59 +1,59 @@
1
- import { Nullable } from "@babylonjs/core/types.js";
2
- import { Vector2 } from "@babylonjs/core/Maths/math.vector.js";
3
- import { Button } from "./button";
4
- import { Control } from "./control";
5
- import { PointerInfoBase } from "@babylonjs/core/Events/pointerEvents.js";
6
- import { IFocusableControl } from "./focusableControl";
7
- import { Observable } from "@babylonjs/core/Misc/observable.js";
8
- import { IKeyboardEvent } from "@babylonjs/core/Events/deviceInputEvents.js";
9
- /**
10
- * Class used to create a focusable button that can easily handle keyboard events
11
- * @since 5.0.0
12
- */
13
- export declare class FocusableButton extends Button implements IFocusableControl {
14
- name?: string | undefined;
15
- /** Highlight color when button is focused */
16
- focusedColor: Nullable<string>;
17
- private _isFocused;
18
- private _unfocusedColor;
19
- /** Observable raised when the control gets the focus */
20
- onFocusObservable: Observable<Button>;
21
- /** Observable raised when the control loses the focus */
22
- onBlurObservable: Observable<Button>;
23
- /** Observable raised when a key event was processed */
24
- onKeyboardEventProcessedObservable: Observable<IKeyboardEvent>;
25
- constructor(name?: string | undefined);
26
- /** @hidden */
27
- onBlur(): void;
28
- /** @hidden */
29
- onFocus(): void;
30
- /**
31
- * Function called to get the list of controls that should not steal the focus from this control
32
- * @returns an array of controls
33
- */
34
- keepsFocusWith(): Nullable<Control[]>;
35
- /**
36
- * Function to focus a button programmatically
37
- */
38
- focus(): void;
39
- /**
40
- * Function to unfocus a button programmatically
41
- */
42
- blur(): void;
43
- /**
44
- * Handles the keyboard event
45
- * @param evt Defines the KeyboardEvent
46
- */
47
- processKeyboard(evt: IKeyboardEvent): void;
48
- /**
49
- * @param target
50
- * @param coordinates
51
- * @param pointerId
52
- * @param buttonIndex
53
- * @param pi
54
- * @hidden
55
- */
56
- _onPointerDown(target: Control, coordinates: Vector2, pointerId: number, buttonIndex: number, pi: PointerInfoBase): boolean;
57
- /** @hidden */
58
- displose(): void;
59
- }
1
+ import { Nullable } from "@babylonjs/core/types.js";
2
+ import { Vector2 } from "@babylonjs/core/Maths/math.vector.js";
3
+ import { Button } from "./button";
4
+ import { Control } from "./control";
5
+ import { PointerInfoBase } from "@babylonjs/core/Events/pointerEvents.js";
6
+ import { IFocusableControl } from "./focusableControl";
7
+ import { Observable } from "@babylonjs/core/Misc/observable.js";
8
+ import { IKeyboardEvent } from "@babylonjs/core/Events/deviceInputEvents.js";
9
+ /**
10
+ * Class used to create a focusable button that can easily handle keyboard events
11
+ * @since 5.0.0
12
+ */
13
+ export declare class FocusableButton extends Button implements IFocusableControl {
14
+ name?: string | undefined;
15
+ /** Highlight color when button is focused */
16
+ focusedColor: Nullable<string>;
17
+ private _isFocused;
18
+ private _unfocusedColor;
19
+ /** Observable raised when the control gets the focus */
20
+ onFocusObservable: Observable<Button>;
21
+ /** Observable raised when the control loses the focus */
22
+ onBlurObservable: Observable<Button>;
23
+ /** Observable raised when a key event was processed */
24
+ onKeyboardEventProcessedObservable: Observable<IKeyboardEvent>;
25
+ constructor(name?: string | undefined);
26
+ /** @hidden */
27
+ onBlur(): void;
28
+ /** @hidden */
29
+ onFocus(): void;
30
+ /**
31
+ * Function called to get the list of controls that should not steal the focus from this control
32
+ * @returns an array of controls
33
+ */
34
+ keepsFocusWith(): Nullable<Control[]>;
35
+ /**
36
+ * Function to focus a button programmatically
37
+ */
38
+ focus(): void;
39
+ /**
40
+ * Function to unfocus a button programmatically
41
+ */
42
+ blur(): void;
43
+ /**
44
+ * Handles the keyboard event
45
+ * @param evt Defines the KeyboardEvent
46
+ */
47
+ processKeyboard(evt: IKeyboardEvent): void;
48
+ /**
49
+ * @param target
50
+ * @param coordinates
51
+ * @param pointerId
52
+ * @param buttonIndex
53
+ * @param pi
54
+ * @hidden
55
+ */
56
+ _onPointerDown(target: Control, coordinates: Vector2, pointerId: number, buttonIndex: number, pi: PointerInfoBase): boolean;
57
+ /** @hidden */
58
+ displose(): void;
59
+ }
@@ -1,100 +1,100 @@
1
- import { __extends } from "tslib";
2
- import { Button } from "./button.js";
3
- import { RegisterClass } from "@babylonjs/core/Misc/typeStore.js";
4
- import { Observable } from "@babylonjs/core/Misc/observable.js";
5
- /**
6
- * Class used to create a focusable button that can easily handle keyboard events
7
- * @since 5.0.0
8
- */
9
- var FocusableButton = /** @class */ (function (_super) {
10
- __extends(FocusableButton, _super);
11
- function FocusableButton(name) {
12
- var _this = _super.call(this, name) || this;
13
- _this.name = name;
14
- /** Highlight color when button is focused */
15
- _this.focusedColor = null;
16
- _this._isFocused = false;
17
- _this._unfocusedColor = null;
18
- /** Observable raised when the control gets the focus */
19
- _this.onFocusObservable = new Observable();
20
- /** Observable raised when the control loses the focus */
21
- _this.onBlurObservable = new Observable();
22
- /** Observable raised when a key event was processed */
23
- _this.onKeyboardEventProcessedObservable = new Observable();
24
- _this._unfocusedColor = _this.color;
25
- return _this;
26
- }
27
- /** @hidden */
28
- FocusableButton.prototype.onBlur = function () {
29
- if (this._isFocused) {
30
- this._isFocused = false;
31
- if (this.focusedColor && this._unfocusedColor != null) {
32
- // Set color back to saved unfocused color
33
- this.color = this._unfocusedColor;
34
- }
35
- this.onBlurObservable.notifyObservers(this);
36
- }
37
- };
38
- /** @hidden */
39
- FocusableButton.prototype.onFocus = function () {
40
- this._isFocused = true;
41
- if (this.focusedColor) {
42
- // Save the unfocused color
43
- this._unfocusedColor = this.color;
44
- this.color = this.focusedColor;
45
- }
46
- this.onFocusObservable.notifyObservers(this);
47
- };
48
- /**
49
- * Function called to get the list of controls that should not steal the focus from this control
50
- * @returns an array of controls
51
- */
52
- FocusableButton.prototype.keepsFocusWith = function () {
53
- return null;
54
- };
55
- /**
56
- * Function to focus a button programmatically
57
- */
58
- FocusableButton.prototype.focus = function () {
59
- this._host.moveFocusToControl(this);
60
- };
61
- /**
62
- * Function to unfocus a button programmatically
63
- */
64
- FocusableButton.prototype.blur = function () {
65
- this._host.focusedControl = null;
66
- };
67
- /**
68
- * Handles the keyboard event
69
- * @param evt Defines the KeyboardEvent
70
- */
71
- FocusableButton.prototype.processKeyboard = function (evt) {
72
- this.onKeyboardEventProcessedObservable.notifyObservers(evt, -1, this);
73
- };
74
- /**
75
- * @param target
76
- * @param coordinates
77
- * @param pointerId
78
- * @param buttonIndex
79
- * @param pi
80
- * @hidden
81
- */
82
- FocusableButton.prototype._onPointerDown = function (target, coordinates, pointerId, buttonIndex, pi) {
83
- if (!this.isReadOnly) {
84
- // Clicking on button should focus
85
- this.focus();
86
- }
87
- return _super.prototype._onPointerDown.call(this, target, coordinates, pointerId, buttonIndex, pi);
88
- };
89
- /** @hidden */
90
- FocusableButton.prototype.displose = function () {
91
- _super.prototype.dispose.call(this);
92
- this.onBlurObservable.clear();
93
- this.onFocusObservable.clear();
94
- this.onKeyboardEventProcessedObservable.clear();
95
- };
96
- return FocusableButton;
97
- }(Button));
98
- export { FocusableButton };
99
- RegisterClass("BABYLON.GUI.FocusableButton", FocusableButton);
1
+ import { __extends } from "tslib";
2
+ import { Button } from "./button";
3
+ import { RegisterClass } from "@babylonjs/core/Misc/typeStore.js";
4
+ import { Observable } from "@babylonjs/core/Misc/observable.js";
5
+ /**
6
+ * Class used to create a focusable button that can easily handle keyboard events
7
+ * @since 5.0.0
8
+ */
9
+ var FocusableButton = /** @class */ (function (_super) {
10
+ __extends(FocusableButton, _super);
11
+ function FocusableButton(name) {
12
+ var _this = _super.call(this, name) || this;
13
+ _this.name = name;
14
+ /** Highlight color when button is focused */
15
+ _this.focusedColor = null;
16
+ _this._isFocused = false;
17
+ _this._unfocusedColor = null;
18
+ /** Observable raised when the control gets the focus */
19
+ _this.onFocusObservable = new Observable();
20
+ /** Observable raised when the control loses the focus */
21
+ _this.onBlurObservable = new Observable();
22
+ /** Observable raised when a key event was processed */
23
+ _this.onKeyboardEventProcessedObservable = new Observable();
24
+ _this._unfocusedColor = _this.color;
25
+ return _this;
26
+ }
27
+ /** @hidden */
28
+ FocusableButton.prototype.onBlur = function () {
29
+ if (this._isFocused) {
30
+ this._isFocused = false;
31
+ if (this.focusedColor && this._unfocusedColor != null) {
32
+ // Set color back to saved unfocused color
33
+ this.color = this._unfocusedColor;
34
+ }
35
+ this.onBlurObservable.notifyObservers(this);
36
+ }
37
+ };
38
+ /** @hidden */
39
+ FocusableButton.prototype.onFocus = function () {
40
+ this._isFocused = true;
41
+ if (this.focusedColor) {
42
+ // Save the unfocused color
43
+ this._unfocusedColor = this.color;
44
+ this.color = this.focusedColor;
45
+ }
46
+ this.onFocusObservable.notifyObservers(this);
47
+ };
48
+ /**
49
+ * Function called to get the list of controls that should not steal the focus from this control
50
+ * @returns an array of controls
51
+ */
52
+ FocusableButton.prototype.keepsFocusWith = function () {
53
+ return null;
54
+ };
55
+ /**
56
+ * Function to focus a button programmatically
57
+ */
58
+ FocusableButton.prototype.focus = function () {
59
+ this._host.moveFocusToControl(this);
60
+ };
61
+ /**
62
+ * Function to unfocus a button programmatically
63
+ */
64
+ FocusableButton.prototype.blur = function () {
65
+ this._host.focusedControl = null;
66
+ };
67
+ /**
68
+ * Handles the keyboard event
69
+ * @param evt Defines the KeyboardEvent
70
+ */
71
+ FocusableButton.prototype.processKeyboard = function (evt) {
72
+ this.onKeyboardEventProcessedObservable.notifyObservers(evt, -1, this);
73
+ };
74
+ /**
75
+ * @param target
76
+ * @param coordinates
77
+ * @param pointerId
78
+ * @param buttonIndex
79
+ * @param pi
80
+ * @hidden
81
+ */
82
+ FocusableButton.prototype._onPointerDown = function (target, coordinates, pointerId, buttonIndex, pi) {
83
+ if (!this.isReadOnly) {
84
+ // Clicking on button should focus
85
+ this.focus();
86
+ }
87
+ return _super.prototype._onPointerDown.call(this, target, coordinates, pointerId, buttonIndex, pi);
88
+ };
89
+ /** @hidden */
90
+ FocusableButton.prototype.displose = function () {
91
+ _super.prototype.dispose.call(this);
92
+ this.onBlurObservable.clear();
93
+ this.onFocusObservable.clear();
94
+ this.onKeyboardEventProcessedObservable.clear();
95
+ };
96
+ return FocusableButton;
97
+ }(Button));
98
+ export { FocusableButton };
99
+ RegisterClass("BABYLON.GUI.FocusableButton", FocusableButton);
100
100
  //# sourceMappingURL=focusableButton.js.map
@@ -1,34 +1,34 @@
1
- import { IKeyboardEvent } from "@babylonjs/core/Events/deviceInputEvents.js";
2
- import { Nullable } from "@babylonjs/core/types.js";
3
- import { Control } from "./control";
4
- /**
5
- * Interface used to define a control that can receive focus
6
- */
7
- export interface IFocusableControl {
8
- /**
9
- * Function called when the control receives the focus
10
- */
11
- onFocus(): void;
12
- /**
13
- * Function called when the control loses the focus
14
- */
15
- onBlur(): void;
16
- /**
17
- * Function called to let the control handle keyboard events
18
- * @param evt defines the current keyboard event
19
- */
20
- processKeyboard(evt: IKeyboardEvent): void;
21
- /**
22
- * Function called to get the list of controls that should not steal the focus from this control
23
- * @returns an array of controls
24
- */
25
- keepsFocusWith(): Nullable<Control[]>;
26
- /**
27
- * Function to focus the control programmatically
28
- */
29
- focus(): void;
30
- /**
31
- * Function to unfocus the control programmatically
32
- */
33
- blur(): void;
34
- }
1
+ import { IKeyboardEvent } from "@babylonjs/core/Events/deviceInputEvents.js";
2
+ import { Nullable } from "@babylonjs/core/types.js";
3
+ import { Control } from "./control";
4
+ /**
5
+ * Interface used to define a control that can receive focus
6
+ */
7
+ export interface IFocusableControl {
8
+ /**
9
+ * Function called when the control receives the focus
10
+ */
11
+ onFocus(): void;
12
+ /**
13
+ * Function called when the control loses the focus
14
+ */
15
+ onBlur(): void;
16
+ /**
17
+ * Function called to let the control handle keyboard events
18
+ * @param evt defines the current keyboard event
19
+ */
20
+ processKeyboard(evt: IKeyboardEvent): void;
21
+ /**
22
+ * Function called to get the list of controls that should not steal the focus from this control
23
+ * @returns an array of controls
24
+ */
25
+ keepsFocusWith(): Nullable<Control[]>;
26
+ /**
27
+ * Function to focus the control programmatically
28
+ */
29
+ focus(): void;
30
+ /**
31
+ * Function to unfocus the control programmatically
32
+ */
33
+ blur(): void;
34
+ }
@@ -1,2 +1,2 @@
1
- export {};
1
+ export {};
2
2
  //# sourceMappingURL=focusableControl.js.map