@babylonjs/gui 5.0.0-rc.6 → 5.0.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 (277) hide show
  1. package/2D/adtInstrumentation.d.ts +52 -52
  2. package/2D/adtInstrumentation.js +126 -126
  3. package/2D/adtInstrumentation.js.map +1 -1
  4. package/2D/advancedDynamicTexture.d.ts +449 -448
  5. package/2D/advancedDynamicTexture.js +1318 -1318
  6. package/2D/advancedDynamicTexture.js.map +1 -1
  7. package/2D/controls/button.d.ts +135 -135
  8. package/2D/controls/button.js +276 -276
  9. package/2D/controls/button.js.map +1 -1
  10. package/2D/controls/checkbox.d.ts +59 -59
  11. package/2D/controls/checkbox.js +188 -188
  12. package/2D/controls/checkbox.js.map +1 -1
  13. package/2D/controls/colorpicker.d.ts +103 -103
  14. package/2D/controls/colorpicker.js +1417 -1417
  15. package/2D/controls/colorpicker.js.map +1 -1
  16. package/2D/controls/container.d.ts +175 -175
  17. package/2D/controls/container.js +570 -570
  18. package/2D/controls/container.js.map +1 -1
  19. package/2D/controls/control.d.ts +866 -866
  20. package/2D/controls/control.js +2433 -2433
  21. package/2D/controls/control.js.map +1 -1
  22. package/2D/controls/displayGrid.d.ts +53 -53
  23. package/2D/controls/displayGrid.js +245 -245
  24. package/2D/controls/displayGrid.js.map +1 -1
  25. package/2D/controls/ellipse.d.ts +21 -21
  26. package/2D/controls/ellipse.js +85 -85
  27. package/2D/controls/ellipse.js.map +1 -1
  28. package/2D/controls/focusableButton.d.ts +59 -59
  29. package/2D/controls/focusableButton.js +99 -99
  30. package/2D/controls/focusableButton.js.map +1 -1
  31. package/2D/controls/focusableControl.d.ts +34 -34
  32. package/2D/controls/focusableControl.js +1 -1
  33. package/2D/controls/focusableControl.js.map +1 -1
  34. package/2D/controls/grid.d.ts +139 -139
  35. package/2D/controls/grid.js +529 -529
  36. package/2D/controls/grid.js.map +1 -1
  37. package/2D/controls/image.d.ts +204 -204
  38. package/2D/controls/image.js +887 -887
  39. package/2D/controls/image.js.map +1 -1
  40. package/2D/controls/index.d.ts +29 -29
  41. package/2D/controls/index.js +29 -29
  42. package/2D/controls/inputPassword.d.ts +9 -8
  43. package/2D/controls/inputPassword.js +28 -25
  44. package/2D/controls/inputPassword.js.map +1 -1
  45. package/2D/controls/inputText.d.ts +201 -201
  46. package/2D/controls/inputText.js +1119 -1119
  47. package/2D/controls/inputText.js.map +1 -1
  48. package/2D/controls/line.d.ts +66 -66
  49. package/2D/controls/line.js +271 -271
  50. package/2D/controls/line.js.map +1 -1
  51. package/2D/controls/multiLine.d.ts +75 -75
  52. package/2D/controls/multiLine.js +262 -262
  53. package/2D/controls/multiLine.js.map +1 -1
  54. package/2D/controls/radioButton.d.ts +49 -49
  55. package/2D/controls/radioButton.js +205 -205
  56. package/2D/controls/radioButton.js.map +1 -1
  57. package/2D/controls/rectangle.d.ts +29 -29
  58. package/2D/controls/rectangle.js +150 -150
  59. package/2D/controls/rectangle.js.map +1 -1
  60. package/2D/controls/scrollViewers/scrollViewer.d.ts +182 -182
  61. package/2D/controls/scrollViewers/scrollViewer.js +677 -677
  62. package/2D/controls/scrollViewers/scrollViewer.js.map +1 -1
  63. package/2D/controls/scrollViewers/scrollViewerWindow.d.ts +57 -57
  64. package/2D/controls/scrollViewers/scrollViewerWindow.js +278 -278
  65. package/2D/controls/scrollViewers/scrollViewerWindow.js.map +1 -1
  66. package/2D/controls/selector.d.ts +263 -263
  67. package/2D/controls/selector.js +692 -692
  68. package/2D/controls/sliders/baseSlider.d.ts +82 -82
  69. package/2D/controls/sliders/baseSlider.js +347 -347
  70. package/2D/controls/sliders/baseSlider.js.map +1 -1
  71. package/2D/controls/sliders/imageBasedSlider.d.ts +49 -49
  72. package/2D/controls/sliders/imageBasedSlider.js +192 -192
  73. package/2D/controls/sliders/imageBasedSlider.js.map +1 -1
  74. package/2D/controls/sliders/imageScrollBar.d.ts +65 -65
  75. package/2D/controls/sliders/imageScrollBar.js +263 -263
  76. package/2D/controls/sliders/imageScrollBar.js.map +1 -1
  77. package/2D/controls/sliders/scrollBar.d.ts +38 -38
  78. package/2D/controls/sliders/scrollBar.js +143 -143
  79. package/2D/controls/sliders/scrollBar.js.map +1 -1
  80. package/2D/controls/sliders/slider.d.ts +35 -35
  81. package/2D/controls/sliders/slider.js +271 -271
  82. package/2D/controls/sliders/slider.js.map +1 -1
  83. package/2D/controls/stackPanel.d.ts +64 -64
  84. package/2D/controls/stackPanel.js +246 -246
  85. package/2D/controls/stackPanel.js.map +1 -1
  86. package/2D/controls/statics.d.ts +6 -6
  87. package/2D/controls/statics.js +49 -49
  88. package/2D/controls/textBlock.d.ts +175 -175
  89. package/2D/controls/textBlock.js +603 -603
  90. package/2D/controls/textBlock.js.map +1 -1
  91. package/2D/controls/textWrapper.d.ts +13 -13
  92. package/2D/controls/textWrapper.js +101 -101
  93. package/2D/controls/toggleButton.d.ts +117 -117
  94. package/2D/controls/toggleButton.js +268 -268
  95. package/2D/controls/toggleButton.js.map +1 -1
  96. package/2D/controls/virtualKeyboard.d.ts +96 -96
  97. package/2D/controls/virtualKeyboard.js +256 -256
  98. package/2D/controls/virtualKeyboard.js.map +1 -1
  99. package/2D/index.d.ts +9 -9
  100. package/2D/index.js +10 -9
  101. package/2D/index.js.map +1 -1
  102. package/2D/math2D.d.ts +117 -117
  103. package/2D/math2D.js +221 -221
  104. package/2D/math2D.js.map +1 -1
  105. package/2D/measure.d.ts +77 -77
  106. package/2D/measure.js +139 -139
  107. package/2D/measure.js.map +1 -1
  108. package/2D/multiLinePoint.d.ts +47 -47
  109. package/2D/multiLinePoint.js +127 -127
  110. package/2D/multiLinePoint.js.map +1 -1
  111. package/2D/style.d.ts +46 -46
  112. package/2D/style.js +97 -97
  113. package/2D/style.js.map +1 -1
  114. package/2D/valueAndUnit.d.ts +89 -89
  115. package/2D/valueAndUnit.js +226 -226
  116. package/2D/valueAndUnit.js.map +1 -1
  117. package/2D/xmlLoader.d.ts +60 -60
  118. package/2D/xmlLoader.js +348 -348
  119. package/2D/xmlLoader.js.map +1 -1
  120. package/3D/behaviors/defaultBehavior.d.ts +73 -73
  121. package/3D/behaviors/defaultBehavior.js +121 -121
  122. package/3D/behaviors/defaultBehavior.js.map +1 -1
  123. package/3D/controls/abstractButton3D.d.ts +15 -15
  124. package/3D/controls/abstractButton3D.js +25 -25
  125. package/3D/controls/abstractButton3D.js.map +1 -1
  126. package/3D/controls/button3D.d.ts +30 -30
  127. package/3D/controls/button3D.js +93 -93
  128. package/3D/controls/button3D.js.map +1 -1
  129. package/3D/controls/container3D.d.ts +72 -72
  130. package/3D/controls/container3D.js +139 -139
  131. package/3D/controls/container3D.js.map +1 -1
  132. package/3D/controls/contentDisplay3D.d.ts +30 -30
  133. package/3D/controls/contentDisplay3D.js +79 -79
  134. package/3D/controls/contentDisplay3D.js.map +1 -1
  135. package/3D/controls/control3D.d.ts +201 -201
  136. package/3D/controls/control3D.js +445 -445
  137. package/3D/controls/control3D.js.map +1 -1
  138. package/3D/controls/cylinderPanel.d.ts +17 -17
  139. package/3D/controls/cylinderPanel.js +66 -66
  140. package/3D/controls/cylinderPanel.js.map +1 -1
  141. package/3D/controls/handMenu.d.ts +28 -28
  142. package/3D/controls/handMenu.js +47 -47
  143. package/3D/controls/handMenu.js.map +1 -1
  144. package/3D/controls/holographicBackplate.d.ts +49 -49
  145. package/3D/controls/holographicBackplate.js +120 -120
  146. package/3D/controls/holographicBackplate.js.map +1 -1
  147. package/3D/controls/holographicButton.d.ts +84 -84
  148. package/3D/controls/holographicButton.js +339 -339
  149. package/3D/controls/holographicButton.js.map +1 -1
  150. package/3D/controls/holographicSlate.d.ts +131 -131
  151. package/3D/controls/holographicSlate.js +431 -431
  152. package/3D/controls/holographicSlate.js.map +1 -1
  153. package/3D/controls/index.d.ts +21 -21
  154. package/3D/controls/index.js +21 -21
  155. package/3D/controls/meshButton3D.d.ts +21 -21
  156. package/3D/controls/meshButton3D.js +62 -62
  157. package/3D/controls/meshButton3D.js.map +1 -1
  158. package/3D/controls/nearMenu.d.ts +44 -44
  159. package/3D/controls/nearMenu.js +114 -114
  160. package/3D/controls/nearMenu.js.map +1 -1
  161. package/3D/controls/planePanel.d.ts +9 -9
  162. package/3D/controls/planePanel.js +36 -36
  163. package/3D/controls/planePanel.js.map +1 -1
  164. package/3D/controls/scatterPanel.d.ts +18 -18
  165. package/3D/controls/scatterPanel.js +108 -108
  166. package/3D/controls/scatterPanel.js.map +1 -1
  167. package/3D/controls/slider3D.d.ts +81 -81
  168. package/3D/controls/slider3D.js +268 -268
  169. package/3D/controls/slider3D.js.map +1 -1
  170. package/3D/controls/spherePanel.d.ts +17 -17
  171. package/3D/controls/spherePanel.js +67 -67
  172. package/3D/controls/spherePanel.js.map +1 -1
  173. package/3D/controls/stackPanel3D.d.ts +22 -22
  174. package/3D/controls/stackPanel3D.js +107 -107
  175. package/3D/controls/touchButton3D.d.ts +80 -80
  176. package/3D/controls/touchButton3D.js +233 -233
  177. package/3D/controls/touchButton3D.js.map +1 -1
  178. package/3D/controls/touchHolographicButton.d.ts +110 -110
  179. package/3D/controls/touchHolographicButton.js +445 -445
  180. package/3D/controls/touchHolographicButton.js.map +1 -1
  181. package/3D/controls/touchHolographicMenu.d.ts +61 -61
  182. package/3D/controls/touchHolographicMenu.js +149 -149
  183. package/3D/controls/touchHolographicMenu.js.map +1 -1
  184. package/3D/controls/touchMeshButton3D.d.ts +21 -21
  185. package/3D/controls/touchMeshButton3D.js +62 -62
  186. package/3D/controls/touchMeshButton3D.js.map +1 -1
  187. package/3D/controls/volumeBasedPanel.d.ts +53 -53
  188. package/3D/controls/volumeBasedPanel.js +174 -174
  189. package/3D/controls/volumeBasedPanel.js.map +1 -1
  190. package/3D/gizmos/gizmoHandle.d.ts +108 -108
  191. package/3D/gizmos/gizmoHandle.js +209 -209
  192. package/3D/gizmos/gizmoHandle.js.map +1 -1
  193. package/3D/gizmos/index.d.ts +2 -2
  194. package/3D/gizmos/index.js +2 -2
  195. package/3D/gizmos/slateGizmo.d.ts +57 -57
  196. package/3D/gizmos/slateGizmo.js +369 -369
  197. package/3D/gizmos/slateGizmo.js.map +1 -1
  198. package/3D/gui3DManager.d.ts +94 -94
  199. package/3D/gui3DManager.js +257 -257
  200. package/3D/gui3DManager.js.map +1 -1
  201. package/3D/index.d.ts +5 -5
  202. package/3D/index.js +6 -5
  203. package/3D/index.js.map +1 -1
  204. package/3D/materials/fluent/fluentMaterial.d.ts +91 -90
  205. package/3D/materials/fluent/fluentMaterial.js +292 -292
  206. package/3D/materials/fluent/fluentMaterial.js.map +1 -1
  207. package/3D/materials/fluent/index.d.ts +1 -1
  208. package/3D/materials/fluent/index.js +1 -1
  209. package/3D/materials/fluent/shaders/fluent.fragment.d.ts +5 -5
  210. package/3D/materials/fluent/shaders/fluent.fragment.js +8 -8
  211. package/3D/materials/fluent/shaders/fluent.vertex.d.ts +5 -5
  212. package/3D/materials/fluent/shaders/fluent.vertex.js +8 -8
  213. package/3D/materials/fluentBackplate/fluentBackplateMaterial.d.ts +155 -154
  214. package/3D/materials/fluentBackplate/fluentBackplateMaterial.js +469 -469
  215. package/3D/materials/fluentBackplate/fluentBackplateMaterial.js.map +1 -1
  216. package/3D/materials/fluentBackplate/index.d.ts +1 -1
  217. package/3D/materials/fluentBackplate/index.js +1 -1
  218. package/3D/materials/fluentBackplate/shaders/fluentBackplate.fragment.d.ts +5 -5
  219. package/3D/materials/fluentBackplate/shaders/fluentBackplate.fragment.js +8 -8
  220. package/3D/materials/fluentBackplate/shaders/fluentBackplate.vertex.d.ts +5 -5
  221. package/3D/materials/fluentBackplate/shaders/fluentBackplate.vertex.js +8 -8
  222. package/3D/materials/fluentButton/fluentButtonMaterial.d.ts +190 -189
  223. package/3D/materials/fluentButton/fluentButtonMaterial.js +539 -539
  224. package/3D/materials/fluentButton/fluentButtonMaterial.js.map +1 -1
  225. package/3D/materials/fluentButton/index.d.ts +1 -1
  226. package/3D/materials/fluentButton/index.js +1 -1
  227. package/3D/materials/fluentButton/shaders/fluentButton.fragment.d.ts +5 -5
  228. package/3D/materials/fluentButton/shaders/fluentButton.fragment.js +8 -8
  229. package/3D/materials/fluentButton/shaders/fluentButton.vertex.d.ts +5 -5
  230. package/3D/materials/fluentButton/shaders/fluentButton.vertex.js +8 -8
  231. package/3D/materials/fluentMaterial.d.ts +4 -4
  232. package/3D/materials/fluentMaterial.js +4 -4
  233. package/3D/materials/handle/handleMaterial.d.ts +68 -68
  234. package/3D/materials/handle/handleMaterial.js +126 -126
  235. package/3D/materials/handle/handleMaterial.js.map +1 -1
  236. package/3D/materials/handle/index.d.ts +1 -1
  237. package/3D/materials/handle/index.js +1 -1
  238. package/3D/materials/handle/shaders/handle.fragment.d.ts +5 -5
  239. package/3D/materials/handle/shaders/handle.fragment.js +8 -8
  240. package/3D/materials/handle/shaders/handle.vertex.d.ts +5 -5
  241. package/3D/materials/handle/shaders/handle.vertex.js +8 -8
  242. package/3D/materials/index.d.ts +5 -5
  243. package/3D/materials/index.js +6 -5
  244. package/3D/materials/index.js.map +1 -1
  245. package/3D/materials/mrdl/index.d.ts +3 -3
  246. package/3D/materials/mrdl/index.js +3 -3
  247. package/3D/materials/mrdl/mrdlBackplateMaterial.d.ts +148 -147
  248. package/3D/materials/mrdl/mrdlBackplateMaterial.js +436 -436
  249. package/3D/materials/mrdl/mrdlBackplateMaterial.js.map +1 -1
  250. package/3D/materials/mrdl/mrdlSliderBarMaterial.d.ts +334 -333
  251. package/3D/materials/mrdl/mrdlSliderBarMaterial.js +851 -851
  252. package/3D/materials/mrdl/mrdlSliderBarMaterial.js.map +1 -1
  253. package/3D/materials/mrdl/mrdlSliderThumbMaterial.d.ts +334 -333
  254. package/3D/materials/mrdl/mrdlSliderThumbMaterial.js +851 -851
  255. package/3D/materials/mrdl/mrdlSliderThumbMaterial.js.map +1 -1
  256. package/3D/materials/mrdl/shaders/mrdlBackplate.fragment.d.ts +5 -5
  257. package/3D/materials/mrdl/shaders/mrdlBackplate.fragment.js +8 -8
  258. package/3D/materials/mrdl/shaders/mrdlBackplate.vertex.d.ts +5 -5
  259. package/3D/materials/mrdl/shaders/mrdlBackplate.vertex.js +8 -8
  260. package/3D/materials/mrdl/shaders/mrdlSliderBar.fragment.d.ts +5 -5
  261. package/3D/materials/mrdl/shaders/mrdlSliderBar.fragment.js +8 -8
  262. package/3D/materials/mrdl/shaders/mrdlSliderBar.vertex.d.ts +5 -5
  263. package/3D/materials/mrdl/shaders/mrdlSliderBar.vertex.js +8 -8
  264. package/3D/materials/mrdl/shaders/mrdlSliderThumb.fragment.d.ts +5 -5
  265. package/3D/materials/mrdl/shaders/mrdlSliderThumb.fragment.js +8 -8
  266. package/3D/materials/mrdl/shaders/mrdlSliderThumb.vertex.d.ts +5 -5
  267. package/3D/materials/mrdl/shaders/mrdlSliderThumb.vertex.js +8 -8
  268. package/3D/vector3WithInfo.d.ts +16 -16
  269. package/3D/vector3WithInfo.js +23 -23
  270. package/index.d.ts +2 -2
  271. package/index.js +3 -2
  272. package/index.js.map +1 -1
  273. package/legacy/legacy.d.ts +1 -1
  274. package/legacy/legacy.js +14 -13
  275. package/legacy/legacy.js.map +1 -1
  276. package/license.md +71 -0
  277. package/package.json +24 -5
@@ -1 +1 @@
1
- {"version":3,"file":"baseSlider.js","sourceRoot":"","sources":["../../../../../../../lts/gui/generated/2D/controls/sliders/baseSlider.ts"],"names":[],"mappings":"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","sourcesContent":["import { Observable } from \"core/Misc/observable\";\r\nimport { Vector2 } from \"core/Maths/math.vector\";\r\n\r\nimport { Control } from \"../control\";\r\nimport { ValueAndUnit } from \"../../valueAndUnit\";\r\nimport { PointerInfoBase } from \"core/Events/pointerEvents\";\r\nimport { serialize } from \"core/Misc/decorators\";\r\n\r\n/**\r\n * Class used to create slider controls\r\n */\r\nexport class BaseSlider extends Control {\r\n protected _thumbWidth = new ValueAndUnit(20, ValueAndUnit.UNITMODE_PIXEL, false);\r\n private _minimum = 0;\r\n private _maximum = 100;\r\n private _value = 50;\r\n private _isVertical = false;\r\n protected _barOffset = new ValueAndUnit(5, ValueAndUnit.UNITMODE_PIXEL, false);\r\n private _isThumbClamped = false;\r\n protected _displayThumb = true;\r\n private _step = 0;\r\n\r\n private _lastPointerDownId = -1;\r\n\r\n // Shared rendering info\r\n protected _effectiveBarOffset = 0;\r\n protected _renderLeft: number;\r\n protected _renderTop: number;\r\n protected _renderWidth: number;\r\n protected _renderHeight: number;\r\n protected _backgroundBoxLength: number;\r\n protected _backgroundBoxThickness: number;\r\n protected _effectiveThumbThickness: number;\r\n\r\n /** Observable raised when the slider value changes */\r\n public onValueChangedObservable = new Observable<number>();\r\n\r\n /** Gets or sets a boolean indicating if the thumb must be rendered */\r\n @serialize()\r\n public get displayThumb(): boolean {\r\n return this._displayThumb;\r\n }\r\n\r\n public set displayThumb(value: boolean) {\r\n if (this._displayThumb === value) {\r\n return;\r\n }\r\n\r\n this._displayThumb = value;\r\n this._markAsDirty();\r\n }\r\n\r\n /** Gets or sets a step to apply to values (0 by default) */\r\n @serialize()\r\n public get step(): number {\r\n return this._step;\r\n }\r\n\r\n public set step(value: number) {\r\n if (this._step === value) {\r\n return;\r\n }\r\n\r\n this._step = value;\r\n this._markAsDirty();\r\n }\r\n\r\n /** Gets or sets main bar offset (ie. the margin applied to the value bar) */\r\n @serialize()\r\n public get barOffset(): string | number {\r\n return this._barOffset.toString(this._host);\r\n }\r\n\r\n /** Gets main bar offset in pixels*/\r\n public get barOffsetInPixels(): number {\r\n return this._barOffset.getValueInPixel(this._host, this._cachedParentMeasure.width);\r\n }\r\n\r\n public set barOffset(value: string | number) {\r\n if (this._barOffset.toString(this._host) === value) {\r\n return;\r\n }\r\n\r\n if (this._barOffset.fromString(value)) {\r\n this._markAsDirty();\r\n }\r\n }\r\n\r\n /** Gets or sets thumb width */\r\n @serialize()\r\n public get thumbWidth(): string | number {\r\n return this._thumbWidth.toString(this._host);\r\n }\r\n\r\n /** Gets thumb width in pixels */\r\n public get thumbWidthInPixels(): number {\r\n return this._thumbWidth.getValueInPixel(this._host, this._cachedParentMeasure.width);\r\n }\r\n\r\n public set thumbWidth(value: string | number) {\r\n if (this._thumbWidth.toString(this._host) === value) {\r\n return;\r\n }\r\n\r\n if (this._thumbWidth.fromString(value)) {\r\n this._markAsDirty();\r\n }\r\n }\r\n\r\n /** Gets or sets minimum value */\r\n @serialize()\r\n public get minimum(): number {\r\n return this._minimum;\r\n }\r\n\r\n public set minimum(value: number) {\r\n if (this._minimum === value) {\r\n return;\r\n }\r\n\r\n this._minimum = value;\r\n this._markAsDirty();\r\n\r\n this.value = Math.max(Math.min(this.value, this._maximum), this._minimum);\r\n }\r\n\r\n /** Gets or sets maximum value */\r\n @serialize()\r\n public get maximum(): number {\r\n return this._maximum;\r\n }\r\n\r\n public set maximum(value: number) {\r\n if (this._maximum === value) {\r\n return;\r\n }\r\n\r\n this._maximum = value;\r\n this._markAsDirty();\r\n\r\n this.value = Math.max(Math.min(this.value, this._maximum), this._minimum);\r\n }\r\n\r\n /** Gets or sets current value */\r\n @serialize()\r\n public get value(): number {\r\n return this._value;\r\n }\r\n\r\n public set value(value: number) {\r\n value = Math.max(Math.min(value, this._maximum), this._minimum);\r\n\r\n if (this._value === value) {\r\n return;\r\n }\r\n\r\n this._value = value;\r\n this._markAsDirty();\r\n this.onValueChangedObservable.notifyObservers(this._value);\r\n }\r\n\r\n /**Gets or sets a boolean indicating if the slider should be vertical or horizontal */\r\n @serialize()\r\n public get isVertical(): boolean {\r\n return this._isVertical;\r\n }\r\n\r\n public set isVertical(value: boolean) {\r\n if (this._isVertical === value) {\r\n return;\r\n }\r\n\r\n this._isVertical = value;\r\n this._markAsDirty();\r\n }\r\n\r\n /** Gets or sets a value indicating if the thumb can go over main bar extends */\r\n @serialize()\r\n public get isThumbClamped(): boolean {\r\n return this._isThumbClamped;\r\n }\r\n\r\n public set isThumbClamped(value: boolean) {\r\n if (this._isThumbClamped === value) {\r\n return;\r\n }\r\n\r\n this._isThumbClamped = value;\r\n this._markAsDirty();\r\n }\r\n\r\n /**\r\n * Creates a new BaseSlider\r\n * @param name defines the control name\r\n */\r\n constructor(public name?: string) {\r\n super(name);\r\n\r\n this.isPointerBlocker = true;\r\n }\r\n\r\n protected _getTypeName(): string {\r\n return \"BaseSlider\";\r\n }\r\n\r\n protected _getThumbPosition() {\r\n if (this.isVertical) {\r\n return ((this.maximum - this.value) / (this.maximum - this.minimum)) * this._backgroundBoxLength;\r\n }\r\n\r\n return ((this.value - this.minimum) / (this.maximum - this.minimum)) * this._backgroundBoxLength;\r\n }\r\n\r\n protected _getThumbThickness(type: string): number {\r\n let thumbThickness = 0;\r\n switch (type) {\r\n case \"circle\":\r\n if (this._thumbWidth.isPixel) {\r\n thumbThickness = Math.max(this._thumbWidth.getValue(this._host), this._backgroundBoxThickness);\r\n } else {\r\n thumbThickness = this._backgroundBoxThickness * this._thumbWidth.getValue(this._host);\r\n }\r\n break;\r\n case \"rectangle\":\r\n if (this._thumbWidth.isPixel) {\r\n thumbThickness = Math.min(this._thumbWidth.getValue(this._host), this._backgroundBoxThickness);\r\n } else {\r\n thumbThickness = this._backgroundBoxThickness * this._thumbWidth.getValue(this._host);\r\n }\r\n }\r\n return thumbThickness;\r\n }\r\n\r\n protected _prepareRenderingData(type: string) {\r\n // Main bar\r\n this._effectiveBarOffset = 0;\r\n this._renderLeft = this._currentMeasure.left;\r\n this._renderTop = this._currentMeasure.top;\r\n this._renderWidth = this._currentMeasure.width;\r\n this._renderHeight = this._currentMeasure.height;\r\n\r\n this._backgroundBoxLength = Math.max(this._currentMeasure.width, this._currentMeasure.height);\r\n this._backgroundBoxThickness = Math.min(this._currentMeasure.width, this._currentMeasure.height);\r\n this._effectiveThumbThickness = this._getThumbThickness(type);\r\n\r\n if (this.displayThumb) {\r\n this._backgroundBoxLength -= this._effectiveThumbThickness;\r\n }\r\n //throw error when height is less than width for vertical slider\r\n if (this.isVertical && this._currentMeasure.height < this._currentMeasure.width) {\r\n console.error(\"Height should be greater than width\");\r\n return;\r\n }\r\n if (this._barOffset.isPixel) {\r\n this._effectiveBarOffset = Math.min(this._barOffset.getValue(this._host), this._backgroundBoxThickness);\r\n } else {\r\n this._effectiveBarOffset = this._backgroundBoxThickness * this._barOffset.getValue(this._host);\r\n }\r\n\r\n this._backgroundBoxThickness -= this._effectiveBarOffset * 2;\r\n\r\n if (this.isVertical) {\r\n this._renderLeft += this._effectiveBarOffset;\r\n if (!this.isThumbClamped && this.displayThumb) {\r\n this._renderTop += this._effectiveThumbThickness / 2;\r\n }\r\n\r\n this._renderHeight = this._backgroundBoxLength;\r\n this._renderWidth = this._backgroundBoxThickness;\r\n } else {\r\n this._renderTop += this._effectiveBarOffset;\r\n if (!this.isThumbClamped && this.displayThumb) {\r\n this._renderLeft += this._effectiveThumbThickness / 2;\r\n }\r\n this._renderHeight = this._backgroundBoxThickness;\r\n this._renderWidth = this._backgroundBoxLength;\r\n }\r\n }\r\n\r\n // Events\r\n private _pointerIsDown = false;\r\n\r\n /**\r\n * @param x\r\n * @param y\r\n * @hidden\r\n */\r\n protected _updateValueFromPointer(x: number, y: number): void {\r\n if (this.rotation != 0) {\r\n this._invertTransformMatrix.transformCoordinates(x, y, this._transformedPosition);\r\n x = this._transformedPosition.x;\r\n y = this._transformedPosition.y;\r\n }\r\n\r\n let value: number;\r\n if (this._isVertical) {\r\n value = this._minimum + (1 - (y - this._currentMeasure.top) / this._currentMeasure.height) * (this._maximum - this._minimum);\r\n } else {\r\n value = this._minimum + ((x - this._currentMeasure.left) / this._currentMeasure.width) * (this._maximum - this._minimum);\r\n }\r\n this.value = this._step ? Math.round(value / this._step) * this._step : value;\r\n }\r\n\r\n public _onPointerDown(target: Control, coordinates: Vector2, pointerId: number, buttonIndex: number, pi: PointerInfoBase): boolean {\r\n if (!super._onPointerDown(target, coordinates, pointerId, buttonIndex, pi)) {\r\n return false;\r\n }\r\n\r\n if (this.isReadOnly) {\r\n return true;\r\n }\r\n\r\n this._pointerIsDown = true;\r\n\r\n this._updateValueFromPointer(coordinates.x, coordinates.y);\r\n this._host._capturingControl[pointerId] = this;\r\n this._lastPointerDownId = pointerId;\r\n return true;\r\n }\r\n\r\n public _onPointerMove(target: Control, coordinates: Vector2, pointerId: number, pi: PointerInfoBase): void {\r\n // Only listen to pointer move events coming from the last pointer to click on the element (To support dual vr controller interaction)\r\n if (pointerId != this._lastPointerDownId) {\r\n return;\r\n }\r\n\r\n if (this._pointerIsDown && !this.isReadOnly) {\r\n this._updateValueFromPointer(coordinates.x, coordinates.y);\r\n }\r\n\r\n super._onPointerMove(target, coordinates, pointerId, pi);\r\n }\r\n\r\n public _onPointerUp(target: Control, coordinates: Vector2, pointerId: number, buttonIndex: number, notifyClick: boolean): void {\r\n this._pointerIsDown = false;\r\n\r\n delete this._host._capturingControl[pointerId];\r\n super._onPointerUp(target, coordinates, pointerId, buttonIndex, notifyClick);\r\n }\r\n\r\n public _onCanvasBlur(): void {\r\n this._forcePointerUp();\r\n super._onCanvasBlur();\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"baseSlider.js","sourceRoot":"","sources":["../../../../../../../lts/gui/generated/2D/controls/sliders/baseSlider.ts"],"names":[],"mappings":"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","sourcesContent":["import { Observable } from \"core/Misc/observable\";\r\nimport type { Vector2 } from \"core/Maths/math.vector\";\r\n\r\nimport { Control } from \"../control\";\r\nimport { ValueAndUnit } from \"../../valueAndUnit\";\r\nimport type { PointerInfoBase } from \"core/Events/pointerEvents\";\r\nimport { serialize } from \"core/Misc/decorators\";\r\n\r\n/**\r\n * Class used to create slider controls\r\n */\r\nexport class BaseSlider extends Control {\r\n protected _thumbWidth = new ValueAndUnit(20, ValueAndUnit.UNITMODE_PIXEL, false);\r\n private _minimum = 0;\r\n private _maximum = 100;\r\n private _value = 50;\r\n private _isVertical = false;\r\n protected _barOffset = new ValueAndUnit(5, ValueAndUnit.UNITMODE_PIXEL, false);\r\n private _isThumbClamped = false;\r\n protected _displayThumb = true;\r\n private _step = 0;\r\n\r\n private _lastPointerDownId = -1;\r\n\r\n // Shared rendering info\r\n protected _effectiveBarOffset = 0;\r\n protected _renderLeft: number;\r\n protected _renderTop: number;\r\n protected _renderWidth: number;\r\n protected _renderHeight: number;\r\n protected _backgroundBoxLength: number;\r\n protected _backgroundBoxThickness: number;\r\n protected _effectiveThumbThickness: number;\r\n\r\n /** Observable raised when the slider value changes */\r\n public onValueChangedObservable = new Observable<number>();\r\n\r\n /** Gets or sets a boolean indicating if the thumb must be rendered */\r\n @serialize()\r\n public get displayThumb(): boolean {\r\n return this._displayThumb;\r\n }\r\n\r\n public set displayThumb(value: boolean) {\r\n if (this._displayThumb === value) {\r\n return;\r\n }\r\n\r\n this._displayThumb = value;\r\n this._markAsDirty();\r\n }\r\n\r\n /** Gets or sets a step to apply to values (0 by default) */\r\n @serialize()\r\n public get step(): number {\r\n return this._step;\r\n }\r\n\r\n public set step(value: number) {\r\n if (this._step === value) {\r\n return;\r\n }\r\n\r\n this._step = value;\r\n this._markAsDirty();\r\n }\r\n\r\n /** Gets or sets main bar offset (ie. the margin applied to the value bar) */\r\n @serialize()\r\n public get barOffset(): string | number {\r\n return this._barOffset.toString(this._host);\r\n }\r\n\r\n /** Gets main bar offset in pixels*/\r\n public get barOffsetInPixels(): number {\r\n return this._barOffset.getValueInPixel(this._host, this._cachedParentMeasure.width);\r\n }\r\n\r\n public set barOffset(value: string | number) {\r\n if (this._barOffset.toString(this._host) === value) {\r\n return;\r\n }\r\n\r\n if (this._barOffset.fromString(value)) {\r\n this._markAsDirty();\r\n }\r\n }\r\n\r\n /** Gets or sets thumb width */\r\n @serialize()\r\n public get thumbWidth(): string | number {\r\n return this._thumbWidth.toString(this._host);\r\n }\r\n\r\n /** Gets thumb width in pixels */\r\n public get thumbWidthInPixels(): number {\r\n return this._thumbWidth.getValueInPixel(this._host, this._cachedParentMeasure.width);\r\n }\r\n\r\n public set thumbWidth(value: string | number) {\r\n if (this._thumbWidth.toString(this._host) === value) {\r\n return;\r\n }\r\n\r\n if (this._thumbWidth.fromString(value)) {\r\n this._markAsDirty();\r\n }\r\n }\r\n\r\n /** Gets or sets minimum value */\r\n @serialize()\r\n public get minimum(): number {\r\n return this._minimum;\r\n }\r\n\r\n public set minimum(value: number) {\r\n if (this._minimum === value) {\r\n return;\r\n }\r\n\r\n this._minimum = value;\r\n this._markAsDirty();\r\n\r\n this.value = Math.max(Math.min(this.value, this._maximum), this._minimum);\r\n }\r\n\r\n /** Gets or sets maximum value */\r\n @serialize()\r\n public get maximum(): number {\r\n return this._maximum;\r\n }\r\n\r\n public set maximum(value: number) {\r\n if (this._maximum === value) {\r\n return;\r\n }\r\n\r\n this._maximum = value;\r\n this._markAsDirty();\r\n\r\n this.value = Math.max(Math.min(this.value, this._maximum), this._minimum);\r\n }\r\n\r\n /** Gets or sets current value */\r\n @serialize()\r\n public get value(): number {\r\n return this._value;\r\n }\r\n\r\n public set value(value: number) {\r\n value = Math.max(Math.min(value, this._maximum), this._minimum);\r\n\r\n if (this._value === value) {\r\n return;\r\n }\r\n\r\n this._value = value;\r\n this._markAsDirty();\r\n this.onValueChangedObservable.notifyObservers(this._value);\r\n }\r\n\r\n /**Gets or sets a boolean indicating if the slider should be vertical or horizontal */\r\n @serialize()\r\n public get isVertical(): boolean {\r\n return this._isVertical;\r\n }\r\n\r\n public set isVertical(value: boolean) {\r\n if (this._isVertical === value) {\r\n return;\r\n }\r\n\r\n this._isVertical = value;\r\n this._markAsDirty();\r\n }\r\n\r\n /** Gets or sets a value indicating if the thumb can go over main bar extends */\r\n @serialize()\r\n public get isThumbClamped(): boolean {\r\n return this._isThumbClamped;\r\n }\r\n\r\n public set isThumbClamped(value: boolean) {\r\n if (this._isThumbClamped === value) {\r\n return;\r\n }\r\n\r\n this._isThumbClamped = value;\r\n this._markAsDirty();\r\n }\r\n\r\n /**\r\n * Creates a new BaseSlider\r\n * @param name defines the control name\r\n */\r\n constructor(public name?: string) {\r\n super(name);\r\n\r\n this.isPointerBlocker = true;\r\n }\r\n\r\n protected _getTypeName(): string {\r\n return \"BaseSlider\";\r\n }\r\n\r\n protected _getThumbPosition() {\r\n if (this.isVertical) {\r\n return ((this.maximum - this.value) / (this.maximum - this.minimum)) * this._backgroundBoxLength;\r\n }\r\n\r\n return ((this.value - this.minimum) / (this.maximum - this.minimum)) * this._backgroundBoxLength;\r\n }\r\n\r\n protected _getThumbThickness(type: string): number {\r\n let thumbThickness = 0;\r\n switch (type) {\r\n case \"circle\":\r\n if (this._thumbWidth.isPixel) {\r\n thumbThickness = Math.max(this._thumbWidth.getValue(this._host), this._backgroundBoxThickness);\r\n } else {\r\n thumbThickness = this._backgroundBoxThickness * this._thumbWidth.getValue(this._host);\r\n }\r\n break;\r\n case \"rectangle\":\r\n if (this._thumbWidth.isPixel) {\r\n thumbThickness = Math.min(this._thumbWidth.getValue(this._host), this._backgroundBoxThickness);\r\n } else {\r\n thumbThickness = this._backgroundBoxThickness * this._thumbWidth.getValue(this._host);\r\n }\r\n }\r\n return thumbThickness;\r\n }\r\n\r\n protected _prepareRenderingData(type: string) {\r\n // Main bar\r\n this._effectiveBarOffset = 0;\r\n this._renderLeft = this._currentMeasure.left;\r\n this._renderTop = this._currentMeasure.top;\r\n this._renderWidth = this._currentMeasure.width;\r\n this._renderHeight = this._currentMeasure.height;\r\n\r\n this._backgroundBoxLength = Math.max(this._currentMeasure.width, this._currentMeasure.height);\r\n this._backgroundBoxThickness = Math.min(this._currentMeasure.width, this._currentMeasure.height);\r\n this._effectiveThumbThickness = this._getThumbThickness(type);\r\n\r\n if (this.displayThumb) {\r\n this._backgroundBoxLength -= this._effectiveThumbThickness;\r\n }\r\n //throw error when height is less than width for vertical slider\r\n if (this.isVertical && this._currentMeasure.height < this._currentMeasure.width) {\r\n console.error(\"Height should be greater than width\");\r\n return;\r\n }\r\n if (this._barOffset.isPixel) {\r\n this._effectiveBarOffset = Math.min(this._barOffset.getValue(this._host), this._backgroundBoxThickness);\r\n } else {\r\n this._effectiveBarOffset = this._backgroundBoxThickness * this._barOffset.getValue(this._host);\r\n }\r\n\r\n this._backgroundBoxThickness -= this._effectiveBarOffset * 2;\r\n\r\n if (this.isVertical) {\r\n this._renderLeft += this._effectiveBarOffset;\r\n if (!this.isThumbClamped && this.displayThumb) {\r\n this._renderTop += this._effectiveThumbThickness / 2;\r\n }\r\n\r\n this._renderHeight = this._backgroundBoxLength;\r\n this._renderWidth = this._backgroundBoxThickness;\r\n } else {\r\n this._renderTop += this._effectiveBarOffset;\r\n if (!this.isThumbClamped && this.displayThumb) {\r\n this._renderLeft += this._effectiveThumbThickness / 2;\r\n }\r\n this._renderHeight = this._backgroundBoxThickness;\r\n this._renderWidth = this._backgroundBoxLength;\r\n }\r\n }\r\n\r\n // Events\r\n private _pointerIsDown = false;\r\n\r\n /**\r\n * @param x\r\n * @param y\r\n * @hidden\r\n */\r\n protected _updateValueFromPointer(x: number, y: number): void {\r\n if (this.rotation != 0) {\r\n this._invertTransformMatrix.transformCoordinates(x, y, this._transformedPosition);\r\n x = this._transformedPosition.x;\r\n y = this._transformedPosition.y;\r\n }\r\n\r\n let value: number;\r\n if (this._isVertical) {\r\n value = this._minimum + (1 - (y - this._currentMeasure.top) / this._currentMeasure.height) * (this._maximum - this._minimum);\r\n } else {\r\n value = this._minimum + ((x - this._currentMeasure.left) / this._currentMeasure.width) * (this._maximum - this._minimum);\r\n }\r\n this.value = this._step ? Math.round(value / this._step) * this._step : value;\r\n }\r\n\r\n public _onPointerDown(target: Control, coordinates: Vector2, pointerId: number, buttonIndex: number, pi: PointerInfoBase): boolean {\r\n if (!super._onPointerDown(target, coordinates, pointerId, buttonIndex, pi)) {\r\n return false;\r\n }\r\n\r\n if (this.isReadOnly) {\r\n return true;\r\n }\r\n\r\n this._pointerIsDown = true;\r\n\r\n this._updateValueFromPointer(coordinates.x, coordinates.y);\r\n this._host._capturingControl[pointerId] = this;\r\n this._lastPointerDownId = pointerId;\r\n return true;\r\n }\r\n\r\n public _onPointerMove(target: Control, coordinates: Vector2, pointerId: number, pi: PointerInfoBase): void {\r\n // Only listen to pointer move events coming from the last pointer to click on the element (To support dual vr controller interaction)\r\n if (pointerId != this._lastPointerDownId) {\r\n return;\r\n }\r\n\r\n if (this._pointerIsDown && !this.isReadOnly) {\r\n this._updateValueFromPointer(coordinates.x, coordinates.y);\r\n }\r\n\r\n super._onPointerMove(target, coordinates, pointerId, pi);\r\n }\r\n\r\n public _onPointerUp(target: Control, coordinates: Vector2, pointerId: number, buttonIndex: number, notifyClick: boolean): void {\r\n this._pointerIsDown = false;\r\n\r\n delete this._host._capturingControl[pointerId];\r\n super._onPointerUp(target, coordinates, pointerId, buttonIndex, notifyClick);\r\n }\r\n\r\n public _onCanvasBlur(): void {\r\n this._forcePointerUp();\r\n super._onCanvasBlur();\r\n }\r\n}\r\n"]}
@@ -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 type { ICanvasRenderingContext } from "@babylonjs/core/Engines/ICanvas.js";
4
+ import type { 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.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);
193
193
  //# sourceMappingURL=imageBasedSlider.js.map