@babylonjs/gui 5.0.0-rc.5 → 5.0.0-rc.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/2D/adtInstrumentation.d.ts +52 -52
- package/2D/adtInstrumentation.js +126 -126
- package/2D/advancedDynamicTexture.d.ts +448 -448
- package/2D/advancedDynamicTexture.js +1318 -1318
- package/2D/controls/button.d.ts +135 -135
- package/2D/controls/button.js +276 -276
- package/2D/controls/checkbox.d.ts +59 -59
- package/2D/controls/checkbox.js +188 -188
- package/2D/controls/colorpicker.d.ts +103 -103
- package/2D/controls/colorpicker.js +1417 -1417
- package/2D/controls/container.d.ts +175 -175
- package/2D/controls/container.js +570 -570
- package/2D/controls/control.d.ts +866 -866
- package/2D/controls/control.js +2433 -2433
- package/2D/controls/displayGrid.d.ts +53 -53
- package/2D/controls/displayGrid.js +245 -245
- package/2D/controls/ellipse.d.ts +21 -21
- package/2D/controls/ellipse.js +85 -85
- package/2D/controls/focusableButton.d.ts +59 -59
- package/2D/controls/focusableButton.js +99 -99
- package/2D/controls/focusableControl.d.ts +34 -34
- package/2D/controls/focusableControl.js +1 -1
- package/2D/controls/grid.d.ts +139 -139
- package/2D/controls/grid.js +529 -529
- package/2D/controls/image.d.ts +204 -204
- package/2D/controls/image.js +887 -887
- package/2D/controls/index.d.ts +29 -29
- package/2D/controls/index.js +29 -29
- package/2D/controls/inputPassword.d.ts +8 -8
- package/2D/controls/inputPassword.js +25 -25
- package/2D/controls/inputText.d.ts +201 -201
- package/2D/controls/inputText.js +1119 -1119
- package/2D/controls/line.d.ts +66 -66
- package/2D/controls/line.js +271 -271
- package/2D/controls/multiLine.d.ts +75 -75
- package/2D/controls/multiLine.js +262 -262
- package/2D/controls/radioButton.d.ts +49 -49
- package/2D/controls/radioButton.js +205 -205
- package/2D/controls/rectangle.d.ts +29 -29
- package/2D/controls/rectangle.js +150 -150
- package/2D/controls/scrollViewers/scrollViewer.d.ts +182 -182
- package/2D/controls/scrollViewers/scrollViewer.js +677 -677
- package/2D/controls/scrollViewers/scrollViewerWindow.d.ts +57 -57
- package/2D/controls/scrollViewers/scrollViewerWindow.js +278 -278
- 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/imageBasedSlider.d.ts +49 -49
- package/2D/controls/sliders/imageBasedSlider.js +192 -192
- package/2D/controls/sliders/imageScrollBar.d.ts +65 -65
- package/2D/controls/sliders/imageScrollBar.js +263 -263
- package/2D/controls/sliders/scrollBar.d.ts +38 -38
- package/2D/controls/sliders/scrollBar.js +143 -143
- package/2D/controls/sliders/slider.d.ts +35 -35
- package/2D/controls/sliders/slider.js +271 -271
- package/2D/controls/stackPanel.d.ts +64 -64
- package/2D/controls/stackPanel.js +246 -246
- 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/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/virtualKeyboard.d.ts +96 -96
- package/2D/controls/virtualKeyboard.js +256 -256
- package/2D/index.d.ts +9 -9
- package/2D/index.js +9 -9
- package/2D/math2D.d.ts +117 -117
- package/2D/math2D.js +221 -221
- package/2D/measure.d.ts +77 -77
- package/2D/measure.js +139 -139
- package/2D/multiLinePoint.d.ts +47 -47
- package/2D/multiLinePoint.js +127 -127
- package/2D/style.d.ts +46 -46
- package/2D/style.js +97 -97
- package/2D/valueAndUnit.d.ts +89 -89
- package/2D/valueAndUnit.js +226 -226
- package/2D/xmlLoader.d.ts +60 -60
- package/2D/xmlLoader.js +348 -348
- package/3D/behaviors/defaultBehavior.d.ts +73 -73
- package/3D/behaviors/defaultBehavior.js +121 -121
- package/3D/controls/abstractButton3D.d.ts +15 -15
- package/3D/controls/abstractButton3D.js +25 -25
- package/3D/controls/button3D.d.ts +30 -30
- package/3D/controls/button3D.js +93 -93
- package/3D/controls/container3D.d.ts +72 -72
- package/3D/controls/container3D.js +139 -139
- package/3D/controls/contentDisplay3D.d.ts +30 -30
- package/3D/controls/contentDisplay3D.js +79 -79
- package/3D/controls/control3D.d.ts +201 -201
- package/3D/controls/control3D.js +445 -445
- package/3D/controls/cylinderPanel.d.ts +17 -17
- package/3D/controls/cylinderPanel.js +66 -66
- package/3D/controls/handMenu.d.ts +28 -28
- package/3D/controls/handMenu.js +47 -47
- package/3D/controls/holographicBackplate.d.ts +49 -49
- package/3D/controls/holographicBackplate.js +120 -120
- package/3D/controls/holographicButton.d.ts +84 -84
- package/3D/controls/holographicButton.js +339 -339
- package/3D/controls/holographicSlate.d.ts +131 -131
- package/3D/controls/holographicSlate.js +431 -431
- 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/nearMenu.d.ts +44 -44
- package/3D/controls/nearMenu.js +114 -114
- package/3D/controls/planePanel.d.ts +9 -9
- package/3D/controls/planePanel.js +36 -36
- package/3D/controls/scatterPanel.d.ts +18 -18
- package/3D/controls/scatterPanel.js +108 -108
- package/3D/controls/slider3D.d.ts +81 -81
- package/3D/controls/slider3D.js +268 -268
- package/3D/controls/spherePanel.d.ts +17 -17
- package/3D/controls/spherePanel.js +67 -67
- 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/touchHolographicButton.d.ts +110 -110
- package/3D/controls/touchHolographicButton.js +445 -445
- package/3D/controls/touchHolographicMenu.d.ts +61 -61
- package/3D/controls/touchHolographicMenu.js +149 -149
- package/3D/controls/touchMeshButton3D.d.ts +21 -21
- package/3D/controls/touchMeshButton3D.js +62 -62
- package/3D/controls/volumeBasedPanel.d.ts +53 -53
- package/3D/controls/volumeBasedPanel.js +174 -174
- package/3D/gizmos/gizmoHandle.d.ts +108 -108
- package/3D/gizmos/gizmoHandle.js +209 -209
- 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/gui3DManager.d.ts +94 -94
- package/3D/gui3DManager.js +257 -257
- package/3D/index.d.ts +5 -5
- package/3D/index.js +5 -5
- package/3D/materials/fluent/fluentMaterial.d.ts +90 -90
- package/3D/materials/fluent/fluentMaterial.js +292 -292
- 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 +154 -154
- package/3D/materials/fluentBackplate/fluentBackplateMaterial.js +469 -469
- 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 +189 -189
- package/3D/materials/fluentButton/fluentButtonMaterial.js +539 -539
- 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/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 +5 -5
- package/3D/materials/mrdl/index.d.ts +3 -3
- package/3D/materials/mrdl/index.js +3 -3
- package/3D/materials/mrdl/mrdlBackplateMaterial.d.ts +147 -147
- package/3D/materials/mrdl/mrdlBackplateMaterial.js +436 -436
- package/3D/materials/mrdl/mrdlSliderBarMaterial.d.ts +333 -333
- package/3D/materials/mrdl/mrdlSliderBarMaterial.js +851 -851
- package/3D/materials/mrdl/mrdlSliderThumbMaterial.d.ts +333 -333
- package/3D/materials/mrdl/mrdlSliderThumbMaterial.js +851 -851
- 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 +2 -2
- package/legacy/legacy.d.ts +1 -1
- package/legacy/legacy.js +13 -13
- package/package.json +2 -2
|
@@ -1,75 +1,75 @@
|
|
|
1
|
-
import { AbstractMesh } from "@babylonjs/core/Meshes/abstractMesh.js";
|
|
2
|
-
import { Control } from "./control";
|
|
3
|
-
import { MultiLinePoint } from "../multiLinePoint";
|
|
4
|
-
import { ICanvasRenderingContext } from "@babylonjs/core/Engines/ICanvas.js";
|
|
5
|
-
/**
|
|
6
|
-
* Class used to create multi line control
|
|
7
|
-
*/
|
|
8
|
-
export declare class MultiLine extends Control {
|
|
9
|
-
name?: string | undefined;
|
|
10
|
-
private _lineWidth;
|
|
11
|
-
private _dash;
|
|
12
|
-
private _points;
|
|
13
|
-
private _minX;
|
|
14
|
-
private _minY;
|
|
15
|
-
private _maxX;
|
|
16
|
-
private _maxY;
|
|
17
|
-
/**
|
|
18
|
-
* Creates a new MultiLine
|
|
19
|
-
* @param name defines the control name
|
|
20
|
-
*/
|
|
21
|
-
constructor(name?: string | undefined);
|
|
22
|
-
/** Gets or sets dash pattern */
|
|
23
|
-
get dash(): Array<number>;
|
|
24
|
-
set dash(value: Array<number>);
|
|
25
|
-
/**
|
|
26
|
-
* Gets point stored at specified index
|
|
27
|
-
* @param index defines the index to look for
|
|
28
|
-
* @returns the requested point if found
|
|
29
|
-
*/
|
|
30
|
-
getAt(index: number): MultiLinePoint;
|
|
31
|
-
/** Function called when a point is updated */
|
|
32
|
-
onPointUpdate: () => void;
|
|
33
|
-
/**
|
|
34
|
-
* Adds new points to the point collection
|
|
35
|
-
* @param items defines the list of items (mesh, control or 2d coordinates) to add
|
|
36
|
-
* @returns the list of created MultiLinePoint
|
|
37
|
-
*/
|
|
38
|
-
add(...items: (AbstractMesh | Control | {
|
|
39
|
-
x: string | number;
|
|
40
|
-
y: string | number;
|
|
41
|
-
})[]): MultiLinePoint[];
|
|
42
|
-
/**
|
|
43
|
-
* Adds a new point to the point collection
|
|
44
|
-
* @param item defines the item (mesh, control or 2d coordinates) to add
|
|
45
|
-
* @returns the created MultiLinePoint
|
|
46
|
-
*/
|
|
47
|
-
push(item?: AbstractMesh | Control | {
|
|
48
|
-
x: string | number;
|
|
49
|
-
y: string | number;
|
|
50
|
-
}): MultiLinePoint;
|
|
51
|
-
/**
|
|
52
|
-
* Remove a specific value or point from the active point collection
|
|
53
|
-
* @param value defines the value or point to remove
|
|
54
|
-
*/
|
|
55
|
-
remove(value: number | MultiLinePoint): void;
|
|
56
|
-
/**
|
|
57
|
-
* Resets this object to initial state (no point)
|
|
58
|
-
*/
|
|
59
|
-
reset(): void;
|
|
60
|
-
/**
|
|
61
|
-
* Resets all links
|
|
62
|
-
*/
|
|
63
|
-
resetLinks(): void;
|
|
64
|
-
/** Gets or sets line width */
|
|
65
|
-
get lineWidth(): number;
|
|
66
|
-
set lineWidth(value: number);
|
|
67
|
-
set horizontalAlignment(value: number);
|
|
68
|
-
set verticalAlignment(value: number);
|
|
69
|
-
protected _getTypeName(): string;
|
|
70
|
-
_draw(context: ICanvasRenderingContext): void;
|
|
71
|
-
protected _additionalProcessing(): void;
|
|
72
|
-
_measure(): void;
|
|
73
|
-
protected _computeAlignment(): void;
|
|
74
|
-
dispose(): void;
|
|
75
|
-
}
|
|
1
|
+
import { AbstractMesh } from "@babylonjs/core/Meshes/abstractMesh.js";
|
|
2
|
+
import { Control } from "./control";
|
|
3
|
+
import { MultiLinePoint } from "../multiLinePoint";
|
|
4
|
+
import { ICanvasRenderingContext } from "@babylonjs/core/Engines/ICanvas.js";
|
|
5
|
+
/**
|
|
6
|
+
* Class used to create multi line control
|
|
7
|
+
*/
|
|
8
|
+
export declare class MultiLine extends Control {
|
|
9
|
+
name?: string | undefined;
|
|
10
|
+
private _lineWidth;
|
|
11
|
+
private _dash;
|
|
12
|
+
private _points;
|
|
13
|
+
private _minX;
|
|
14
|
+
private _minY;
|
|
15
|
+
private _maxX;
|
|
16
|
+
private _maxY;
|
|
17
|
+
/**
|
|
18
|
+
* Creates a new MultiLine
|
|
19
|
+
* @param name defines the control name
|
|
20
|
+
*/
|
|
21
|
+
constructor(name?: string | undefined);
|
|
22
|
+
/** Gets or sets dash pattern */
|
|
23
|
+
get dash(): Array<number>;
|
|
24
|
+
set dash(value: Array<number>);
|
|
25
|
+
/**
|
|
26
|
+
* Gets point stored at specified index
|
|
27
|
+
* @param index defines the index to look for
|
|
28
|
+
* @returns the requested point if found
|
|
29
|
+
*/
|
|
30
|
+
getAt(index: number): MultiLinePoint;
|
|
31
|
+
/** Function called when a point is updated */
|
|
32
|
+
onPointUpdate: () => void;
|
|
33
|
+
/**
|
|
34
|
+
* Adds new points to the point collection
|
|
35
|
+
* @param items defines the list of items (mesh, control or 2d coordinates) to add
|
|
36
|
+
* @returns the list of created MultiLinePoint
|
|
37
|
+
*/
|
|
38
|
+
add(...items: (AbstractMesh | Control | {
|
|
39
|
+
x: string | number;
|
|
40
|
+
y: string | number;
|
|
41
|
+
})[]): MultiLinePoint[];
|
|
42
|
+
/**
|
|
43
|
+
* Adds a new point to the point collection
|
|
44
|
+
* @param item defines the item (mesh, control or 2d coordinates) to add
|
|
45
|
+
* @returns the created MultiLinePoint
|
|
46
|
+
*/
|
|
47
|
+
push(item?: AbstractMesh | Control | {
|
|
48
|
+
x: string | number;
|
|
49
|
+
y: string | number;
|
|
50
|
+
}): MultiLinePoint;
|
|
51
|
+
/**
|
|
52
|
+
* Remove a specific value or point from the active point collection
|
|
53
|
+
* @param value defines the value or point to remove
|
|
54
|
+
*/
|
|
55
|
+
remove(value: number | MultiLinePoint): void;
|
|
56
|
+
/**
|
|
57
|
+
* Resets this object to initial state (no point)
|
|
58
|
+
*/
|
|
59
|
+
reset(): void;
|
|
60
|
+
/**
|
|
61
|
+
* Resets all links
|
|
62
|
+
*/
|
|
63
|
+
resetLinks(): void;
|
|
64
|
+
/** Gets or sets line width */
|
|
65
|
+
get lineWidth(): number;
|
|
66
|
+
set lineWidth(value: number);
|
|
67
|
+
set horizontalAlignment(value: number);
|
|
68
|
+
set verticalAlignment(value: number);
|
|
69
|
+
protected _getTypeName(): string;
|
|
70
|
+
_draw(context: ICanvasRenderingContext): void;
|
|
71
|
+
protected _additionalProcessing(): void;
|
|
72
|
+
_measure(): void;
|
|
73
|
+
protected _computeAlignment(): void;
|
|
74
|
+
dispose(): void;
|
|
75
|
+
}
|
package/2D/controls/multiLine.js
CHANGED
|
@@ -1,263 +1,263 @@
|
|
|
1
|
-
import { __decorate, __extends } from "tslib";
|
|
2
|
-
import { AbstractMesh } from "@babylonjs/core/Meshes/abstractMesh.js";
|
|
3
|
-
import { Control } from "./control
|
|
4
|
-
import { MultiLinePoint } from "../multiLinePoint
|
|
5
|
-
import { RegisterClass } from "@babylonjs/core/Misc/typeStore.js";
|
|
6
|
-
import { serialize } from "@babylonjs/core/Misc/decorators.js";
|
|
7
|
-
/**
|
|
8
|
-
* Class used to create multi line control
|
|
9
|
-
*/
|
|
10
|
-
var MultiLine = /** @class */ (function (_super) {
|
|
11
|
-
__extends(MultiLine, _super);
|
|
12
|
-
/**
|
|
13
|
-
* Creates a new MultiLine
|
|
14
|
-
* @param name defines the control name
|
|
15
|
-
*/
|
|
16
|
-
function MultiLine(name) {
|
|
17
|
-
var _this = _super.call(this, name) || this;
|
|
18
|
-
_this.name = name;
|
|
19
|
-
_this._lineWidth = 1;
|
|
20
|
-
/** Function called when a point is updated */
|
|
21
|
-
_this.onPointUpdate = function () {
|
|
22
|
-
_this._markAsDirty();
|
|
23
|
-
};
|
|
24
|
-
_this._automaticSize = true;
|
|
25
|
-
_this.isHitTestVisible = false;
|
|
26
|
-
_this._horizontalAlignment = Control.HORIZONTAL_ALIGNMENT_LEFT;
|
|
27
|
-
_this._verticalAlignment = Control.VERTICAL_ALIGNMENT_TOP;
|
|
28
|
-
_this._dash = [];
|
|
29
|
-
_this._points = [];
|
|
30
|
-
return _this;
|
|
31
|
-
}
|
|
32
|
-
Object.defineProperty(MultiLine.prototype, "dash", {
|
|
33
|
-
/** Gets or sets dash pattern */
|
|
34
|
-
get: function () {
|
|
35
|
-
return this._dash;
|
|
36
|
-
},
|
|
37
|
-
set: function (value) {
|
|
38
|
-
if (this._dash === value) {
|
|
39
|
-
return;
|
|
40
|
-
}
|
|
41
|
-
this._dash = value;
|
|
42
|
-
this._markAsDirty();
|
|
43
|
-
},
|
|
44
|
-
enumerable: false,
|
|
45
|
-
configurable: true
|
|
46
|
-
});
|
|
47
|
-
/**
|
|
48
|
-
* Gets point stored at specified index
|
|
49
|
-
* @param index defines the index to look for
|
|
50
|
-
* @returns the requested point if found
|
|
51
|
-
*/
|
|
52
|
-
MultiLine.prototype.getAt = function (index) {
|
|
53
|
-
if (!this._points[index]) {
|
|
54
|
-
this._points[index] = new MultiLinePoint(this);
|
|
55
|
-
}
|
|
56
|
-
return this._points[index];
|
|
57
|
-
};
|
|
58
|
-
/**
|
|
59
|
-
* Adds new points to the point collection
|
|
60
|
-
* @param items defines the list of items (mesh, control or 2d coordinates) to add
|
|
61
|
-
* @returns the list of created MultiLinePoint
|
|
62
|
-
*/
|
|
63
|
-
MultiLine.prototype.add = function () {
|
|
64
|
-
var _this = this;
|
|
65
|
-
var items = [];
|
|
66
|
-
for (var _i = 0; _i < arguments.length; _i++) {
|
|
67
|
-
items[_i] = arguments[_i];
|
|
68
|
-
}
|
|
69
|
-
return items.map(function (item) { return _this.push(item); });
|
|
70
|
-
};
|
|
71
|
-
/**
|
|
72
|
-
* Adds a new point to the point collection
|
|
73
|
-
* @param item defines the item (mesh, control or 2d coordinates) to add
|
|
74
|
-
* @returns the created MultiLinePoint
|
|
75
|
-
*/
|
|
76
|
-
MultiLine.prototype.push = function (item) {
|
|
77
|
-
var point = this.getAt(this._points.length);
|
|
78
|
-
if (item == null) {
|
|
79
|
-
return point;
|
|
80
|
-
}
|
|
81
|
-
if (item instanceof AbstractMesh) {
|
|
82
|
-
point.mesh = item;
|
|
83
|
-
}
|
|
84
|
-
else if (item instanceof Control) {
|
|
85
|
-
point.control = item;
|
|
86
|
-
}
|
|
87
|
-
else if (item.x != null && item.y != null) {
|
|
88
|
-
point.x = item.x;
|
|
89
|
-
point.y = item.y;
|
|
90
|
-
}
|
|
91
|
-
return point;
|
|
92
|
-
};
|
|
93
|
-
/**
|
|
94
|
-
* Remove a specific value or point from the active point collection
|
|
95
|
-
* @param value defines the value or point to remove
|
|
96
|
-
*/
|
|
97
|
-
MultiLine.prototype.remove = function (value) {
|
|
98
|
-
var index;
|
|
99
|
-
if (value instanceof MultiLinePoint) {
|
|
100
|
-
index = this._points.indexOf(value);
|
|
101
|
-
if (index === -1) {
|
|
102
|
-
return;
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
else {
|
|
106
|
-
index = value;
|
|
107
|
-
}
|
|
108
|
-
var point = this._points[index];
|
|
109
|
-
if (!point) {
|
|
110
|
-
return;
|
|
111
|
-
}
|
|
112
|
-
point.dispose();
|
|
113
|
-
this._points.splice(index, 1);
|
|
114
|
-
};
|
|
115
|
-
/**
|
|
116
|
-
* Resets this object to initial state (no point)
|
|
117
|
-
*/
|
|
118
|
-
MultiLine.prototype.reset = function () {
|
|
119
|
-
while (this._points.length > 0) {
|
|
120
|
-
this.remove(this._points.length - 1);
|
|
121
|
-
}
|
|
122
|
-
};
|
|
123
|
-
/**
|
|
124
|
-
* Resets all links
|
|
125
|
-
*/
|
|
126
|
-
MultiLine.prototype.resetLinks = function () {
|
|
127
|
-
this._points.forEach(function (point) {
|
|
128
|
-
if (point != null) {
|
|
129
|
-
point.resetLinks();
|
|
130
|
-
}
|
|
131
|
-
});
|
|
132
|
-
};
|
|
133
|
-
Object.defineProperty(MultiLine.prototype, "lineWidth", {
|
|
134
|
-
/** Gets or sets line width */
|
|
135
|
-
get: function () {
|
|
136
|
-
return this._lineWidth;
|
|
137
|
-
},
|
|
138
|
-
set: function (value) {
|
|
139
|
-
if (this._lineWidth === value) {
|
|
140
|
-
return;
|
|
141
|
-
}
|
|
142
|
-
this._lineWidth = value;
|
|
143
|
-
this._markAsDirty();
|
|
144
|
-
},
|
|
145
|
-
enumerable: false,
|
|
146
|
-
configurable: true
|
|
147
|
-
});
|
|
148
|
-
Object.defineProperty(MultiLine.prototype, "horizontalAlignment", {
|
|
149
|
-
set: function (value) {
|
|
150
|
-
return;
|
|
151
|
-
},
|
|
152
|
-
enumerable: false,
|
|
153
|
-
configurable: true
|
|
154
|
-
});
|
|
155
|
-
Object.defineProperty(MultiLine.prototype, "verticalAlignment", {
|
|
156
|
-
set: function (value) {
|
|
157
|
-
return;
|
|
158
|
-
},
|
|
159
|
-
enumerable: false,
|
|
160
|
-
configurable: true
|
|
161
|
-
});
|
|
162
|
-
MultiLine.prototype._getTypeName = function () {
|
|
163
|
-
return "MultiLine";
|
|
164
|
-
};
|
|
165
|
-
MultiLine.prototype._draw = function (context) {
|
|
166
|
-
context.save();
|
|
167
|
-
if (this.shadowBlur || this.shadowOffsetX || this.shadowOffsetY) {
|
|
168
|
-
context.shadowColor = this.shadowColor;
|
|
169
|
-
context.shadowBlur = this.shadowBlur;
|
|
170
|
-
context.shadowOffsetX = this.shadowOffsetX;
|
|
171
|
-
context.shadowOffsetY = this.shadowOffsetY;
|
|
172
|
-
}
|
|
173
|
-
this._applyStates(context);
|
|
174
|
-
context.strokeStyle = this.color;
|
|
175
|
-
context.lineWidth = this._lineWidth;
|
|
176
|
-
context.setLineDash(this._dash);
|
|
177
|
-
context.beginPath();
|
|
178
|
-
var first = true; //first index is not necessarily 0
|
|
179
|
-
var previousPoint;
|
|
180
|
-
this._points.forEach(function (point) {
|
|
181
|
-
if (!point) {
|
|
182
|
-
return;
|
|
183
|
-
}
|
|
184
|
-
if (first) {
|
|
185
|
-
context.moveTo(point._point.x, point._point.y);
|
|
186
|
-
first = false;
|
|
187
|
-
}
|
|
188
|
-
else {
|
|
189
|
-
if (point._point.z < 1 && previousPoint.z < 1) {
|
|
190
|
-
context.lineTo(point._point.x, point._point.y);
|
|
191
|
-
}
|
|
192
|
-
else {
|
|
193
|
-
context.moveTo(point._point.x, point._point.y);
|
|
194
|
-
}
|
|
195
|
-
}
|
|
196
|
-
previousPoint = point._point;
|
|
197
|
-
});
|
|
198
|
-
context.stroke();
|
|
199
|
-
context.restore();
|
|
200
|
-
};
|
|
201
|
-
MultiLine.prototype._additionalProcessing = function () {
|
|
202
|
-
var _this = this;
|
|
203
|
-
this._minX = null;
|
|
204
|
-
this._minY = null;
|
|
205
|
-
this._maxX = null;
|
|
206
|
-
this._maxY = null;
|
|
207
|
-
this._points.forEach(function (point) {
|
|
208
|
-
if (!point) {
|
|
209
|
-
return;
|
|
210
|
-
}
|
|
211
|
-
point.translate();
|
|
212
|
-
if (_this._minX == null || point._point.x < _this._minX) {
|
|
213
|
-
_this._minX = point._point.x;
|
|
214
|
-
}
|
|
215
|
-
if (_this._minY == null || point._point.y < _this._minY) {
|
|
216
|
-
_this._minY = point._point.y;
|
|
217
|
-
}
|
|
218
|
-
if (_this._maxX == null || point._point.x > _this._maxX) {
|
|
219
|
-
_this._maxX = point._point.x;
|
|
220
|
-
}
|
|
221
|
-
if (_this._maxY == null || point._point.y > _this._maxY) {
|
|
222
|
-
_this._maxY = point._point.y;
|
|
223
|
-
}
|
|
224
|
-
});
|
|
225
|
-
if (this._minX == null) {
|
|
226
|
-
this._minX = 0;
|
|
227
|
-
}
|
|
228
|
-
if (this._minY == null) {
|
|
229
|
-
this._minY = 0;
|
|
230
|
-
}
|
|
231
|
-
if (this._maxX == null) {
|
|
232
|
-
this._maxX = 0;
|
|
233
|
-
}
|
|
234
|
-
if (this._maxY == null) {
|
|
235
|
-
this._maxY = 0;
|
|
236
|
-
}
|
|
237
|
-
};
|
|
238
|
-
MultiLine.prototype._measure = function () {
|
|
239
|
-
if (this._minX == null || this._maxX == null || this._minY == null || this._maxY == null) {
|
|
240
|
-
return;
|
|
241
|
-
}
|
|
242
|
-
this._currentMeasure.width = Math.abs(this._maxX - this._minX) + this._lineWidth;
|
|
243
|
-
this._currentMeasure.height = Math.abs(this._maxY - this._minY) + this._lineWidth;
|
|
244
|
-
};
|
|
245
|
-
MultiLine.prototype._computeAlignment = function () {
|
|
246
|
-
if (this._minX == null || this._minY == null) {
|
|
247
|
-
return;
|
|
248
|
-
}
|
|
249
|
-
this._currentMeasure.left = this._minX - this._lineWidth / 2;
|
|
250
|
-
this._currentMeasure.top = this._minY - this._lineWidth / 2;
|
|
251
|
-
};
|
|
252
|
-
MultiLine.prototype.dispose = function () {
|
|
253
|
-
this.reset();
|
|
254
|
-
_super.prototype.dispose.call(this);
|
|
255
|
-
};
|
|
256
|
-
__decorate([
|
|
257
|
-
serialize()
|
|
258
|
-
], MultiLine.prototype, "dash", null);
|
|
259
|
-
return MultiLine;
|
|
260
|
-
}(Control));
|
|
261
|
-
export { MultiLine };
|
|
262
|
-
RegisterClass("BABYLON.GUI.MultiLine", MultiLine);
|
|
1
|
+
import { __decorate, __extends } from "tslib";
|
|
2
|
+
import { AbstractMesh } from "@babylonjs/core/Meshes/abstractMesh.js";
|
|
3
|
+
import { Control } from "./control";
|
|
4
|
+
import { MultiLinePoint } from "../multiLinePoint";
|
|
5
|
+
import { RegisterClass } from "@babylonjs/core/Misc/typeStore.js";
|
|
6
|
+
import { serialize } from "@babylonjs/core/Misc/decorators.js";
|
|
7
|
+
/**
|
|
8
|
+
* Class used to create multi line control
|
|
9
|
+
*/
|
|
10
|
+
var MultiLine = /** @class */ (function (_super) {
|
|
11
|
+
__extends(MultiLine, _super);
|
|
12
|
+
/**
|
|
13
|
+
* Creates a new MultiLine
|
|
14
|
+
* @param name defines the control name
|
|
15
|
+
*/
|
|
16
|
+
function MultiLine(name) {
|
|
17
|
+
var _this = _super.call(this, name) || this;
|
|
18
|
+
_this.name = name;
|
|
19
|
+
_this._lineWidth = 1;
|
|
20
|
+
/** Function called when a point is updated */
|
|
21
|
+
_this.onPointUpdate = function () {
|
|
22
|
+
_this._markAsDirty();
|
|
23
|
+
};
|
|
24
|
+
_this._automaticSize = true;
|
|
25
|
+
_this.isHitTestVisible = false;
|
|
26
|
+
_this._horizontalAlignment = Control.HORIZONTAL_ALIGNMENT_LEFT;
|
|
27
|
+
_this._verticalAlignment = Control.VERTICAL_ALIGNMENT_TOP;
|
|
28
|
+
_this._dash = [];
|
|
29
|
+
_this._points = [];
|
|
30
|
+
return _this;
|
|
31
|
+
}
|
|
32
|
+
Object.defineProperty(MultiLine.prototype, "dash", {
|
|
33
|
+
/** Gets or sets dash pattern */
|
|
34
|
+
get: function () {
|
|
35
|
+
return this._dash;
|
|
36
|
+
},
|
|
37
|
+
set: function (value) {
|
|
38
|
+
if (this._dash === value) {
|
|
39
|
+
return;
|
|
40
|
+
}
|
|
41
|
+
this._dash = value;
|
|
42
|
+
this._markAsDirty();
|
|
43
|
+
},
|
|
44
|
+
enumerable: false,
|
|
45
|
+
configurable: true
|
|
46
|
+
});
|
|
47
|
+
/**
|
|
48
|
+
* Gets point stored at specified index
|
|
49
|
+
* @param index defines the index to look for
|
|
50
|
+
* @returns the requested point if found
|
|
51
|
+
*/
|
|
52
|
+
MultiLine.prototype.getAt = function (index) {
|
|
53
|
+
if (!this._points[index]) {
|
|
54
|
+
this._points[index] = new MultiLinePoint(this);
|
|
55
|
+
}
|
|
56
|
+
return this._points[index];
|
|
57
|
+
};
|
|
58
|
+
/**
|
|
59
|
+
* Adds new points to the point collection
|
|
60
|
+
* @param items defines the list of items (mesh, control or 2d coordinates) to add
|
|
61
|
+
* @returns the list of created MultiLinePoint
|
|
62
|
+
*/
|
|
63
|
+
MultiLine.prototype.add = function () {
|
|
64
|
+
var _this = this;
|
|
65
|
+
var items = [];
|
|
66
|
+
for (var _i = 0; _i < arguments.length; _i++) {
|
|
67
|
+
items[_i] = arguments[_i];
|
|
68
|
+
}
|
|
69
|
+
return items.map(function (item) { return _this.push(item); });
|
|
70
|
+
};
|
|
71
|
+
/**
|
|
72
|
+
* Adds a new point to the point collection
|
|
73
|
+
* @param item defines the item (mesh, control or 2d coordinates) to add
|
|
74
|
+
* @returns the created MultiLinePoint
|
|
75
|
+
*/
|
|
76
|
+
MultiLine.prototype.push = function (item) {
|
|
77
|
+
var point = this.getAt(this._points.length);
|
|
78
|
+
if (item == null) {
|
|
79
|
+
return point;
|
|
80
|
+
}
|
|
81
|
+
if (item instanceof AbstractMesh) {
|
|
82
|
+
point.mesh = item;
|
|
83
|
+
}
|
|
84
|
+
else if (item instanceof Control) {
|
|
85
|
+
point.control = item;
|
|
86
|
+
}
|
|
87
|
+
else if (item.x != null && item.y != null) {
|
|
88
|
+
point.x = item.x;
|
|
89
|
+
point.y = item.y;
|
|
90
|
+
}
|
|
91
|
+
return point;
|
|
92
|
+
};
|
|
93
|
+
/**
|
|
94
|
+
* Remove a specific value or point from the active point collection
|
|
95
|
+
* @param value defines the value or point to remove
|
|
96
|
+
*/
|
|
97
|
+
MultiLine.prototype.remove = function (value) {
|
|
98
|
+
var index;
|
|
99
|
+
if (value instanceof MultiLinePoint) {
|
|
100
|
+
index = this._points.indexOf(value);
|
|
101
|
+
if (index === -1) {
|
|
102
|
+
return;
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
else {
|
|
106
|
+
index = value;
|
|
107
|
+
}
|
|
108
|
+
var point = this._points[index];
|
|
109
|
+
if (!point) {
|
|
110
|
+
return;
|
|
111
|
+
}
|
|
112
|
+
point.dispose();
|
|
113
|
+
this._points.splice(index, 1);
|
|
114
|
+
};
|
|
115
|
+
/**
|
|
116
|
+
* Resets this object to initial state (no point)
|
|
117
|
+
*/
|
|
118
|
+
MultiLine.prototype.reset = function () {
|
|
119
|
+
while (this._points.length > 0) {
|
|
120
|
+
this.remove(this._points.length - 1);
|
|
121
|
+
}
|
|
122
|
+
};
|
|
123
|
+
/**
|
|
124
|
+
* Resets all links
|
|
125
|
+
*/
|
|
126
|
+
MultiLine.prototype.resetLinks = function () {
|
|
127
|
+
this._points.forEach(function (point) {
|
|
128
|
+
if (point != null) {
|
|
129
|
+
point.resetLinks();
|
|
130
|
+
}
|
|
131
|
+
});
|
|
132
|
+
};
|
|
133
|
+
Object.defineProperty(MultiLine.prototype, "lineWidth", {
|
|
134
|
+
/** Gets or sets line width */
|
|
135
|
+
get: function () {
|
|
136
|
+
return this._lineWidth;
|
|
137
|
+
},
|
|
138
|
+
set: function (value) {
|
|
139
|
+
if (this._lineWidth === value) {
|
|
140
|
+
return;
|
|
141
|
+
}
|
|
142
|
+
this._lineWidth = value;
|
|
143
|
+
this._markAsDirty();
|
|
144
|
+
},
|
|
145
|
+
enumerable: false,
|
|
146
|
+
configurable: true
|
|
147
|
+
});
|
|
148
|
+
Object.defineProperty(MultiLine.prototype, "horizontalAlignment", {
|
|
149
|
+
set: function (value) {
|
|
150
|
+
return;
|
|
151
|
+
},
|
|
152
|
+
enumerable: false,
|
|
153
|
+
configurable: true
|
|
154
|
+
});
|
|
155
|
+
Object.defineProperty(MultiLine.prototype, "verticalAlignment", {
|
|
156
|
+
set: function (value) {
|
|
157
|
+
return;
|
|
158
|
+
},
|
|
159
|
+
enumerable: false,
|
|
160
|
+
configurable: true
|
|
161
|
+
});
|
|
162
|
+
MultiLine.prototype._getTypeName = function () {
|
|
163
|
+
return "MultiLine";
|
|
164
|
+
};
|
|
165
|
+
MultiLine.prototype._draw = function (context) {
|
|
166
|
+
context.save();
|
|
167
|
+
if (this.shadowBlur || this.shadowOffsetX || this.shadowOffsetY) {
|
|
168
|
+
context.shadowColor = this.shadowColor;
|
|
169
|
+
context.shadowBlur = this.shadowBlur;
|
|
170
|
+
context.shadowOffsetX = this.shadowOffsetX;
|
|
171
|
+
context.shadowOffsetY = this.shadowOffsetY;
|
|
172
|
+
}
|
|
173
|
+
this._applyStates(context);
|
|
174
|
+
context.strokeStyle = this.color;
|
|
175
|
+
context.lineWidth = this._lineWidth;
|
|
176
|
+
context.setLineDash(this._dash);
|
|
177
|
+
context.beginPath();
|
|
178
|
+
var first = true; //first index is not necessarily 0
|
|
179
|
+
var previousPoint;
|
|
180
|
+
this._points.forEach(function (point) {
|
|
181
|
+
if (!point) {
|
|
182
|
+
return;
|
|
183
|
+
}
|
|
184
|
+
if (first) {
|
|
185
|
+
context.moveTo(point._point.x, point._point.y);
|
|
186
|
+
first = false;
|
|
187
|
+
}
|
|
188
|
+
else {
|
|
189
|
+
if (point._point.z < 1 && previousPoint.z < 1) {
|
|
190
|
+
context.lineTo(point._point.x, point._point.y);
|
|
191
|
+
}
|
|
192
|
+
else {
|
|
193
|
+
context.moveTo(point._point.x, point._point.y);
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
previousPoint = point._point;
|
|
197
|
+
});
|
|
198
|
+
context.stroke();
|
|
199
|
+
context.restore();
|
|
200
|
+
};
|
|
201
|
+
MultiLine.prototype._additionalProcessing = function () {
|
|
202
|
+
var _this = this;
|
|
203
|
+
this._minX = null;
|
|
204
|
+
this._minY = null;
|
|
205
|
+
this._maxX = null;
|
|
206
|
+
this._maxY = null;
|
|
207
|
+
this._points.forEach(function (point) {
|
|
208
|
+
if (!point) {
|
|
209
|
+
return;
|
|
210
|
+
}
|
|
211
|
+
point.translate();
|
|
212
|
+
if (_this._minX == null || point._point.x < _this._minX) {
|
|
213
|
+
_this._minX = point._point.x;
|
|
214
|
+
}
|
|
215
|
+
if (_this._minY == null || point._point.y < _this._minY) {
|
|
216
|
+
_this._minY = point._point.y;
|
|
217
|
+
}
|
|
218
|
+
if (_this._maxX == null || point._point.x > _this._maxX) {
|
|
219
|
+
_this._maxX = point._point.x;
|
|
220
|
+
}
|
|
221
|
+
if (_this._maxY == null || point._point.y > _this._maxY) {
|
|
222
|
+
_this._maxY = point._point.y;
|
|
223
|
+
}
|
|
224
|
+
});
|
|
225
|
+
if (this._minX == null) {
|
|
226
|
+
this._minX = 0;
|
|
227
|
+
}
|
|
228
|
+
if (this._minY == null) {
|
|
229
|
+
this._minY = 0;
|
|
230
|
+
}
|
|
231
|
+
if (this._maxX == null) {
|
|
232
|
+
this._maxX = 0;
|
|
233
|
+
}
|
|
234
|
+
if (this._maxY == null) {
|
|
235
|
+
this._maxY = 0;
|
|
236
|
+
}
|
|
237
|
+
};
|
|
238
|
+
MultiLine.prototype._measure = function () {
|
|
239
|
+
if (this._minX == null || this._maxX == null || this._minY == null || this._maxY == null) {
|
|
240
|
+
return;
|
|
241
|
+
}
|
|
242
|
+
this._currentMeasure.width = Math.abs(this._maxX - this._minX) + this._lineWidth;
|
|
243
|
+
this._currentMeasure.height = Math.abs(this._maxY - this._minY) + this._lineWidth;
|
|
244
|
+
};
|
|
245
|
+
MultiLine.prototype._computeAlignment = function () {
|
|
246
|
+
if (this._minX == null || this._minY == null) {
|
|
247
|
+
return;
|
|
248
|
+
}
|
|
249
|
+
this._currentMeasure.left = this._minX - this._lineWidth / 2;
|
|
250
|
+
this._currentMeasure.top = this._minY - this._lineWidth / 2;
|
|
251
|
+
};
|
|
252
|
+
MultiLine.prototype.dispose = function () {
|
|
253
|
+
this.reset();
|
|
254
|
+
_super.prototype.dispose.call(this);
|
|
255
|
+
};
|
|
256
|
+
__decorate([
|
|
257
|
+
serialize()
|
|
258
|
+
], MultiLine.prototype, "dash", null);
|
|
259
|
+
return MultiLine;
|
|
260
|
+
}(Control));
|
|
261
|
+
export { MultiLine };
|
|
262
|
+
RegisterClass("BABYLON.GUI.MultiLine", MultiLine);
|
|
263
263
|
//# sourceMappingURL=multiLine.js.map
|