@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.
- package/2D/adtInstrumentation.d.ts +52 -52
- package/2D/adtInstrumentation.js +126 -126
- package/2D/adtInstrumentation.js.map +1 -1
- package/2D/advancedDynamicTexture.d.ts +449 -448
- package/2D/advancedDynamicTexture.js +1318 -1318
- package/2D/advancedDynamicTexture.js.map +1 -1
- package/2D/controls/button.d.ts +135 -135
- package/2D/controls/button.js +276 -276
- package/2D/controls/button.js.map +1 -1
- package/2D/controls/checkbox.d.ts +59 -59
- package/2D/controls/checkbox.js +188 -188
- package/2D/controls/checkbox.js.map +1 -1
- package/2D/controls/colorpicker.d.ts +103 -103
- package/2D/controls/colorpicker.js +1417 -1417
- package/2D/controls/colorpicker.js.map +1 -1
- package/2D/controls/container.d.ts +175 -175
- package/2D/controls/container.js +570 -570
- package/2D/controls/container.js.map +1 -1
- package/2D/controls/control.d.ts +866 -866
- package/2D/controls/control.js +2433 -2433
- package/2D/controls/control.js.map +1 -1
- package/2D/controls/displayGrid.d.ts +53 -53
- package/2D/controls/displayGrid.js +245 -245
- package/2D/controls/displayGrid.js.map +1 -1
- package/2D/controls/ellipse.d.ts +21 -21
- package/2D/controls/ellipse.js +85 -85
- package/2D/controls/ellipse.js.map +1 -1
- package/2D/controls/focusableButton.d.ts +59 -59
- package/2D/controls/focusableButton.js +99 -99
- package/2D/controls/focusableButton.js.map +1 -1
- package/2D/controls/focusableControl.d.ts +34 -34
- package/2D/controls/focusableControl.js +1 -1
- package/2D/controls/focusableControl.js.map +1 -1
- package/2D/controls/grid.d.ts +139 -139
- package/2D/controls/grid.js +529 -529
- package/2D/controls/grid.js.map +1 -1
- package/2D/controls/image.d.ts +204 -204
- package/2D/controls/image.js +887 -887
- package/2D/controls/image.js.map +1 -1
- package/2D/controls/index.d.ts +29 -29
- package/2D/controls/index.js +29 -29
- package/2D/controls/inputPassword.d.ts +9 -8
- package/2D/controls/inputPassword.js +28 -25
- package/2D/controls/inputPassword.js.map +1 -1
- package/2D/controls/inputText.d.ts +201 -201
- package/2D/controls/inputText.js +1119 -1119
- package/2D/controls/inputText.js.map +1 -1
- package/2D/controls/line.d.ts +66 -66
- package/2D/controls/line.js +271 -271
- package/2D/controls/line.js.map +1 -1
- package/2D/controls/multiLine.d.ts +75 -75
- package/2D/controls/multiLine.js +262 -262
- package/2D/controls/multiLine.js.map +1 -1
- package/2D/controls/radioButton.d.ts +49 -49
- package/2D/controls/radioButton.js +205 -205
- package/2D/controls/radioButton.js.map +1 -1
- package/2D/controls/rectangle.d.ts +29 -29
- package/2D/controls/rectangle.js +150 -150
- package/2D/controls/rectangle.js.map +1 -1
- package/2D/controls/scrollViewers/scrollViewer.d.ts +182 -182
- package/2D/controls/scrollViewers/scrollViewer.js +677 -677
- package/2D/controls/scrollViewers/scrollViewer.js.map +1 -1
- package/2D/controls/scrollViewers/scrollViewerWindow.d.ts +57 -57
- package/2D/controls/scrollViewers/scrollViewerWindow.js +278 -278
- package/2D/controls/scrollViewers/scrollViewerWindow.js.map +1 -1
- package/2D/controls/selector.d.ts +263 -263
- package/2D/controls/selector.js +692 -692
- package/2D/controls/sliders/baseSlider.d.ts +82 -82
- package/2D/controls/sliders/baseSlider.js +347 -347
- package/2D/controls/sliders/baseSlider.js.map +1 -1
- package/2D/controls/sliders/imageBasedSlider.d.ts +49 -49
- package/2D/controls/sliders/imageBasedSlider.js +192 -192
- package/2D/controls/sliders/imageBasedSlider.js.map +1 -1
- package/2D/controls/sliders/imageScrollBar.d.ts +65 -65
- package/2D/controls/sliders/imageScrollBar.js +263 -263
- package/2D/controls/sliders/imageScrollBar.js.map +1 -1
- package/2D/controls/sliders/scrollBar.d.ts +38 -38
- package/2D/controls/sliders/scrollBar.js +143 -143
- package/2D/controls/sliders/scrollBar.js.map +1 -1
- package/2D/controls/sliders/slider.d.ts +35 -35
- package/2D/controls/sliders/slider.js +271 -271
- package/2D/controls/sliders/slider.js.map +1 -1
- package/2D/controls/stackPanel.d.ts +64 -64
- package/2D/controls/stackPanel.js +246 -246
- package/2D/controls/stackPanel.js.map +1 -1
- package/2D/controls/statics.d.ts +6 -6
- package/2D/controls/statics.js +49 -49
- package/2D/controls/textBlock.d.ts +175 -175
- package/2D/controls/textBlock.js +603 -603
- package/2D/controls/textBlock.js.map +1 -1
- package/2D/controls/textWrapper.d.ts +13 -13
- package/2D/controls/textWrapper.js +101 -101
- package/2D/controls/toggleButton.d.ts +117 -117
- package/2D/controls/toggleButton.js +268 -268
- package/2D/controls/toggleButton.js.map +1 -1
- package/2D/controls/virtualKeyboard.d.ts +96 -96
- package/2D/controls/virtualKeyboard.js +256 -256
- package/2D/controls/virtualKeyboard.js.map +1 -1
- package/2D/index.d.ts +9 -9
- package/2D/index.js +10 -9
- package/2D/index.js.map +1 -1
- package/2D/math2D.d.ts +117 -117
- package/2D/math2D.js +221 -221
- package/2D/math2D.js.map +1 -1
- package/2D/measure.d.ts +77 -77
- package/2D/measure.js +139 -139
- package/2D/measure.js.map +1 -1
- package/2D/multiLinePoint.d.ts +47 -47
- package/2D/multiLinePoint.js +127 -127
- package/2D/multiLinePoint.js.map +1 -1
- package/2D/style.d.ts +46 -46
- package/2D/style.js +97 -97
- package/2D/style.js.map +1 -1
- package/2D/valueAndUnit.d.ts +89 -89
- package/2D/valueAndUnit.js +226 -226
- package/2D/valueAndUnit.js.map +1 -1
- package/2D/xmlLoader.d.ts +60 -60
- package/2D/xmlLoader.js +348 -348
- package/2D/xmlLoader.js.map +1 -1
- package/3D/behaviors/defaultBehavior.d.ts +73 -73
- package/3D/behaviors/defaultBehavior.js +121 -121
- package/3D/behaviors/defaultBehavior.js.map +1 -1
- package/3D/controls/abstractButton3D.d.ts +15 -15
- package/3D/controls/abstractButton3D.js +25 -25
- package/3D/controls/abstractButton3D.js.map +1 -1
- package/3D/controls/button3D.d.ts +30 -30
- package/3D/controls/button3D.js +93 -93
- package/3D/controls/button3D.js.map +1 -1
- package/3D/controls/container3D.d.ts +72 -72
- package/3D/controls/container3D.js +139 -139
- package/3D/controls/container3D.js.map +1 -1
- package/3D/controls/contentDisplay3D.d.ts +30 -30
- package/3D/controls/contentDisplay3D.js +79 -79
- package/3D/controls/contentDisplay3D.js.map +1 -1
- package/3D/controls/control3D.d.ts +201 -201
- package/3D/controls/control3D.js +445 -445
- package/3D/controls/control3D.js.map +1 -1
- package/3D/controls/cylinderPanel.d.ts +17 -17
- package/3D/controls/cylinderPanel.js +66 -66
- package/3D/controls/cylinderPanel.js.map +1 -1
- package/3D/controls/handMenu.d.ts +28 -28
- package/3D/controls/handMenu.js +47 -47
- package/3D/controls/handMenu.js.map +1 -1
- package/3D/controls/holographicBackplate.d.ts +49 -49
- package/3D/controls/holographicBackplate.js +120 -120
- package/3D/controls/holographicBackplate.js.map +1 -1
- package/3D/controls/holographicButton.d.ts +84 -84
- package/3D/controls/holographicButton.js +339 -339
- package/3D/controls/holographicButton.js.map +1 -1
- package/3D/controls/holographicSlate.d.ts +131 -131
- package/3D/controls/holographicSlate.js +431 -431
- package/3D/controls/holographicSlate.js.map +1 -1
- package/3D/controls/index.d.ts +21 -21
- package/3D/controls/index.js +21 -21
- package/3D/controls/meshButton3D.d.ts +21 -21
- package/3D/controls/meshButton3D.js +62 -62
- package/3D/controls/meshButton3D.js.map +1 -1
- package/3D/controls/nearMenu.d.ts +44 -44
- package/3D/controls/nearMenu.js +114 -114
- package/3D/controls/nearMenu.js.map +1 -1
- package/3D/controls/planePanel.d.ts +9 -9
- package/3D/controls/planePanel.js +36 -36
- package/3D/controls/planePanel.js.map +1 -1
- package/3D/controls/scatterPanel.d.ts +18 -18
- package/3D/controls/scatterPanel.js +108 -108
- package/3D/controls/scatterPanel.js.map +1 -1
- package/3D/controls/slider3D.d.ts +81 -81
- package/3D/controls/slider3D.js +268 -268
- package/3D/controls/slider3D.js.map +1 -1
- package/3D/controls/spherePanel.d.ts +17 -17
- package/3D/controls/spherePanel.js +67 -67
- package/3D/controls/spherePanel.js.map +1 -1
- package/3D/controls/stackPanel3D.d.ts +22 -22
- package/3D/controls/stackPanel3D.js +107 -107
- package/3D/controls/touchButton3D.d.ts +80 -80
- package/3D/controls/touchButton3D.js +233 -233
- package/3D/controls/touchButton3D.js.map +1 -1
- package/3D/controls/touchHolographicButton.d.ts +110 -110
- package/3D/controls/touchHolographicButton.js +445 -445
- package/3D/controls/touchHolographicButton.js.map +1 -1
- package/3D/controls/touchHolographicMenu.d.ts +61 -61
- package/3D/controls/touchHolographicMenu.js +149 -149
- package/3D/controls/touchHolographicMenu.js.map +1 -1
- package/3D/controls/touchMeshButton3D.d.ts +21 -21
- package/3D/controls/touchMeshButton3D.js +62 -62
- package/3D/controls/touchMeshButton3D.js.map +1 -1
- package/3D/controls/volumeBasedPanel.d.ts +53 -53
- package/3D/controls/volumeBasedPanel.js +174 -174
- package/3D/controls/volumeBasedPanel.js.map +1 -1
- package/3D/gizmos/gizmoHandle.d.ts +108 -108
- package/3D/gizmos/gizmoHandle.js +209 -209
- package/3D/gizmos/gizmoHandle.js.map +1 -1
- package/3D/gizmos/index.d.ts +2 -2
- package/3D/gizmos/index.js +2 -2
- package/3D/gizmos/slateGizmo.d.ts +57 -57
- package/3D/gizmos/slateGizmo.js +369 -369
- package/3D/gizmos/slateGizmo.js.map +1 -1
- package/3D/gui3DManager.d.ts +94 -94
- package/3D/gui3DManager.js +257 -257
- package/3D/gui3DManager.js.map +1 -1
- package/3D/index.d.ts +5 -5
- package/3D/index.js +6 -5
- package/3D/index.js.map +1 -1
- package/3D/materials/fluent/fluentMaterial.d.ts +91 -90
- package/3D/materials/fluent/fluentMaterial.js +292 -292
- package/3D/materials/fluent/fluentMaterial.js.map +1 -1
- package/3D/materials/fluent/index.d.ts +1 -1
- package/3D/materials/fluent/index.js +1 -1
- package/3D/materials/fluent/shaders/fluent.fragment.d.ts +5 -5
- package/3D/materials/fluent/shaders/fluent.fragment.js +8 -8
- package/3D/materials/fluent/shaders/fluent.vertex.d.ts +5 -5
- package/3D/materials/fluent/shaders/fluent.vertex.js +8 -8
- package/3D/materials/fluentBackplate/fluentBackplateMaterial.d.ts +155 -154
- package/3D/materials/fluentBackplate/fluentBackplateMaterial.js +469 -469
- package/3D/materials/fluentBackplate/fluentBackplateMaterial.js.map +1 -1
- package/3D/materials/fluentBackplate/index.d.ts +1 -1
- package/3D/materials/fluentBackplate/index.js +1 -1
- package/3D/materials/fluentBackplate/shaders/fluentBackplate.fragment.d.ts +5 -5
- package/3D/materials/fluentBackplate/shaders/fluentBackplate.fragment.js +8 -8
- package/3D/materials/fluentBackplate/shaders/fluentBackplate.vertex.d.ts +5 -5
- package/3D/materials/fluentBackplate/shaders/fluentBackplate.vertex.js +8 -8
- package/3D/materials/fluentButton/fluentButtonMaterial.d.ts +190 -189
- package/3D/materials/fluentButton/fluentButtonMaterial.js +539 -539
- package/3D/materials/fluentButton/fluentButtonMaterial.js.map +1 -1
- package/3D/materials/fluentButton/index.d.ts +1 -1
- package/3D/materials/fluentButton/index.js +1 -1
- package/3D/materials/fluentButton/shaders/fluentButton.fragment.d.ts +5 -5
- package/3D/materials/fluentButton/shaders/fluentButton.fragment.js +8 -8
- package/3D/materials/fluentButton/shaders/fluentButton.vertex.d.ts +5 -5
- package/3D/materials/fluentButton/shaders/fluentButton.vertex.js +8 -8
- package/3D/materials/fluentMaterial.d.ts +4 -4
- package/3D/materials/fluentMaterial.js +4 -4
- package/3D/materials/handle/handleMaterial.d.ts +68 -68
- package/3D/materials/handle/handleMaterial.js +126 -126
- package/3D/materials/handle/handleMaterial.js.map +1 -1
- package/3D/materials/handle/index.d.ts +1 -1
- package/3D/materials/handle/index.js +1 -1
- package/3D/materials/handle/shaders/handle.fragment.d.ts +5 -5
- package/3D/materials/handle/shaders/handle.fragment.js +8 -8
- package/3D/materials/handle/shaders/handle.vertex.d.ts +5 -5
- package/3D/materials/handle/shaders/handle.vertex.js +8 -8
- package/3D/materials/index.d.ts +5 -5
- package/3D/materials/index.js +6 -5
- package/3D/materials/index.js.map +1 -1
- package/3D/materials/mrdl/index.d.ts +3 -3
- package/3D/materials/mrdl/index.js +3 -3
- package/3D/materials/mrdl/mrdlBackplateMaterial.d.ts +148 -147
- package/3D/materials/mrdl/mrdlBackplateMaterial.js +436 -436
- package/3D/materials/mrdl/mrdlBackplateMaterial.js.map +1 -1
- package/3D/materials/mrdl/mrdlSliderBarMaterial.d.ts +334 -333
- package/3D/materials/mrdl/mrdlSliderBarMaterial.js +851 -851
- package/3D/materials/mrdl/mrdlSliderBarMaterial.js.map +1 -1
- package/3D/materials/mrdl/mrdlSliderThumbMaterial.d.ts +334 -333
- package/3D/materials/mrdl/mrdlSliderThumbMaterial.js +851 -851
- package/3D/materials/mrdl/mrdlSliderThumbMaterial.js.map +1 -1
- package/3D/materials/mrdl/shaders/mrdlBackplate.fragment.d.ts +5 -5
- package/3D/materials/mrdl/shaders/mrdlBackplate.fragment.js +8 -8
- package/3D/materials/mrdl/shaders/mrdlBackplate.vertex.d.ts +5 -5
- package/3D/materials/mrdl/shaders/mrdlBackplate.vertex.js +8 -8
- package/3D/materials/mrdl/shaders/mrdlSliderBar.fragment.d.ts +5 -5
- package/3D/materials/mrdl/shaders/mrdlSliderBar.fragment.js +8 -8
- package/3D/materials/mrdl/shaders/mrdlSliderBar.vertex.d.ts +5 -5
- package/3D/materials/mrdl/shaders/mrdlSliderBar.vertex.js +8 -8
- package/3D/materials/mrdl/shaders/mrdlSliderThumb.fragment.d.ts +5 -5
- package/3D/materials/mrdl/shaders/mrdlSliderThumb.fragment.js +8 -8
- package/3D/materials/mrdl/shaders/mrdlSliderThumb.vertex.d.ts +5 -5
- package/3D/materials/mrdl/shaders/mrdlSliderThumb.vertex.js +8 -8
- package/3D/vector3WithInfo.d.ts +16 -16
- package/3D/vector3WithInfo.js +23 -23
- package/index.d.ts +2 -2
- package/index.js +3 -2
- package/index.js.map +1 -1
- package/legacy/legacy.d.ts +1 -1
- package/legacy/legacy.js +14 -13
- package/legacy/legacy.js.map +1 -1
- package/license.md +71 -0
- package/package.json +24 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multiLine.js","sourceRoot":"","sources":["../../../../../../lts/gui/generated/2D/controls/multiLine.ts"],"names":[],"mappings":"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","sourcesContent":["import { Nullable } from \"core/types\";\r\nimport { AbstractMesh } from \"core/Meshes/abstractMesh\";\r\n\r\nimport { Control } from \"./control\";\r\nimport { MultiLinePoint } from \"../multiLinePoint\";\r\nimport { RegisterClass } from \"core/Misc/typeStore\";\r\nimport { Vector3 } from \"core/Maths/math.vector\";\r\nimport { serialize } from \"core/Misc/decorators\";\r\nimport { ICanvasRenderingContext } from \"core/Engines/ICanvas\";\r\n\r\n/**\r\n * Class used to create multi line control\r\n */\r\nexport class MultiLine extends Control {\r\n private _lineWidth: number = 1;\r\n private _dash: number[];\r\n private _points: Nullable<MultiLinePoint>[];\r\n\r\n private _minX: Nullable<number>;\r\n private _minY: Nullable<number>;\r\n private _maxX: Nullable<number>;\r\n private _maxY: Nullable<number>;\r\n\r\n /**\r\n * Creates a new MultiLine\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._automaticSize = true;\r\n this.isHitTestVisible = false;\r\n this._horizontalAlignment = Control.HORIZONTAL_ALIGNMENT_LEFT;\r\n this._verticalAlignment = Control.VERTICAL_ALIGNMENT_TOP;\r\n\r\n this._dash = [];\r\n this._points = [];\r\n }\r\n\r\n /** Gets or sets dash pattern */\r\n @serialize()\r\n public get dash(): Array<number> {\r\n return this._dash;\r\n }\r\n\r\n public set dash(value: Array<number>) {\r\n if (this._dash === value) {\r\n return;\r\n }\r\n\r\n this._dash = value;\r\n this._markAsDirty();\r\n }\r\n\r\n /**\r\n * Gets point stored at specified index\r\n * @param index defines the index to look for\r\n * @returns the requested point if found\r\n */\r\n public getAt(index: number): MultiLinePoint {\r\n if (!this._points[index]) {\r\n this._points[index] = new MultiLinePoint(this);\r\n }\r\n\r\n return this._points[index] as MultiLinePoint;\r\n }\r\n\r\n /** Function called when a point is updated */\r\n public onPointUpdate = (): void => {\r\n this._markAsDirty();\r\n };\r\n\r\n /**\r\n * Adds new points to the point collection\r\n * @param items defines the list of items (mesh, control or 2d coordinates) to add\r\n * @returns the list of created MultiLinePoint\r\n */\r\n public add(...items: (AbstractMesh | Control | { x: string | number; y: string | number })[]): MultiLinePoint[] {\r\n return items.map((item) => this.push(item));\r\n }\r\n\r\n /**\r\n * Adds a new point to the point collection\r\n * @param item defines the item (mesh, control or 2d coordinates) to add\r\n * @returns the created MultiLinePoint\r\n */\r\n public push(item?: AbstractMesh | Control | { x: string | number; y: string | number }): MultiLinePoint {\r\n const point: MultiLinePoint = this.getAt(this._points.length);\r\n\r\n if (item == null) {\r\n return point;\r\n }\r\n\r\n if (item instanceof AbstractMesh) {\r\n point.mesh = item;\r\n } else if (item instanceof Control) {\r\n point.control = item;\r\n } else if (item.x != null && item.y != null) {\r\n point.x = item.x;\r\n point.y = item.y;\r\n }\r\n\r\n return point;\r\n }\r\n\r\n /**\r\n * Remove a specific value or point from the active point collection\r\n * @param value defines the value or point to remove\r\n */\r\n public remove(value: number | MultiLinePoint): void {\r\n let index: number;\r\n\r\n if (value instanceof MultiLinePoint) {\r\n index = this._points.indexOf(value);\r\n\r\n if (index === -1) {\r\n return;\r\n }\r\n } else {\r\n index = value;\r\n }\r\n\r\n const point: Nullable<MultiLinePoint> = this._points[index];\r\n\r\n if (!point) {\r\n return;\r\n }\r\n\r\n point.dispose();\r\n\r\n this._points.splice(index, 1);\r\n }\r\n\r\n /**\r\n * Resets this object to initial state (no point)\r\n */\r\n public reset(): void {\r\n while (this._points.length > 0) {\r\n this.remove(this._points.length - 1);\r\n }\r\n }\r\n\r\n /**\r\n * Resets all links\r\n */\r\n public resetLinks(): void {\r\n this._points.forEach((point) => {\r\n if (point != null) {\r\n point.resetLinks();\r\n }\r\n });\r\n }\r\n\r\n /** Gets or sets line width */\r\n public get lineWidth(): number {\r\n return this._lineWidth;\r\n }\r\n\r\n public set lineWidth(value: number) {\r\n if (this._lineWidth === value) {\r\n return;\r\n }\r\n\r\n this._lineWidth = value;\r\n this._markAsDirty();\r\n }\r\n\r\n public set horizontalAlignment(value: number) {\r\n return;\r\n }\r\n\r\n public set verticalAlignment(value: number) {\r\n return;\r\n }\r\n\r\n protected _getTypeName(): string {\r\n return \"MultiLine\";\r\n }\r\n\r\n public _draw(context: ICanvasRenderingContext): void {\r\n context.save();\r\n\r\n if (this.shadowBlur || this.shadowOffsetX || this.shadowOffsetY) {\r\n context.shadowColor = this.shadowColor;\r\n context.shadowBlur = this.shadowBlur;\r\n context.shadowOffsetX = this.shadowOffsetX;\r\n context.shadowOffsetY = this.shadowOffsetY;\r\n }\r\n\r\n this._applyStates(context);\r\n\r\n context.strokeStyle = this.color;\r\n context.lineWidth = this._lineWidth;\r\n context.setLineDash(this._dash);\r\n\r\n context.beginPath();\r\n\r\n let first: boolean = true; //first index is not necessarily 0\r\n let previousPoint: Vector3;\r\n\r\n this._points.forEach((point) => {\r\n if (!point) {\r\n return;\r\n }\r\n\r\n if (first) {\r\n context.moveTo(point._point.x, point._point.y);\r\n\r\n first = false;\r\n } else {\r\n if (point._point.z < 1 && previousPoint.z < 1) {\r\n context.lineTo(point._point.x, point._point.y);\r\n } else {\r\n context.moveTo(point._point.x, point._point.y);\r\n }\r\n }\r\n previousPoint = point._point;\r\n });\r\n\r\n context.stroke();\r\n\r\n context.restore();\r\n }\r\n\r\n protected _additionalProcessing(): void {\r\n this._minX = null;\r\n this._minY = null;\r\n this._maxX = null;\r\n this._maxY = null;\r\n\r\n this._points.forEach((point) => {\r\n if (!point) {\r\n return;\r\n }\r\n\r\n point.translate();\r\n\r\n if (this._minX == null || point._point.x < this._minX) {\r\n this._minX = point._point.x;\r\n }\r\n if (this._minY == null || point._point.y < this._minY) {\r\n this._minY = point._point.y;\r\n }\r\n if (this._maxX == null || point._point.x > this._maxX) {\r\n this._maxX = point._point.x;\r\n }\r\n if (this._maxY == null || point._point.y > this._maxY) {\r\n this._maxY = point._point.y;\r\n }\r\n });\r\n\r\n if (this._minX == null) {\r\n this._minX = 0;\r\n }\r\n if (this._minY == null) {\r\n this._minY = 0;\r\n }\r\n if (this._maxX == null) {\r\n this._maxX = 0;\r\n }\r\n if (this._maxY == null) {\r\n this._maxY = 0;\r\n }\r\n }\r\n\r\n public _measure(): void {\r\n if (this._minX == null || this._maxX == null || this._minY == null || this._maxY == null) {\r\n return;\r\n }\r\n\r\n this._currentMeasure.width = Math.abs(this._maxX - this._minX) + this._lineWidth;\r\n this._currentMeasure.height = Math.abs(this._maxY - this._minY) + this._lineWidth;\r\n }\r\n\r\n protected _computeAlignment(): void {\r\n if (this._minX == null || this._minY == null) {\r\n return;\r\n }\r\n\r\n this._currentMeasure.left = this._minX - this._lineWidth / 2;\r\n this._currentMeasure.top = this._minY - this._lineWidth / 2;\r\n }\r\n\r\n public dispose(): void {\r\n this.reset();\r\n\r\n super.dispose();\r\n }\r\n}\r\nRegisterClass(\"BABYLON.GUI.MultiLine\", MultiLine);\r\n"]}
|
|
1
|
+
{"version":3,"file":"multiLine.js","sourceRoot":"","sources":["../../../../../../lts/gui/generated/2D/controls/multiLine.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Nullable } from \"core/types\";\r\nimport { AbstractMesh } from \"core/Meshes/abstractMesh\";\r\n\r\nimport { Control } from \"./control\";\r\nimport { MultiLinePoint } from \"../multiLinePoint\";\r\nimport { RegisterClass } from \"core/Misc/typeStore\";\r\nimport type { Vector3 } from \"core/Maths/math.vector\";\r\nimport { serialize } from \"core/Misc/decorators\";\r\nimport type { ICanvasRenderingContext } from \"core/Engines/ICanvas\";\r\n\r\n/**\r\n * Class used to create multi line control\r\n */\r\nexport class MultiLine extends Control {\r\n private _lineWidth: number = 1;\r\n private _dash: number[];\r\n private _points: Nullable<MultiLinePoint>[];\r\n\r\n private _minX: Nullable<number>;\r\n private _minY: Nullable<number>;\r\n private _maxX: Nullable<number>;\r\n private _maxY: Nullable<number>;\r\n\r\n /**\r\n * Creates a new MultiLine\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._automaticSize = true;\r\n this.isHitTestVisible = false;\r\n this._horizontalAlignment = Control.HORIZONTAL_ALIGNMENT_LEFT;\r\n this._verticalAlignment = Control.VERTICAL_ALIGNMENT_TOP;\r\n\r\n this._dash = [];\r\n this._points = [];\r\n }\r\n\r\n /** Gets or sets dash pattern */\r\n @serialize()\r\n public get dash(): Array<number> {\r\n return this._dash;\r\n }\r\n\r\n public set dash(value: Array<number>) {\r\n if (this._dash === value) {\r\n return;\r\n }\r\n\r\n this._dash = value;\r\n this._markAsDirty();\r\n }\r\n\r\n /**\r\n * Gets point stored at specified index\r\n * @param index defines the index to look for\r\n * @returns the requested point if found\r\n */\r\n public getAt(index: number): MultiLinePoint {\r\n if (!this._points[index]) {\r\n this._points[index] = new MultiLinePoint(this);\r\n }\r\n\r\n return this._points[index] as MultiLinePoint;\r\n }\r\n\r\n /** Function called when a point is updated */\r\n public onPointUpdate = (): void => {\r\n this._markAsDirty();\r\n };\r\n\r\n /**\r\n * Adds new points to the point collection\r\n * @param items defines the list of items (mesh, control or 2d coordinates) to add\r\n * @returns the list of created MultiLinePoint\r\n */\r\n public add(...items: (AbstractMesh | Control | { x: string | number; y: string | number })[]): MultiLinePoint[] {\r\n return items.map((item) => this.push(item));\r\n }\r\n\r\n /**\r\n * Adds a new point to the point collection\r\n * @param item defines the item (mesh, control or 2d coordinates) to add\r\n * @returns the created MultiLinePoint\r\n */\r\n public push(item?: AbstractMesh | Control | { x: string | number; y: string | number }): MultiLinePoint {\r\n const point: MultiLinePoint = this.getAt(this._points.length);\r\n\r\n if (item == null) {\r\n return point;\r\n }\r\n\r\n if (item instanceof AbstractMesh) {\r\n point.mesh = item;\r\n } else if (item instanceof Control) {\r\n point.control = item;\r\n } else if (item.x != null && item.y != null) {\r\n point.x = item.x;\r\n point.y = item.y;\r\n }\r\n\r\n return point;\r\n }\r\n\r\n /**\r\n * Remove a specific value or point from the active point collection\r\n * @param value defines the value or point to remove\r\n */\r\n public remove(value: number | MultiLinePoint): void {\r\n let index: number;\r\n\r\n if (value instanceof MultiLinePoint) {\r\n index = this._points.indexOf(value);\r\n\r\n if (index === -1) {\r\n return;\r\n }\r\n } else {\r\n index = value;\r\n }\r\n\r\n const point: Nullable<MultiLinePoint> = this._points[index];\r\n\r\n if (!point) {\r\n return;\r\n }\r\n\r\n point.dispose();\r\n\r\n this._points.splice(index, 1);\r\n }\r\n\r\n /**\r\n * Resets this object to initial state (no point)\r\n */\r\n public reset(): void {\r\n while (this._points.length > 0) {\r\n this.remove(this._points.length - 1);\r\n }\r\n }\r\n\r\n /**\r\n * Resets all links\r\n */\r\n public resetLinks(): void {\r\n this._points.forEach((point) => {\r\n if (point != null) {\r\n point.resetLinks();\r\n }\r\n });\r\n }\r\n\r\n /** Gets or sets line width */\r\n public get lineWidth(): number {\r\n return this._lineWidth;\r\n }\r\n\r\n public set lineWidth(value: number) {\r\n if (this._lineWidth === value) {\r\n return;\r\n }\r\n\r\n this._lineWidth = value;\r\n this._markAsDirty();\r\n }\r\n\r\n public set horizontalAlignment(value: number) {\r\n return;\r\n }\r\n\r\n public set verticalAlignment(value: number) {\r\n return;\r\n }\r\n\r\n protected _getTypeName(): string {\r\n return \"MultiLine\";\r\n }\r\n\r\n public _draw(context: ICanvasRenderingContext): void {\r\n context.save();\r\n\r\n if (this.shadowBlur || this.shadowOffsetX || this.shadowOffsetY) {\r\n context.shadowColor = this.shadowColor;\r\n context.shadowBlur = this.shadowBlur;\r\n context.shadowOffsetX = this.shadowOffsetX;\r\n context.shadowOffsetY = this.shadowOffsetY;\r\n }\r\n\r\n this._applyStates(context);\r\n\r\n context.strokeStyle = this.color;\r\n context.lineWidth = this._lineWidth;\r\n context.setLineDash(this._dash);\r\n\r\n context.beginPath();\r\n\r\n let first: boolean = true; //first index is not necessarily 0\r\n let previousPoint: Vector3;\r\n\r\n this._points.forEach((point) => {\r\n if (!point) {\r\n return;\r\n }\r\n\r\n if (first) {\r\n context.moveTo(point._point.x, point._point.y);\r\n\r\n first = false;\r\n } else {\r\n if (point._point.z < 1 && previousPoint.z < 1) {\r\n context.lineTo(point._point.x, point._point.y);\r\n } else {\r\n context.moveTo(point._point.x, point._point.y);\r\n }\r\n }\r\n previousPoint = point._point;\r\n });\r\n\r\n context.stroke();\r\n\r\n context.restore();\r\n }\r\n\r\n protected _additionalProcessing(): void {\r\n this._minX = null;\r\n this._minY = null;\r\n this._maxX = null;\r\n this._maxY = null;\r\n\r\n this._points.forEach((point) => {\r\n if (!point) {\r\n return;\r\n }\r\n\r\n point.translate();\r\n\r\n if (this._minX == null || point._point.x < this._minX) {\r\n this._minX = point._point.x;\r\n }\r\n if (this._minY == null || point._point.y < this._minY) {\r\n this._minY = point._point.y;\r\n }\r\n if (this._maxX == null || point._point.x > this._maxX) {\r\n this._maxX = point._point.x;\r\n }\r\n if (this._maxY == null || point._point.y > this._maxY) {\r\n this._maxY = point._point.y;\r\n }\r\n });\r\n\r\n if (this._minX == null) {\r\n this._minX = 0;\r\n }\r\n if (this._minY == null) {\r\n this._minY = 0;\r\n }\r\n if (this._maxX == null) {\r\n this._maxX = 0;\r\n }\r\n if (this._maxY == null) {\r\n this._maxY = 0;\r\n }\r\n }\r\n\r\n public _measure(): void {\r\n if (this._minX == null || this._maxX == null || this._minY == null || this._maxY == null) {\r\n return;\r\n }\r\n\r\n this._currentMeasure.width = Math.abs(this._maxX - this._minX) + this._lineWidth;\r\n this._currentMeasure.height = Math.abs(this._maxY - this._minY) + this._lineWidth;\r\n }\r\n\r\n protected _computeAlignment(): void {\r\n if (this._minX == null || this._minY == null) {\r\n return;\r\n }\r\n\r\n this._currentMeasure.left = this._minX - this._lineWidth / 2;\r\n this._currentMeasure.top = this._minY - this._lineWidth / 2;\r\n }\r\n\r\n public dispose(): void {\r\n this.reset();\r\n\r\n super.dispose();\r\n }\r\n}\r\nRegisterClass(\"BABYLON.GUI.MultiLine\", MultiLine);\r\n"]}
|
|
@@ -1,49 +1,49 @@
|
|
|
1
|
-
import { Observable } from "@babylonjs/core/Misc/observable.js";
|
|
2
|
-
import { Vector2 } from "@babylonjs/core/Maths/math.vector.js";
|
|
3
|
-
import { Control } from "./control";
|
|
4
|
-
import { StackPanel } from "./stackPanel";
|
|
5
|
-
import { PointerInfoBase } from "@babylonjs/core/Events/pointerEvents.js";
|
|
6
|
-
import { ICanvasRenderingContext } from "@babylonjs/core/Engines/ICanvas.js";
|
|
7
|
-
/**
|
|
8
|
-
* Class used to create radio button controls
|
|
9
|
-
*/
|
|
10
|
-
export declare class RadioButton extends Control {
|
|
11
|
-
name?: string | undefined;
|
|
12
|
-
private _isChecked;
|
|
13
|
-
private _background;
|
|
14
|
-
private _checkSizeRatio;
|
|
15
|
-
private _thickness;
|
|
16
|
-
/** Gets or sets border thickness */
|
|
17
|
-
get thickness(): number;
|
|
18
|
-
set thickness(value: number);
|
|
19
|
-
/** Gets or sets group name */
|
|
20
|
-
group: string;
|
|
21
|
-
/** Observable raised when isChecked is changed */
|
|
22
|
-
onIsCheckedChangedObservable: Observable<boolean>;
|
|
23
|
-
/** Gets or sets a value indicating the ratio between overall size and check size */
|
|
24
|
-
get checkSizeRatio(): number;
|
|
25
|
-
set checkSizeRatio(value: number);
|
|
26
|
-
/** Gets or sets background color */
|
|
27
|
-
get background(): string;
|
|
28
|
-
set background(value: string);
|
|
29
|
-
/** Gets or sets a boolean indicating if the checkbox is checked or not */
|
|
30
|
-
get isChecked(): boolean;
|
|
31
|
-
set isChecked(value: boolean);
|
|
32
|
-
/**
|
|
33
|
-
* Creates a new RadioButton
|
|
34
|
-
* @param name defines the control name
|
|
35
|
-
*/
|
|
36
|
-
constructor(name?: string | undefined);
|
|
37
|
-
protected _getTypeName(): string;
|
|
38
|
-
_draw(context: ICanvasRenderingContext): void;
|
|
39
|
-
_onPointerDown(target: Control, coordinates: Vector2, pointerId: number, buttonIndex: number, pi: PointerInfoBase): boolean;
|
|
40
|
-
/**
|
|
41
|
-
* Utility function to easily create a radio button with a header
|
|
42
|
-
* @param title defines the label to use for the header
|
|
43
|
-
* @param group defines the group to use for the radio button
|
|
44
|
-
* @param isChecked defines the initial state of the radio button
|
|
45
|
-
* @param onValueChanged defines the callback to call when value changes
|
|
46
|
-
* @returns a StackPanel containing the radio button and a textBlock
|
|
47
|
-
*/
|
|
48
|
-
static AddRadioButtonWithHeader(title: string, group: string, isChecked: boolean, onValueChanged: (button: RadioButton, value: boolean) => void): StackPanel;
|
|
49
|
-
}
|
|
1
|
+
import { Observable } from "@babylonjs/core/Misc/observable.js";
|
|
2
|
+
import type { Vector2 } from "@babylonjs/core/Maths/math.vector.js";
|
|
3
|
+
import { Control } from "./control";
|
|
4
|
+
import { StackPanel } from "./stackPanel";
|
|
5
|
+
import type { PointerInfoBase } from "@babylonjs/core/Events/pointerEvents.js";
|
|
6
|
+
import type { ICanvasRenderingContext } from "@babylonjs/core/Engines/ICanvas.js";
|
|
7
|
+
/**
|
|
8
|
+
* Class used to create radio button controls
|
|
9
|
+
*/
|
|
10
|
+
export declare class RadioButton extends Control {
|
|
11
|
+
name?: string | undefined;
|
|
12
|
+
private _isChecked;
|
|
13
|
+
private _background;
|
|
14
|
+
private _checkSizeRatio;
|
|
15
|
+
private _thickness;
|
|
16
|
+
/** Gets or sets border thickness */
|
|
17
|
+
get thickness(): number;
|
|
18
|
+
set thickness(value: number);
|
|
19
|
+
/** Gets or sets group name */
|
|
20
|
+
group: string;
|
|
21
|
+
/** Observable raised when isChecked is changed */
|
|
22
|
+
onIsCheckedChangedObservable: Observable<boolean>;
|
|
23
|
+
/** Gets or sets a value indicating the ratio between overall size and check size */
|
|
24
|
+
get checkSizeRatio(): number;
|
|
25
|
+
set checkSizeRatio(value: number);
|
|
26
|
+
/** Gets or sets background color */
|
|
27
|
+
get background(): string;
|
|
28
|
+
set background(value: string);
|
|
29
|
+
/** Gets or sets a boolean indicating if the checkbox is checked or not */
|
|
30
|
+
get isChecked(): boolean;
|
|
31
|
+
set isChecked(value: boolean);
|
|
32
|
+
/**
|
|
33
|
+
* Creates a new RadioButton
|
|
34
|
+
* @param name defines the control name
|
|
35
|
+
*/
|
|
36
|
+
constructor(name?: string | undefined);
|
|
37
|
+
protected _getTypeName(): string;
|
|
38
|
+
_draw(context: ICanvasRenderingContext): void;
|
|
39
|
+
_onPointerDown(target: Control, coordinates: Vector2, pointerId: number, buttonIndex: number, pi: PointerInfoBase): boolean;
|
|
40
|
+
/**
|
|
41
|
+
* Utility function to easily create a radio button with a header
|
|
42
|
+
* @param title defines the label to use for the header
|
|
43
|
+
* @param group defines the group to use for the radio button
|
|
44
|
+
* @param isChecked defines the initial state of the radio button
|
|
45
|
+
* @param onValueChanged defines the callback to call when value changes
|
|
46
|
+
* @returns a StackPanel containing the radio button and a textBlock
|
|
47
|
+
*/
|
|
48
|
+
static AddRadioButtonWithHeader(title: string, group: string, isChecked: boolean, onValueChanged: (button: RadioButton, value: boolean) => void): StackPanel;
|
|
49
|
+
}
|
|
@@ -1,206 +1,206 @@
|
|
|
1
|
-
import { __decorate, __extends } from "tslib";
|
|
2
|
-
import { Observable } from "@babylonjs/core/Misc/observable.js";
|
|
3
|
-
import { Control } from "./control.js";
|
|
4
|
-
import { StackPanel } from "./stackPanel.js";
|
|
5
|
-
import { TextBlock } from "./textBlock.js";
|
|
6
|
-
import { RegisterClass } from "@babylonjs/core/Misc/typeStore.js";
|
|
7
|
-
import { serialize } from "@babylonjs/core/Misc/decorators.js";
|
|
8
|
-
/**
|
|
9
|
-
* Class used to create radio button controls
|
|
10
|
-
*/
|
|
11
|
-
var RadioButton = /** @class */ (function (_super) {
|
|
12
|
-
__extends(RadioButton, _super);
|
|
13
|
-
/**
|
|
14
|
-
* Creates a new RadioButton
|
|
15
|
-
* @param name defines the control name
|
|
16
|
-
*/
|
|
17
|
-
function RadioButton(name) {
|
|
18
|
-
var _this = _super.call(this, name) || this;
|
|
19
|
-
_this.name = name;
|
|
20
|
-
_this._isChecked = false;
|
|
21
|
-
_this._background = "black";
|
|
22
|
-
_this._checkSizeRatio = 0.8;
|
|
23
|
-
_this._thickness = 1;
|
|
24
|
-
/** Gets or sets group name */
|
|
25
|
-
_this.group = "";
|
|
26
|
-
/** Observable raised when isChecked is changed */
|
|
27
|
-
_this.onIsCheckedChangedObservable = new Observable();
|
|
28
|
-
_this.isPointerBlocker = true;
|
|
29
|
-
return _this;
|
|
30
|
-
}
|
|
31
|
-
Object.defineProperty(RadioButton.prototype, "thickness", {
|
|
32
|
-
/** Gets or sets border thickness */
|
|
33
|
-
get: function () {
|
|
34
|
-
return this._thickness;
|
|
35
|
-
},
|
|
36
|
-
set: function (value) {
|
|
37
|
-
if (this._thickness === value) {
|
|
38
|
-
return;
|
|
39
|
-
}
|
|
40
|
-
this._thickness = value;
|
|
41
|
-
this._markAsDirty();
|
|
42
|
-
},
|
|
43
|
-
enumerable: false,
|
|
44
|
-
configurable: true
|
|
45
|
-
});
|
|
46
|
-
Object.defineProperty(RadioButton.prototype, "checkSizeRatio", {
|
|
47
|
-
/** Gets or sets a value indicating the ratio between overall size and check size */
|
|
48
|
-
get: function () {
|
|
49
|
-
return this._checkSizeRatio;
|
|
50
|
-
},
|
|
51
|
-
set: function (value) {
|
|
52
|
-
value = Math.max(Math.min(1, value), 0);
|
|
53
|
-
if (this._checkSizeRatio === value) {
|
|
54
|
-
return;
|
|
55
|
-
}
|
|
56
|
-
this._checkSizeRatio = value;
|
|
57
|
-
this._markAsDirty();
|
|
58
|
-
},
|
|
59
|
-
enumerable: false,
|
|
60
|
-
configurable: true
|
|
61
|
-
});
|
|
62
|
-
Object.defineProperty(RadioButton.prototype, "background", {
|
|
63
|
-
/** Gets or sets background color */
|
|
64
|
-
get: function () {
|
|
65
|
-
return this._background;
|
|
66
|
-
},
|
|
67
|
-
set: function (value) {
|
|
68
|
-
if (this._background === value) {
|
|
69
|
-
return;
|
|
70
|
-
}
|
|
71
|
-
this._background = value;
|
|
72
|
-
this._markAsDirty();
|
|
73
|
-
},
|
|
74
|
-
enumerable: false,
|
|
75
|
-
configurable: true
|
|
76
|
-
});
|
|
77
|
-
Object.defineProperty(RadioButton.prototype, "isChecked", {
|
|
78
|
-
/** Gets or sets a boolean indicating if the checkbox is checked or not */
|
|
79
|
-
get: function () {
|
|
80
|
-
return this._isChecked;
|
|
81
|
-
},
|
|
82
|
-
set: function (value) {
|
|
83
|
-
var _this = this;
|
|
84
|
-
if (this._isChecked === value) {
|
|
85
|
-
return;
|
|
86
|
-
}
|
|
87
|
-
this._isChecked = value;
|
|
88
|
-
this._markAsDirty();
|
|
89
|
-
this.onIsCheckedChangedObservable.notifyObservers(value);
|
|
90
|
-
if (this._isChecked && this._host) {
|
|
91
|
-
// Update all controls from same group
|
|
92
|
-
this._host.executeOnAllControls(function (control) {
|
|
93
|
-
if (control === _this) {
|
|
94
|
-
return;
|
|
95
|
-
}
|
|
96
|
-
if (control.group === undefined) {
|
|
97
|
-
return;
|
|
98
|
-
}
|
|
99
|
-
var childRadio = control;
|
|
100
|
-
if (childRadio.group === _this.group) {
|
|
101
|
-
childRadio.isChecked = false;
|
|
102
|
-
}
|
|
103
|
-
});
|
|
104
|
-
}
|
|
105
|
-
},
|
|
106
|
-
enumerable: false,
|
|
107
|
-
configurable: true
|
|
108
|
-
});
|
|
109
|
-
RadioButton.prototype._getTypeName = function () {
|
|
110
|
-
return "RadioButton";
|
|
111
|
-
};
|
|
112
|
-
RadioButton.prototype._draw = function (context) {
|
|
113
|
-
context.save();
|
|
114
|
-
this._applyStates(context);
|
|
115
|
-
var actualWidth = this._currentMeasure.width - this._thickness;
|
|
116
|
-
var actualHeight = this._currentMeasure.height - this._thickness;
|
|
117
|
-
if (this.shadowBlur || this.shadowOffsetX || this.shadowOffsetY) {
|
|
118
|
-
context.shadowColor = this.shadowColor;
|
|
119
|
-
context.shadowBlur = this.shadowBlur;
|
|
120
|
-
context.shadowOffsetX = this.shadowOffsetX;
|
|
121
|
-
context.shadowOffsetY = this.shadowOffsetY;
|
|
122
|
-
}
|
|
123
|
-
// Outer
|
|
124
|
-
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);
|
|
125
|
-
context.fillStyle = this._isEnabled ? this._background : this._disabledColor;
|
|
126
|
-
context.fill();
|
|
127
|
-
if (this.shadowBlur || this.shadowOffsetX || this.shadowOffsetY) {
|
|
128
|
-
context.shadowBlur = 0;
|
|
129
|
-
context.shadowOffsetX = 0;
|
|
130
|
-
context.shadowOffsetY = 0;
|
|
131
|
-
}
|
|
132
|
-
context.strokeStyle = this.color;
|
|
133
|
-
context.lineWidth = this._thickness;
|
|
134
|
-
context.stroke();
|
|
135
|
-
// Inner
|
|
136
|
-
if (this._isChecked) {
|
|
137
|
-
context.fillStyle = this._isEnabled ? this.color : this._disabledColor;
|
|
138
|
-
var offsetWidth = actualWidth * this._checkSizeRatio;
|
|
139
|
-
var offseHeight = actualHeight * this._checkSizeRatio;
|
|
140
|
-
Control.drawEllipse(this._currentMeasure.left + this._currentMeasure.width / 2, this._currentMeasure.top + this._currentMeasure.height / 2, offsetWidth / 2 - this._thickness / 2, offseHeight / 2 - this._thickness / 2, context);
|
|
141
|
-
context.fill();
|
|
142
|
-
}
|
|
143
|
-
context.restore();
|
|
144
|
-
};
|
|
145
|
-
// Events
|
|
146
|
-
RadioButton.prototype._onPointerDown = function (target, coordinates, pointerId, buttonIndex, pi) {
|
|
147
|
-
if (!_super.prototype._onPointerDown.call(this, target, coordinates, pointerId, buttonIndex, pi)) {
|
|
148
|
-
return false;
|
|
149
|
-
}
|
|
150
|
-
if (this.isReadOnly) {
|
|
151
|
-
return true;
|
|
152
|
-
}
|
|
153
|
-
if (!this.isChecked) {
|
|
154
|
-
this.isChecked = true;
|
|
155
|
-
}
|
|
156
|
-
return true;
|
|
157
|
-
};
|
|
158
|
-
/**
|
|
159
|
-
* Utility function to easily create a radio button with a header
|
|
160
|
-
* @param title defines the label to use for the header
|
|
161
|
-
* @param group defines the group to use for the radio button
|
|
162
|
-
* @param isChecked defines the initial state of the radio button
|
|
163
|
-
* @param onValueChanged defines the callback to call when value changes
|
|
164
|
-
* @returns a StackPanel containing the radio button and a textBlock
|
|
165
|
-
*/
|
|
166
|
-
RadioButton.AddRadioButtonWithHeader = function (title, group, isChecked, onValueChanged) {
|
|
167
|
-
var panel = new StackPanel();
|
|
168
|
-
panel.isVertical = false;
|
|
169
|
-
panel.height = "30px";
|
|
170
|
-
var radio = new RadioButton();
|
|
171
|
-
radio.width = "20px";
|
|
172
|
-
radio.height = "20px";
|
|
173
|
-
radio.isChecked = isChecked;
|
|
174
|
-
radio.color = "green";
|
|
175
|
-
radio.group = group;
|
|
176
|
-
radio.onIsCheckedChangedObservable.add(function (value) { return onValueChanged(radio, value); });
|
|
177
|
-
panel.addControl(radio);
|
|
178
|
-
var header = new TextBlock();
|
|
179
|
-
header.text = title;
|
|
180
|
-
header.width = "180px";
|
|
181
|
-
header.paddingLeft = "5px";
|
|
182
|
-
header.textHorizontalAlignment = Control.HORIZONTAL_ALIGNMENT_LEFT;
|
|
183
|
-
header.color = "white";
|
|
184
|
-
panel.addControl(header);
|
|
185
|
-
return panel;
|
|
186
|
-
};
|
|
187
|
-
__decorate([
|
|
188
|
-
serialize()
|
|
189
|
-
], RadioButton.prototype, "thickness", null);
|
|
190
|
-
__decorate([
|
|
191
|
-
serialize()
|
|
192
|
-
], RadioButton.prototype, "group", void 0);
|
|
193
|
-
__decorate([
|
|
194
|
-
serialize()
|
|
195
|
-
], RadioButton.prototype, "checkSizeRatio", null);
|
|
196
|
-
__decorate([
|
|
197
|
-
serialize()
|
|
198
|
-
], RadioButton.prototype, "background", null);
|
|
199
|
-
__decorate([
|
|
200
|
-
serialize()
|
|
201
|
-
], RadioButton.prototype, "isChecked", null);
|
|
202
|
-
return RadioButton;
|
|
203
|
-
}(Control));
|
|
204
|
-
export { RadioButton };
|
|
205
|
-
RegisterClass("BABYLON.GUI.RadioButton", RadioButton);
|
|
1
|
+
import { __decorate, __extends } from "tslib";
|
|
2
|
+
import { Observable } from "@babylonjs/core/Misc/observable.js";
|
|
3
|
+
import { Control } from "./control.js";
|
|
4
|
+
import { StackPanel } from "./stackPanel.js";
|
|
5
|
+
import { TextBlock } from "./textBlock.js";
|
|
6
|
+
import { RegisterClass } from "@babylonjs/core/Misc/typeStore.js";
|
|
7
|
+
import { serialize } from "@babylonjs/core/Misc/decorators.js";
|
|
8
|
+
/**
|
|
9
|
+
* Class used to create radio button controls
|
|
10
|
+
*/
|
|
11
|
+
var RadioButton = /** @class */ (function (_super) {
|
|
12
|
+
__extends(RadioButton, _super);
|
|
13
|
+
/**
|
|
14
|
+
* Creates a new RadioButton
|
|
15
|
+
* @param name defines the control name
|
|
16
|
+
*/
|
|
17
|
+
function RadioButton(name) {
|
|
18
|
+
var _this = _super.call(this, name) || this;
|
|
19
|
+
_this.name = name;
|
|
20
|
+
_this._isChecked = false;
|
|
21
|
+
_this._background = "black";
|
|
22
|
+
_this._checkSizeRatio = 0.8;
|
|
23
|
+
_this._thickness = 1;
|
|
24
|
+
/** Gets or sets group name */
|
|
25
|
+
_this.group = "";
|
|
26
|
+
/** Observable raised when isChecked is changed */
|
|
27
|
+
_this.onIsCheckedChangedObservable = new Observable();
|
|
28
|
+
_this.isPointerBlocker = true;
|
|
29
|
+
return _this;
|
|
30
|
+
}
|
|
31
|
+
Object.defineProperty(RadioButton.prototype, "thickness", {
|
|
32
|
+
/** Gets or sets border thickness */
|
|
33
|
+
get: function () {
|
|
34
|
+
return this._thickness;
|
|
35
|
+
},
|
|
36
|
+
set: function (value) {
|
|
37
|
+
if (this._thickness === value) {
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
this._thickness = value;
|
|
41
|
+
this._markAsDirty();
|
|
42
|
+
},
|
|
43
|
+
enumerable: false,
|
|
44
|
+
configurable: true
|
|
45
|
+
});
|
|
46
|
+
Object.defineProperty(RadioButton.prototype, "checkSizeRatio", {
|
|
47
|
+
/** Gets or sets a value indicating the ratio between overall size and check size */
|
|
48
|
+
get: function () {
|
|
49
|
+
return this._checkSizeRatio;
|
|
50
|
+
},
|
|
51
|
+
set: function (value) {
|
|
52
|
+
value = Math.max(Math.min(1, value), 0);
|
|
53
|
+
if (this._checkSizeRatio === value) {
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
this._checkSizeRatio = value;
|
|
57
|
+
this._markAsDirty();
|
|
58
|
+
},
|
|
59
|
+
enumerable: false,
|
|
60
|
+
configurable: true
|
|
61
|
+
});
|
|
62
|
+
Object.defineProperty(RadioButton.prototype, "background", {
|
|
63
|
+
/** Gets or sets background color */
|
|
64
|
+
get: function () {
|
|
65
|
+
return this._background;
|
|
66
|
+
},
|
|
67
|
+
set: function (value) {
|
|
68
|
+
if (this._background === value) {
|
|
69
|
+
return;
|
|
70
|
+
}
|
|
71
|
+
this._background = value;
|
|
72
|
+
this._markAsDirty();
|
|
73
|
+
},
|
|
74
|
+
enumerable: false,
|
|
75
|
+
configurable: true
|
|
76
|
+
});
|
|
77
|
+
Object.defineProperty(RadioButton.prototype, "isChecked", {
|
|
78
|
+
/** Gets or sets a boolean indicating if the checkbox is checked or not */
|
|
79
|
+
get: function () {
|
|
80
|
+
return this._isChecked;
|
|
81
|
+
},
|
|
82
|
+
set: function (value) {
|
|
83
|
+
var _this = this;
|
|
84
|
+
if (this._isChecked === value) {
|
|
85
|
+
return;
|
|
86
|
+
}
|
|
87
|
+
this._isChecked = value;
|
|
88
|
+
this._markAsDirty();
|
|
89
|
+
this.onIsCheckedChangedObservable.notifyObservers(value);
|
|
90
|
+
if (this._isChecked && this._host) {
|
|
91
|
+
// Update all controls from same group
|
|
92
|
+
this._host.executeOnAllControls(function (control) {
|
|
93
|
+
if (control === _this) {
|
|
94
|
+
return;
|
|
95
|
+
}
|
|
96
|
+
if (control.group === undefined) {
|
|
97
|
+
return;
|
|
98
|
+
}
|
|
99
|
+
var childRadio = control;
|
|
100
|
+
if (childRadio.group === _this.group) {
|
|
101
|
+
childRadio.isChecked = false;
|
|
102
|
+
}
|
|
103
|
+
});
|
|
104
|
+
}
|
|
105
|
+
},
|
|
106
|
+
enumerable: false,
|
|
107
|
+
configurable: true
|
|
108
|
+
});
|
|
109
|
+
RadioButton.prototype._getTypeName = function () {
|
|
110
|
+
return "RadioButton";
|
|
111
|
+
};
|
|
112
|
+
RadioButton.prototype._draw = function (context) {
|
|
113
|
+
context.save();
|
|
114
|
+
this._applyStates(context);
|
|
115
|
+
var actualWidth = this._currentMeasure.width - this._thickness;
|
|
116
|
+
var actualHeight = this._currentMeasure.height - this._thickness;
|
|
117
|
+
if (this.shadowBlur || this.shadowOffsetX || this.shadowOffsetY) {
|
|
118
|
+
context.shadowColor = this.shadowColor;
|
|
119
|
+
context.shadowBlur = this.shadowBlur;
|
|
120
|
+
context.shadowOffsetX = this.shadowOffsetX;
|
|
121
|
+
context.shadowOffsetY = this.shadowOffsetY;
|
|
122
|
+
}
|
|
123
|
+
// Outer
|
|
124
|
+
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);
|
|
125
|
+
context.fillStyle = this._isEnabled ? this._background : this._disabledColor;
|
|
126
|
+
context.fill();
|
|
127
|
+
if (this.shadowBlur || this.shadowOffsetX || this.shadowOffsetY) {
|
|
128
|
+
context.shadowBlur = 0;
|
|
129
|
+
context.shadowOffsetX = 0;
|
|
130
|
+
context.shadowOffsetY = 0;
|
|
131
|
+
}
|
|
132
|
+
context.strokeStyle = this.color;
|
|
133
|
+
context.lineWidth = this._thickness;
|
|
134
|
+
context.stroke();
|
|
135
|
+
// Inner
|
|
136
|
+
if (this._isChecked) {
|
|
137
|
+
context.fillStyle = this._isEnabled ? this.color : this._disabledColor;
|
|
138
|
+
var offsetWidth = actualWidth * this._checkSizeRatio;
|
|
139
|
+
var offseHeight = actualHeight * this._checkSizeRatio;
|
|
140
|
+
Control.drawEllipse(this._currentMeasure.left + this._currentMeasure.width / 2, this._currentMeasure.top + this._currentMeasure.height / 2, offsetWidth / 2 - this._thickness / 2, offseHeight / 2 - this._thickness / 2, context);
|
|
141
|
+
context.fill();
|
|
142
|
+
}
|
|
143
|
+
context.restore();
|
|
144
|
+
};
|
|
145
|
+
// Events
|
|
146
|
+
RadioButton.prototype._onPointerDown = function (target, coordinates, pointerId, buttonIndex, pi) {
|
|
147
|
+
if (!_super.prototype._onPointerDown.call(this, target, coordinates, pointerId, buttonIndex, pi)) {
|
|
148
|
+
return false;
|
|
149
|
+
}
|
|
150
|
+
if (this.isReadOnly) {
|
|
151
|
+
return true;
|
|
152
|
+
}
|
|
153
|
+
if (!this.isChecked) {
|
|
154
|
+
this.isChecked = true;
|
|
155
|
+
}
|
|
156
|
+
return true;
|
|
157
|
+
};
|
|
158
|
+
/**
|
|
159
|
+
* Utility function to easily create a radio button with a header
|
|
160
|
+
* @param title defines the label to use for the header
|
|
161
|
+
* @param group defines the group to use for the radio button
|
|
162
|
+
* @param isChecked defines the initial state of the radio button
|
|
163
|
+
* @param onValueChanged defines the callback to call when value changes
|
|
164
|
+
* @returns a StackPanel containing the radio button and a textBlock
|
|
165
|
+
*/
|
|
166
|
+
RadioButton.AddRadioButtonWithHeader = function (title, group, isChecked, onValueChanged) {
|
|
167
|
+
var panel = new StackPanel();
|
|
168
|
+
panel.isVertical = false;
|
|
169
|
+
panel.height = "30px";
|
|
170
|
+
var radio = new RadioButton();
|
|
171
|
+
radio.width = "20px";
|
|
172
|
+
radio.height = "20px";
|
|
173
|
+
radio.isChecked = isChecked;
|
|
174
|
+
radio.color = "green";
|
|
175
|
+
radio.group = group;
|
|
176
|
+
radio.onIsCheckedChangedObservable.add(function (value) { return onValueChanged(radio, value); });
|
|
177
|
+
panel.addControl(radio);
|
|
178
|
+
var header = new TextBlock();
|
|
179
|
+
header.text = title;
|
|
180
|
+
header.width = "180px";
|
|
181
|
+
header.paddingLeft = "5px";
|
|
182
|
+
header.textHorizontalAlignment = Control.HORIZONTAL_ALIGNMENT_LEFT;
|
|
183
|
+
header.color = "white";
|
|
184
|
+
panel.addControl(header);
|
|
185
|
+
return panel;
|
|
186
|
+
};
|
|
187
|
+
__decorate([
|
|
188
|
+
serialize()
|
|
189
|
+
], RadioButton.prototype, "thickness", null);
|
|
190
|
+
__decorate([
|
|
191
|
+
serialize()
|
|
192
|
+
], RadioButton.prototype, "group", void 0);
|
|
193
|
+
__decorate([
|
|
194
|
+
serialize()
|
|
195
|
+
], RadioButton.prototype, "checkSizeRatio", null);
|
|
196
|
+
__decorate([
|
|
197
|
+
serialize()
|
|
198
|
+
], RadioButton.prototype, "background", null);
|
|
199
|
+
__decorate([
|
|
200
|
+
serialize()
|
|
201
|
+
], RadioButton.prototype, "isChecked", null);
|
|
202
|
+
return RadioButton;
|
|
203
|
+
}(Control));
|
|
204
|
+
export { RadioButton };
|
|
205
|
+
RegisterClass("BABYLON.GUI.RadioButton", RadioButton);
|
|
206
206
|
//# sourceMappingURL=radioButton.js.map
|