@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,49 +1,49 @@
1
- import { BaseSlider } from "./baseSlider";
2
- import { Image } from "../image";
3
- import { ICanvasRenderingContext } from "@babylonjs/core/Engines/ICanvas.js";
4
- import { AdvancedDynamicTexture } from "../../advancedDynamicTexture";
5
- /**
6
- * Class used to create slider controls based on images
7
- */
8
- export declare class ImageBasedSlider extends BaseSlider {
9
- name?: string | undefined;
10
- private _backgroundImage;
11
- private _thumbImage;
12
- private _valueBarImage;
13
- private _tempMeasure;
14
- get displayThumb(): boolean;
15
- set displayThumb(value: boolean);
16
- /**
17
- * Gets or sets the image used to render the background
18
- */
19
- get backgroundImage(): Image;
20
- set backgroundImage(value: Image);
21
- /**
22
- * Gets or sets the image used to render the value bar
23
- */
24
- get valueBarImage(): Image;
25
- set valueBarImage(value: Image);
26
- /**
27
- * Gets or sets the image used to render the thumb
28
- */
29
- get thumbImage(): Image;
30
- set thumbImage(value: Image);
31
- /**
32
- * Creates a new ImageBasedSlider
33
- * @param name defines the control name
34
- */
35
- constructor(name?: string | undefined);
36
- protected _getTypeName(): string;
37
- _draw(context: ICanvasRenderingContext): void;
38
- /**
39
- * Serializes the current control
40
- * @param serializationObject defined the JSON serialized object
41
- */
42
- serialize(serializationObject: any): void;
43
- /**
44
- * @param serializedObject
45
- * @param host
46
- * @hidden
47
- */
48
- _parseFromContent(serializedObject: any, host: AdvancedDynamicTexture): void;
49
- }
1
+ import { BaseSlider } from "./baseSlider";
2
+ import { Image } from "../image";
3
+ import { ICanvasRenderingContext } from "@babylonjs/core/Engines/ICanvas.js";
4
+ import { AdvancedDynamicTexture } from "../../advancedDynamicTexture";
5
+ /**
6
+ * Class used to create slider controls based on images
7
+ */
8
+ export declare class ImageBasedSlider extends BaseSlider {
9
+ name?: string | undefined;
10
+ private _backgroundImage;
11
+ private _thumbImage;
12
+ private _valueBarImage;
13
+ private _tempMeasure;
14
+ get displayThumb(): boolean;
15
+ set displayThumb(value: boolean);
16
+ /**
17
+ * Gets or sets the image used to render the background
18
+ */
19
+ get backgroundImage(): Image;
20
+ set backgroundImage(value: Image);
21
+ /**
22
+ * Gets or sets the image used to render the value bar
23
+ */
24
+ get valueBarImage(): Image;
25
+ set valueBarImage(value: Image);
26
+ /**
27
+ * Gets or sets the image used to render the thumb
28
+ */
29
+ get thumbImage(): Image;
30
+ set thumbImage(value: Image);
31
+ /**
32
+ * Creates a new ImageBasedSlider
33
+ * @param name defines the control name
34
+ */
35
+ constructor(name?: string | undefined);
36
+ protected _getTypeName(): string;
37
+ _draw(context: ICanvasRenderingContext): void;
38
+ /**
39
+ * Serializes the current control
40
+ * @param serializationObject defined the JSON serialized object
41
+ */
42
+ serialize(serializationObject: any): void;
43
+ /**
44
+ * @param serializedObject
45
+ * @param host
46
+ * @hidden
47
+ */
48
+ _parseFromContent(serializedObject: any, host: AdvancedDynamicTexture): void;
49
+ }
@@ -1,193 +1,193 @@
1
- import { __decorate, __extends } from "tslib";
2
- import { BaseSlider } from "./baseSlider.js";
3
- import { Measure } from "../../measure.js";
4
- import { Image } from "../image.js";
5
- import { RegisterClass } from "@babylonjs/core/Misc/typeStore.js";
6
- import { serialize } from "@babylonjs/core/Misc/decorators.js";
7
- /**
8
- * Class used to create slider controls based on images
9
- */
10
- var ImageBasedSlider = /** @class */ (function (_super) {
11
- __extends(ImageBasedSlider, _super);
12
- /**
13
- * Creates a new ImageBasedSlider
14
- * @param name defines the control name
15
- */
16
- function ImageBasedSlider(name) {
17
- var _this = _super.call(this, name) || this;
18
- _this.name = name;
19
- _this._tempMeasure = new Measure(0, 0, 0, 0);
20
- return _this;
21
- }
22
- Object.defineProperty(ImageBasedSlider.prototype, "displayThumb", {
23
- get: function () {
24
- return this._displayThumb && this.thumbImage != null;
25
- },
26
- set: function (value) {
27
- if (this._displayThumb === value) {
28
- return;
29
- }
30
- this._displayThumb = value;
31
- this._markAsDirty();
32
- },
33
- enumerable: false,
34
- configurable: true
35
- });
36
- Object.defineProperty(ImageBasedSlider.prototype, "backgroundImage", {
37
- /**
38
- * Gets or sets the image used to render the background
39
- */
40
- get: function () {
41
- return this._backgroundImage;
42
- },
43
- set: function (value) {
44
- var _this = this;
45
- if (this._backgroundImage === value) {
46
- return;
47
- }
48
- this._backgroundImage = value;
49
- if (value && !value.isLoaded) {
50
- value.onImageLoadedObservable.addOnce(function () { return _this._markAsDirty(); });
51
- }
52
- this._markAsDirty();
53
- },
54
- enumerable: false,
55
- configurable: true
56
- });
57
- Object.defineProperty(ImageBasedSlider.prototype, "valueBarImage", {
58
- /**
59
- * Gets or sets the image used to render the value bar
60
- */
61
- get: function () {
62
- return this._valueBarImage;
63
- },
64
- set: function (value) {
65
- var _this = this;
66
- if (this._valueBarImage === value) {
67
- return;
68
- }
69
- this._valueBarImage = value;
70
- if (value && !value.isLoaded) {
71
- value.onImageLoadedObservable.addOnce(function () { return _this._markAsDirty(); });
72
- }
73
- this._markAsDirty();
74
- },
75
- enumerable: false,
76
- configurable: true
77
- });
78
- Object.defineProperty(ImageBasedSlider.prototype, "thumbImage", {
79
- /**
80
- * Gets or sets the image used to render the thumb
81
- */
82
- get: function () {
83
- return this._thumbImage;
84
- },
85
- set: function (value) {
86
- var _this = this;
87
- if (this._thumbImage === value) {
88
- return;
89
- }
90
- this._thumbImage = value;
91
- if (value && !value.isLoaded) {
92
- value.onImageLoadedObservable.addOnce(function () { return _this._markAsDirty(); });
93
- }
94
- this._markAsDirty();
95
- },
96
- enumerable: false,
97
- configurable: true
98
- });
99
- ImageBasedSlider.prototype._getTypeName = function () {
100
- return "ImageBasedSlider";
101
- };
102
- ImageBasedSlider.prototype._draw = function (context) {
103
- context.save();
104
- this._applyStates(context);
105
- this._prepareRenderingData("rectangle");
106
- var thumbPosition = this._getThumbPosition();
107
- var left = this._renderLeft;
108
- var top = this._renderTop;
109
- var width = this._renderWidth;
110
- var height = this._renderHeight;
111
- // Background
112
- if (this._backgroundImage) {
113
- this._tempMeasure.copyFromFloats(left, top, width, height);
114
- if (this.isThumbClamped && this.displayThumb) {
115
- if (this.isVertical) {
116
- this._tempMeasure.height += this._effectiveThumbThickness;
117
- }
118
- else {
119
- this._tempMeasure.width += this._effectiveThumbThickness;
120
- }
121
- }
122
- this._backgroundImage._currentMeasure.copyFrom(this._tempMeasure);
123
- this._backgroundImage._draw(context);
124
- }
125
- // Bar
126
- if (this._valueBarImage) {
127
- if (this.isVertical) {
128
- if (this.isThumbClamped && this.displayThumb) {
129
- this._tempMeasure.copyFromFloats(left, top + thumbPosition, width, height - thumbPosition + this._effectiveThumbThickness);
130
- }
131
- else {
132
- this._tempMeasure.copyFromFloats(left, top + thumbPosition, width, height - thumbPosition);
133
- }
134
- }
135
- else {
136
- if (this.isThumbClamped && this.displayThumb) {
137
- this._tempMeasure.copyFromFloats(left, top, thumbPosition + this._effectiveThumbThickness / 2, height);
138
- }
139
- else {
140
- this._tempMeasure.copyFromFloats(left, top, thumbPosition, height);
141
- }
142
- }
143
- this._valueBarImage._currentMeasure.copyFrom(this._tempMeasure);
144
- this._valueBarImage._draw(context);
145
- }
146
- // Thumb
147
- if (this.displayThumb) {
148
- if (this.isVertical) {
149
- this._tempMeasure.copyFromFloats(left - this._effectiveBarOffset, this._currentMeasure.top + thumbPosition, this._currentMeasure.width, this._effectiveThumbThickness);
150
- }
151
- else {
152
- this._tempMeasure.copyFromFloats(this._currentMeasure.left + thumbPosition, this._currentMeasure.top, this._effectiveThumbThickness, this._currentMeasure.height);
153
- }
154
- this._thumbImage._currentMeasure.copyFrom(this._tempMeasure);
155
- this._thumbImage._draw(context);
156
- }
157
- context.restore();
158
- };
159
- /**
160
- * Serializes the current control
161
- * @param serializationObject defined the JSON serialized object
162
- */
163
- ImageBasedSlider.prototype.serialize = function (serializationObject) {
164
- _super.prototype.serialize.call(this, serializationObject);
165
- var backgroundImage = {};
166
- var thumbImage = {};
167
- var valueBarImage = {};
168
- this.backgroundImage.serialize(backgroundImage);
169
- this.thumbImage.serialize(thumbImage);
170
- this.valueBarImage.serialize(valueBarImage);
171
- serializationObject.backgroundImage = backgroundImage;
172
- serializationObject.thumbImage = thumbImage;
173
- serializationObject.valueBarImage = valueBarImage;
174
- };
175
- /**
176
- * @param serializedObject
177
- * @param host
178
- * @hidden
179
- */
180
- ImageBasedSlider.prototype._parseFromContent = function (serializedObject, host) {
181
- _super.prototype._parseFromContent.call(this, serializedObject, host);
182
- this.backgroundImage = Image.Parse(serializedObject.backgroundImage, host);
183
- this.thumbImage = Image.Parse(serializedObject.thumbImage, host);
184
- this.valueBarImage = Image.Parse(serializedObject.valueBarImage, host);
185
- };
186
- __decorate([
187
- serialize()
188
- ], ImageBasedSlider.prototype, "displayThumb", null);
189
- return ImageBasedSlider;
190
- }(BaseSlider));
191
- export { ImageBasedSlider };
192
- RegisterClass("BABYLON.GUI.ImageBasedSlider", ImageBasedSlider);
1
+ import { __decorate, __extends } from "tslib";
2
+ import { BaseSlider } from "./baseSlider";
3
+ import { Measure } from "../../measure";
4
+ import { Image } from "../image";
5
+ import { RegisterClass } from "@babylonjs/core/Misc/typeStore.js";
6
+ import { serialize } from "@babylonjs/core/Misc/decorators.js";
7
+ /**
8
+ * Class used to create slider controls based on images
9
+ */
10
+ var ImageBasedSlider = /** @class */ (function (_super) {
11
+ __extends(ImageBasedSlider, _super);
12
+ /**
13
+ * Creates a new ImageBasedSlider
14
+ * @param name defines the control name
15
+ */
16
+ function ImageBasedSlider(name) {
17
+ var _this = _super.call(this, name) || this;
18
+ _this.name = name;
19
+ _this._tempMeasure = new Measure(0, 0, 0, 0);
20
+ return _this;
21
+ }
22
+ Object.defineProperty(ImageBasedSlider.prototype, "displayThumb", {
23
+ get: function () {
24
+ return this._displayThumb && this.thumbImage != null;
25
+ },
26
+ set: function (value) {
27
+ if (this._displayThumb === value) {
28
+ return;
29
+ }
30
+ this._displayThumb = value;
31
+ this._markAsDirty();
32
+ },
33
+ enumerable: false,
34
+ configurable: true
35
+ });
36
+ Object.defineProperty(ImageBasedSlider.prototype, "backgroundImage", {
37
+ /**
38
+ * Gets or sets the image used to render the background
39
+ */
40
+ get: function () {
41
+ return this._backgroundImage;
42
+ },
43
+ set: function (value) {
44
+ var _this = this;
45
+ if (this._backgroundImage === value) {
46
+ return;
47
+ }
48
+ this._backgroundImage = value;
49
+ if (value && !value.isLoaded) {
50
+ value.onImageLoadedObservable.addOnce(function () { return _this._markAsDirty(); });
51
+ }
52
+ this._markAsDirty();
53
+ },
54
+ enumerable: false,
55
+ configurable: true
56
+ });
57
+ Object.defineProperty(ImageBasedSlider.prototype, "valueBarImage", {
58
+ /**
59
+ * Gets or sets the image used to render the value bar
60
+ */
61
+ get: function () {
62
+ return this._valueBarImage;
63
+ },
64
+ set: function (value) {
65
+ var _this = this;
66
+ if (this._valueBarImage === value) {
67
+ return;
68
+ }
69
+ this._valueBarImage = value;
70
+ if (value && !value.isLoaded) {
71
+ value.onImageLoadedObservable.addOnce(function () { return _this._markAsDirty(); });
72
+ }
73
+ this._markAsDirty();
74
+ },
75
+ enumerable: false,
76
+ configurable: true
77
+ });
78
+ Object.defineProperty(ImageBasedSlider.prototype, "thumbImage", {
79
+ /**
80
+ * Gets or sets the image used to render the thumb
81
+ */
82
+ get: function () {
83
+ return this._thumbImage;
84
+ },
85
+ set: function (value) {
86
+ var _this = this;
87
+ if (this._thumbImage === value) {
88
+ return;
89
+ }
90
+ this._thumbImage = value;
91
+ if (value && !value.isLoaded) {
92
+ value.onImageLoadedObservable.addOnce(function () { return _this._markAsDirty(); });
93
+ }
94
+ this._markAsDirty();
95
+ },
96
+ enumerable: false,
97
+ configurable: true
98
+ });
99
+ ImageBasedSlider.prototype._getTypeName = function () {
100
+ return "ImageBasedSlider";
101
+ };
102
+ ImageBasedSlider.prototype._draw = function (context) {
103
+ context.save();
104
+ this._applyStates(context);
105
+ this._prepareRenderingData("rectangle");
106
+ var thumbPosition = this._getThumbPosition();
107
+ var left = this._renderLeft;
108
+ var top = this._renderTop;
109
+ var width = this._renderWidth;
110
+ var height = this._renderHeight;
111
+ // Background
112
+ if (this._backgroundImage) {
113
+ this._tempMeasure.copyFromFloats(left, top, width, height);
114
+ if (this.isThumbClamped && this.displayThumb) {
115
+ if (this.isVertical) {
116
+ this._tempMeasure.height += this._effectiveThumbThickness;
117
+ }
118
+ else {
119
+ this._tempMeasure.width += this._effectiveThumbThickness;
120
+ }
121
+ }
122
+ this._backgroundImage._currentMeasure.copyFrom(this._tempMeasure);
123
+ this._backgroundImage._draw(context);
124
+ }
125
+ // Bar
126
+ if (this._valueBarImage) {
127
+ if (this.isVertical) {
128
+ if (this.isThumbClamped && this.displayThumb) {
129
+ this._tempMeasure.copyFromFloats(left, top + thumbPosition, width, height - thumbPosition + this._effectiveThumbThickness);
130
+ }
131
+ else {
132
+ this._tempMeasure.copyFromFloats(left, top + thumbPosition, width, height - thumbPosition);
133
+ }
134
+ }
135
+ else {
136
+ if (this.isThumbClamped && this.displayThumb) {
137
+ this._tempMeasure.copyFromFloats(left, top, thumbPosition + this._effectiveThumbThickness / 2, height);
138
+ }
139
+ else {
140
+ this._tempMeasure.copyFromFloats(left, top, thumbPosition, height);
141
+ }
142
+ }
143
+ this._valueBarImage._currentMeasure.copyFrom(this._tempMeasure);
144
+ this._valueBarImage._draw(context);
145
+ }
146
+ // Thumb
147
+ if (this.displayThumb) {
148
+ if (this.isVertical) {
149
+ this._tempMeasure.copyFromFloats(left - this._effectiveBarOffset, this._currentMeasure.top + thumbPosition, this._currentMeasure.width, this._effectiveThumbThickness);
150
+ }
151
+ else {
152
+ this._tempMeasure.copyFromFloats(this._currentMeasure.left + thumbPosition, this._currentMeasure.top, this._effectiveThumbThickness, this._currentMeasure.height);
153
+ }
154
+ this._thumbImage._currentMeasure.copyFrom(this._tempMeasure);
155
+ this._thumbImage._draw(context);
156
+ }
157
+ context.restore();
158
+ };
159
+ /**
160
+ * Serializes the current control
161
+ * @param serializationObject defined the JSON serialized object
162
+ */
163
+ ImageBasedSlider.prototype.serialize = function (serializationObject) {
164
+ _super.prototype.serialize.call(this, serializationObject);
165
+ var backgroundImage = {};
166
+ var thumbImage = {};
167
+ var valueBarImage = {};
168
+ this.backgroundImage.serialize(backgroundImage);
169
+ this.thumbImage.serialize(thumbImage);
170
+ this.valueBarImage.serialize(valueBarImage);
171
+ serializationObject.backgroundImage = backgroundImage;
172
+ serializationObject.thumbImage = thumbImage;
173
+ serializationObject.valueBarImage = valueBarImage;
174
+ };
175
+ /**
176
+ * @param serializedObject
177
+ * @param host
178
+ * @hidden
179
+ */
180
+ ImageBasedSlider.prototype._parseFromContent = function (serializedObject, host) {
181
+ _super.prototype._parseFromContent.call(this, serializedObject, host);
182
+ this.backgroundImage = Image.Parse(serializedObject.backgroundImage, host);
183
+ this.thumbImage = Image.Parse(serializedObject.thumbImage, host);
184
+ this.valueBarImage = Image.Parse(serializedObject.valueBarImage, host);
185
+ };
186
+ __decorate([
187
+ serialize()
188
+ ], ImageBasedSlider.prototype, "displayThumb", null);
189
+ return ImageBasedSlider;
190
+ }(BaseSlider));
191
+ export { ImageBasedSlider };
192
+ RegisterClass("BABYLON.GUI.ImageBasedSlider", ImageBasedSlider);
193
193
  //# sourceMappingURL=imageBasedSlider.js.map
@@ -1,65 +1,65 @@
1
- import { Vector2 } from "@babylonjs/core/Maths/math.vector.js";
2
- import { BaseSlider } from "./baseSlider";
3
- import { Control } from "../control";
4
- import { Image } from "../image";
5
- import { PointerInfoBase } from "@babylonjs/core/Events/pointerEvents.js";
6
- import { ICanvasRenderingContext } from "@babylonjs/core/Engines/ICanvas.js";
7
- /**
8
- * Class used to create slider controls
9
- */
10
- export declare class ImageScrollBar extends BaseSlider {
11
- name?: string | undefined;
12
- private _backgroundBaseImage;
13
- private _backgroundImage;
14
- private _thumbImage;
15
- private _thumbBaseImage;
16
- private _thumbLength;
17
- private _thumbHeight;
18
- private _barImageHeight;
19
- private _tempMeasure;
20
- /** Number of 90° rotation to apply on the images when in vertical mode */
21
- num90RotationInVerticalMode: number;
22
- /**
23
- * Gets or sets the image used to render the background for horizontal bar
24
- */
25
- get backgroundImage(): Image;
26
- set backgroundImage(value: Image);
27
- /**
28
- * Gets or sets the image used to render the thumb
29
- */
30
- get thumbImage(): Image;
31
- set thumbImage(value: Image);
32
- /**
33
- * Gets or sets the length of the thumb
34
- */
35
- get thumbLength(): number;
36
- set thumbLength(value: number);
37
- /**
38
- * Gets or sets the height of the thumb
39
- */
40
- get thumbHeight(): number;
41
- set thumbHeight(value: number);
42
- /**
43
- * Gets or sets the height of the bar image
44
- */
45
- get barImageHeight(): number;
46
- set barImageHeight(value: number);
47
- /**
48
- * Creates a new ImageScrollBar
49
- * @param name defines the control name
50
- */
51
- constructor(name?: string | undefined);
52
- protected _getTypeName(): string;
53
- protected _getThumbThickness(): number;
54
- _draw(context: ICanvasRenderingContext): void;
55
- private _first;
56
- private _originX;
57
- private _originY;
58
- /**
59
- * @param x
60
- * @param y
61
- * @hidden
62
- */
63
- protected _updateValueFromPointer(x: number, y: number): void;
64
- _onPointerDown(target: Control, coordinates: Vector2, pointerId: number, buttonIndex: number, pi: PointerInfoBase): boolean;
65
- }
1
+ import { Vector2 } from "@babylonjs/core/Maths/math.vector.js";
2
+ import { BaseSlider } from "./baseSlider";
3
+ import { Control } from "../control";
4
+ import { Image } from "../image";
5
+ import { PointerInfoBase } from "@babylonjs/core/Events/pointerEvents.js";
6
+ import { ICanvasRenderingContext } from "@babylonjs/core/Engines/ICanvas.js";
7
+ /**
8
+ * Class used to create slider controls
9
+ */
10
+ export declare class ImageScrollBar extends BaseSlider {
11
+ name?: string | undefined;
12
+ private _backgroundBaseImage;
13
+ private _backgroundImage;
14
+ private _thumbImage;
15
+ private _thumbBaseImage;
16
+ private _thumbLength;
17
+ private _thumbHeight;
18
+ private _barImageHeight;
19
+ private _tempMeasure;
20
+ /** Number of 90° rotation to apply on the images when in vertical mode */
21
+ num90RotationInVerticalMode: number;
22
+ /**
23
+ * Gets or sets the image used to render the background for horizontal bar
24
+ */
25
+ get backgroundImage(): Image;
26
+ set backgroundImage(value: Image);
27
+ /**
28
+ * Gets or sets the image used to render the thumb
29
+ */
30
+ get thumbImage(): Image;
31
+ set thumbImage(value: Image);
32
+ /**
33
+ * Gets or sets the length of the thumb
34
+ */
35
+ get thumbLength(): number;
36
+ set thumbLength(value: number);
37
+ /**
38
+ * Gets or sets the height of the thumb
39
+ */
40
+ get thumbHeight(): number;
41
+ set thumbHeight(value: number);
42
+ /**
43
+ * Gets or sets the height of the bar image
44
+ */
45
+ get barImageHeight(): number;
46
+ set barImageHeight(value: number);
47
+ /**
48
+ * Creates a new ImageScrollBar
49
+ * @param name defines the control name
50
+ */
51
+ constructor(name?: string | undefined);
52
+ protected _getTypeName(): string;
53
+ protected _getThumbThickness(): number;
54
+ _draw(context: ICanvasRenderingContext): void;
55
+ private _first;
56
+ private _originX;
57
+ private _originY;
58
+ /**
59
+ * @param x
60
+ * @param y
61
+ * @hidden
62
+ */
63
+ protected _updateValueFromPointer(x: number, y: number): void;
64
+ _onPointerDown(target: Control, coordinates: Vector2, pointerId: number, buttonIndex: number, pi: PointerInfoBase): boolean;
65
+ }