@babylonjs/gui 5.0.0-rc.7 → 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
package/2D/controls/ellipse.js
CHANGED
|
@@ -1,86 +1,86 @@
|
|
|
1
|
-
import { __decorate, __extends } from "tslib";
|
|
2
|
-
import { Container } from "./container
|
|
3
|
-
import { Control } from "./control
|
|
4
|
-
import { RegisterClass } from "@babylonjs/core/Misc/typeStore.js";
|
|
5
|
-
import { serialize } from "@babylonjs/core/Misc/decorators.js";
|
|
6
|
-
/** Class used to create 2D ellipse containers */
|
|
7
|
-
var Ellipse = /** @class */ (function (_super) {
|
|
8
|
-
__extends(Ellipse, _super);
|
|
9
|
-
/**
|
|
10
|
-
* Creates a new Ellipse
|
|
11
|
-
* @param name defines the control name
|
|
12
|
-
*/
|
|
13
|
-
function Ellipse(name) {
|
|
14
|
-
var _this = _super.call(this, name) || this;
|
|
15
|
-
_this.name = name;
|
|
16
|
-
_this._thickness = 1;
|
|
17
|
-
return _this;
|
|
18
|
-
}
|
|
19
|
-
Object.defineProperty(Ellipse.prototype, "thickness", {
|
|
20
|
-
/** Gets or sets border thickness */
|
|
21
|
-
get: function () {
|
|
22
|
-
return this._thickness;
|
|
23
|
-
},
|
|
24
|
-
set: function (value) {
|
|
25
|
-
if (this._thickness === value) {
|
|
26
|
-
return;
|
|
27
|
-
}
|
|
28
|
-
this._thickness = value;
|
|
29
|
-
this._markAsDirty();
|
|
30
|
-
},
|
|
31
|
-
enumerable: false,
|
|
32
|
-
configurable: true
|
|
33
|
-
});
|
|
34
|
-
Ellipse.prototype._getTypeName = function () {
|
|
35
|
-
return "Ellipse";
|
|
36
|
-
};
|
|
37
|
-
Ellipse.prototype._localDraw = function (context) {
|
|
38
|
-
context.save();
|
|
39
|
-
if (this.shadowBlur || this.shadowOffsetX || this.shadowOffsetY) {
|
|
40
|
-
context.shadowColor = this.shadowColor;
|
|
41
|
-
context.shadowBlur = this.shadowBlur;
|
|
42
|
-
context.shadowOffsetX = this.shadowOffsetX;
|
|
43
|
-
context.shadowOffsetY = this.shadowOffsetY;
|
|
44
|
-
}
|
|
45
|
-
Control.drawEllipse(this._currentMeasure.left + this._currentMeasure.width / 2, this._currentMeasure.top + this._currentMeasure.height / 2, this._currentMeasure.width / 2 - this._thickness / 2, this._currentMeasure.height / 2 - this._thickness / 2, context);
|
|
46
|
-
if (this._background) {
|
|
47
|
-
context.fillStyle = this._background;
|
|
48
|
-
context.fill();
|
|
49
|
-
}
|
|
50
|
-
if (this.shadowBlur || this.shadowOffsetX || this.shadowOffsetY) {
|
|
51
|
-
context.shadowBlur = 0;
|
|
52
|
-
context.shadowOffsetX = 0;
|
|
53
|
-
context.shadowOffsetY = 0;
|
|
54
|
-
}
|
|
55
|
-
if (this._thickness) {
|
|
56
|
-
if (this.color) {
|
|
57
|
-
context.strokeStyle = this.color;
|
|
58
|
-
}
|
|
59
|
-
context.lineWidth = this._thickness;
|
|
60
|
-
context.stroke();
|
|
61
|
-
}
|
|
62
|
-
context.restore();
|
|
63
|
-
};
|
|
64
|
-
Ellipse.prototype._additionalProcessing = function (parentMeasure, context) {
|
|
65
|
-
_super.prototype._additionalProcessing.call(this, parentMeasure, context);
|
|
66
|
-
this._measureForChildren.width -= 2 * this._thickness;
|
|
67
|
-
this._measureForChildren.height -= 2 * this._thickness;
|
|
68
|
-
this._measureForChildren.left += this._thickness;
|
|
69
|
-
this._measureForChildren.top += this._thickness;
|
|
70
|
-
};
|
|
71
|
-
Ellipse.prototype._clipForChildren = function (context) {
|
|
72
|
-
Control.drawEllipse(this._currentMeasure.left + this._currentMeasure.width / 2, this._currentMeasure.top + this._currentMeasure.height / 2, this._currentMeasure.width / 2, this._currentMeasure.height / 2, context);
|
|
73
|
-
context.clip();
|
|
74
|
-
};
|
|
75
|
-
Ellipse.prototype._renderHighlightSpecific = function (context) {
|
|
76
|
-
Control.drawEllipse(this._currentMeasure.left + this._currentMeasure.width / 2, this._currentMeasure.top + this._currentMeasure.height / 2, this._currentMeasure.width / 2 - this._highlightLineWidth / 2, this._currentMeasure.height / 2 - this._highlightLineWidth / 2, context);
|
|
77
|
-
context.stroke();
|
|
78
|
-
};
|
|
79
|
-
__decorate([
|
|
80
|
-
serialize()
|
|
81
|
-
], Ellipse.prototype, "thickness", null);
|
|
82
|
-
return Ellipse;
|
|
83
|
-
}(Container));
|
|
84
|
-
export { Ellipse };
|
|
85
|
-
RegisterClass("BABYLON.GUI.Ellipse", Ellipse);
|
|
1
|
+
import { __decorate, __extends } from "tslib";
|
|
2
|
+
import { Container } from "./container";
|
|
3
|
+
import { Control } from "./control";
|
|
4
|
+
import { RegisterClass } from "@babylonjs/core/Misc/typeStore.js";
|
|
5
|
+
import { serialize } from "@babylonjs/core/Misc/decorators.js";
|
|
6
|
+
/** Class used to create 2D ellipse containers */
|
|
7
|
+
var Ellipse = /** @class */ (function (_super) {
|
|
8
|
+
__extends(Ellipse, _super);
|
|
9
|
+
/**
|
|
10
|
+
* Creates a new Ellipse
|
|
11
|
+
* @param name defines the control name
|
|
12
|
+
*/
|
|
13
|
+
function Ellipse(name) {
|
|
14
|
+
var _this = _super.call(this, name) || this;
|
|
15
|
+
_this.name = name;
|
|
16
|
+
_this._thickness = 1;
|
|
17
|
+
return _this;
|
|
18
|
+
}
|
|
19
|
+
Object.defineProperty(Ellipse.prototype, "thickness", {
|
|
20
|
+
/** Gets or sets border thickness */
|
|
21
|
+
get: function () {
|
|
22
|
+
return this._thickness;
|
|
23
|
+
},
|
|
24
|
+
set: function (value) {
|
|
25
|
+
if (this._thickness === value) {
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
this._thickness = value;
|
|
29
|
+
this._markAsDirty();
|
|
30
|
+
},
|
|
31
|
+
enumerable: false,
|
|
32
|
+
configurable: true
|
|
33
|
+
});
|
|
34
|
+
Ellipse.prototype._getTypeName = function () {
|
|
35
|
+
return "Ellipse";
|
|
36
|
+
};
|
|
37
|
+
Ellipse.prototype._localDraw = function (context) {
|
|
38
|
+
context.save();
|
|
39
|
+
if (this.shadowBlur || this.shadowOffsetX || this.shadowOffsetY) {
|
|
40
|
+
context.shadowColor = this.shadowColor;
|
|
41
|
+
context.shadowBlur = this.shadowBlur;
|
|
42
|
+
context.shadowOffsetX = this.shadowOffsetX;
|
|
43
|
+
context.shadowOffsetY = this.shadowOffsetY;
|
|
44
|
+
}
|
|
45
|
+
Control.drawEllipse(this._currentMeasure.left + this._currentMeasure.width / 2, this._currentMeasure.top + this._currentMeasure.height / 2, this._currentMeasure.width / 2 - this._thickness / 2, this._currentMeasure.height / 2 - this._thickness / 2, context);
|
|
46
|
+
if (this._background) {
|
|
47
|
+
context.fillStyle = this._background;
|
|
48
|
+
context.fill();
|
|
49
|
+
}
|
|
50
|
+
if (this.shadowBlur || this.shadowOffsetX || this.shadowOffsetY) {
|
|
51
|
+
context.shadowBlur = 0;
|
|
52
|
+
context.shadowOffsetX = 0;
|
|
53
|
+
context.shadowOffsetY = 0;
|
|
54
|
+
}
|
|
55
|
+
if (this._thickness) {
|
|
56
|
+
if (this.color) {
|
|
57
|
+
context.strokeStyle = this.color;
|
|
58
|
+
}
|
|
59
|
+
context.lineWidth = this._thickness;
|
|
60
|
+
context.stroke();
|
|
61
|
+
}
|
|
62
|
+
context.restore();
|
|
63
|
+
};
|
|
64
|
+
Ellipse.prototype._additionalProcessing = function (parentMeasure, context) {
|
|
65
|
+
_super.prototype._additionalProcessing.call(this, parentMeasure, context);
|
|
66
|
+
this._measureForChildren.width -= 2 * this._thickness;
|
|
67
|
+
this._measureForChildren.height -= 2 * this._thickness;
|
|
68
|
+
this._measureForChildren.left += this._thickness;
|
|
69
|
+
this._measureForChildren.top += this._thickness;
|
|
70
|
+
};
|
|
71
|
+
Ellipse.prototype._clipForChildren = function (context) {
|
|
72
|
+
Control.drawEllipse(this._currentMeasure.left + this._currentMeasure.width / 2, this._currentMeasure.top + this._currentMeasure.height / 2, this._currentMeasure.width / 2, this._currentMeasure.height / 2, context);
|
|
73
|
+
context.clip();
|
|
74
|
+
};
|
|
75
|
+
Ellipse.prototype._renderHighlightSpecific = function (context) {
|
|
76
|
+
Control.drawEllipse(this._currentMeasure.left + this._currentMeasure.width / 2, this._currentMeasure.top + this._currentMeasure.height / 2, this._currentMeasure.width / 2 - this._highlightLineWidth / 2, this._currentMeasure.height / 2 - this._highlightLineWidth / 2, context);
|
|
77
|
+
context.stroke();
|
|
78
|
+
};
|
|
79
|
+
__decorate([
|
|
80
|
+
serialize()
|
|
81
|
+
], Ellipse.prototype, "thickness", null);
|
|
82
|
+
return Ellipse;
|
|
83
|
+
}(Container));
|
|
84
|
+
export { Ellipse };
|
|
85
|
+
RegisterClass("BABYLON.GUI.Ellipse", Ellipse);
|
|
86
86
|
//# sourceMappingURL=ellipse.js.map
|
|
@@ -1,59 +1,59 @@
|
|
|
1
|
-
import { Nullable } from "@babylonjs/core/types.js";
|
|
2
|
-
import { Vector2 } from "@babylonjs/core/Maths/math.vector.js";
|
|
3
|
-
import { Button } from "./button";
|
|
4
|
-
import { Control } from "./control";
|
|
5
|
-
import { PointerInfoBase } from "@babylonjs/core/Events/pointerEvents.js";
|
|
6
|
-
import { IFocusableControl } from "./focusableControl";
|
|
7
|
-
import { Observable } from "@babylonjs/core/Misc/observable.js";
|
|
8
|
-
import { IKeyboardEvent } from "@babylonjs/core/Events/deviceInputEvents.js";
|
|
9
|
-
/**
|
|
10
|
-
* Class used to create a focusable button that can easily handle keyboard events
|
|
11
|
-
* @since 5.0.0
|
|
12
|
-
*/
|
|
13
|
-
export declare class FocusableButton extends Button implements IFocusableControl {
|
|
14
|
-
name?: string | undefined;
|
|
15
|
-
/** Highlight color when button is focused */
|
|
16
|
-
focusedColor: Nullable<string>;
|
|
17
|
-
private _isFocused;
|
|
18
|
-
private _unfocusedColor;
|
|
19
|
-
/** Observable raised when the control gets the focus */
|
|
20
|
-
onFocusObservable: Observable<Button>;
|
|
21
|
-
/** Observable raised when the control loses the focus */
|
|
22
|
-
onBlurObservable: Observable<Button>;
|
|
23
|
-
/** Observable raised when a key event was processed */
|
|
24
|
-
onKeyboardEventProcessedObservable: Observable<IKeyboardEvent>;
|
|
25
|
-
constructor(name?: string | undefined);
|
|
26
|
-
/** @hidden */
|
|
27
|
-
onBlur(): void;
|
|
28
|
-
/** @hidden */
|
|
29
|
-
onFocus(): void;
|
|
30
|
-
/**
|
|
31
|
-
* Function called to get the list of controls that should not steal the focus from this control
|
|
32
|
-
* @returns an array of controls
|
|
33
|
-
*/
|
|
34
|
-
keepsFocusWith(): Nullable<Control[]>;
|
|
35
|
-
/**
|
|
36
|
-
* Function to focus a button programmatically
|
|
37
|
-
*/
|
|
38
|
-
focus(): void;
|
|
39
|
-
/**
|
|
40
|
-
* Function to unfocus a button programmatically
|
|
41
|
-
*/
|
|
42
|
-
blur(): void;
|
|
43
|
-
/**
|
|
44
|
-
* Handles the keyboard event
|
|
45
|
-
* @param evt Defines the KeyboardEvent
|
|
46
|
-
*/
|
|
47
|
-
processKeyboard(evt: IKeyboardEvent): void;
|
|
48
|
-
/**
|
|
49
|
-
* @param target
|
|
50
|
-
* @param coordinates
|
|
51
|
-
* @param pointerId
|
|
52
|
-
* @param buttonIndex
|
|
53
|
-
* @param pi
|
|
54
|
-
* @hidden
|
|
55
|
-
*/
|
|
56
|
-
_onPointerDown(target: Control, coordinates: Vector2, pointerId: number, buttonIndex: number, pi: PointerInfoBase): boolean;
|
|
57
|
-
/** @hidden */
|
|
58
|
-
displose(): void;
|
|
59
|
-
}
|
|
1
|
+
import { Nullable } from "@babylonjs/core/types.js";
|
|
2
|
+
import { Vector2 } from "@babylonjs/core/Maths/math.vector.js";
|
|
3
|
+
import { Button } from "./button";
|
|
4
|
+
import { Control } from "./control";
|
|
5
|
+
import { PointerInfoBase } from "@babylonjs/core/Events/pointerEvents.js";
|
|
6
|
+
import { IFocusableControl } from "./focusableControl";
|
|
7
|
+
import { Observable } from "@babylonjs/core/Misc/observable.js";
|
|
8
|
+
import { IKeyboardEvent } from "@babylonjs/core/Events/deviceInputEvents.js";
|
|
9
|
+
/**
|
|
10
|
+
* Class used to create a focusable button that can easily handle keyboard events
|
|
11
|
+
* @since 5.0.0
|
|
12
|
+
*/
|
|
13
|
+
export declare class FocusableButton extends Button implements IFocusableControl {
|
|
14
|
+
name?: string | undefined;
|
|
15
|
+
/** Highlight color when button is focused */
|
|
16
|
+
focusedColor: Nullable<string>;
|
|
17
|
+
private _isFocused;
|
|
18
|
+
private _unfocusedColor;
|
|
19
|
+
/** Observable raised when the control gets the focus */
|
|
20
|
+
onFocusObservable: Observable<Button>;
|
|
21
|
+
/** Observable raised when the control loses the focus */
|
|
22
|
+
onBlurObservable: Observable<Button>;
|
|
23
|
+
/** Observable raised when a key event was processed */
|
|
24
|
+
onKeyboardEventProcessedObservable: Observable<IKeyboardEvent>;
|
|
25
|
+
constructor(name?: string | undefined);
|
|
26
|
+
/** @hidden */
|
|
27
|
+
onBlur(): void;
|
|
28
|
+
/** @hidden */
|
|
29
|
+
onFocus(): void;
|
|
30
|
+
/**
|
|
31
|
+
* Function called to get the list of controls that should not steal the focus from this control
|
|
32
|
+
* @returns an array of controls
|
|
33
|
+
*/
|
|
34
|
+
keepsFocusWith(): Nullable<Control[]>;
|
|
35
|
+
/**
|
|
36
|
+
* Function to focus a button programmatically
|
|
37
|
+
*/
|
|
38
|
+
focus(): void;
|
|
39
|
+
/**
|
|
40
|
+
* Function to unfocus a button programmatically
|
|
41
|
+
*/
|
|
42
|
+
blur(): void;
|
|
43
|
+
/**
|
|
44
|
+
* Handles the keyboard event
|
|
45
|
+
* @param evt Defines the KeyboardEvent
|
|
46
|
+
*/
|
|
47
|
+
processKeyboard(evt: IKeyboardEvent): void;
|
|
48
|
+
/**
|
|
49
|
+
* @param target
|
|
50
|
+
* @param coordinates
|
|
51
|
+
* @param pointerId
|
|
52
|
+
* @param buttonIndex
|
|
53
|
+
* @param pi
|
|
54
|
+
* @hidden
|
|
55
|
+
*/
|
|
56
|
+
_onPointerDown(target: Control, coordinates: Vector2, pointerId: number, buttonIndex: number, pi: PointerInfoBase): boolean;
|
|
57
|
+
/** @hidden */
|
|
58
|
+
displose(): void;
|
|
59
|
+
}
|
|
@@ -1,100 +1,100 @@
|
|
|
1
|
-
import { __extends } from "tslib";
|
|
2
|
-
import { Button } from "./button
|
|
3
|
-
import { RegisterClass } from "@babylonjs/core/Misc/typeStore.js";
|
|
4
|
-
import { Observable } from "@babylonjs/core/Misc/observable.js";
|
|
5
|
-
/**
|
|
6
|
-
* Class used to create a focusable button that can easily handle keyboard events
|
|
7
|
-
* @since 5.0.0
|
|
8
|
-
*/
|
|
9
|
-
var FocusableButton = /** @class */ (function (_super) {
|
|
10
|
-
__extends(FocusableButton, _super);
|
|
11
|
-
function FocusableButton(name) {
|
|
12
|
-
var _this = _super.call(this, name) || this;
|
|
13
|
-
_this.name = name;
|
|
14
|
-
/** Highlight color when button is focused */
|
|
15
|
-
_this.focusedColor = null;
|
|
16
|
-
_this._isFocused = false;
|
|
17
|
-
_this._unfocusedColor = null;
|
|
18
|
-
/** Observable raised when the control gets the focus */
|
|
19
|
-
_this.onFocusObservable = new Observable();
|
|
20
|
-
/** Observable raised when the control loses the focus */
|
|
21
|
-
_this.onBlurObservable = new Observable();
|
|
22
|
-
/** Observable raised when a key event was processed */
|
|
23
|
-
_this.onKeyboardEventProcessedObservable = new Observable();
|
|
24
|
-
_this._unfocusedColor = _this.color;
|
|
25
|
-
return _this;
|
|
26
|
-
}
|
|
27
|
-
/** @hidden */
|
|
28
|
-
FocusableButton.prototype.onBlur = function () {
|
|
29
|
-
if (this._isFocused) {
|
|
30
|
-
this._isFocused = false;
|
|
31
|
-
if (this.focusedColor && this._unfocusedColor != null) {
|
|
32
|
-
// Set color back to saved unfocused color
|
|
33
|
-
this.color = this._unfocusedColor;
|
|
34
|
-
}
|
|
35
|
-
this.onBlurObservable.notifyObservers(this);
|
|
36
|
-
}
|
|
37
|
-
};
|
|
38
|
-
/** @hidden */
|
|
39
|
-
FocusableButton.prototype.onFocus = function () {
|
|
40
|
-
this._isFocused = true;
|
|
41
|
-
if (this.focusedColor) {
|
|
42
|
-
// Save the unfocused color
|
|
43
|
-
this._unfocusedColor = this.color;
|
|
44
|
-
this.color = this.focusedColor;
|
|
45
|
-
}
|
|
46
|
-
this.onFocusObservable.notifyObservers(this);
|
|
47
|
-
};
|
|
48
|
-
/**
|
|
49
|
-
* Function called to get the list of controls that should not steal the focus from this control
|
|
50
|
-
* @returns an array of controls
|
|
51
|
-
*/
|
|
52
|
-
FocusableButton.prototype.keepsFocusWith = function () {
|
|
53
|
-
return null;
|
|
54
|
-
};
|
|
55
|
-
/**
|
|
56
|
-
* Function to focus a button programmatically
|
|
57
|
-
*/
|
|
58
|
-
FocusableButton.prototype.focus = function () {
|
|
59
|
-
this._host.moveFocusToControl(this);
|
|
60
|
-
};
|
|
61
|
-
/**
|
|
62
|
-
* Function to unfocus a button programmatically
|
|
63
|
-
*/
|
|
64
|
-
FocusableButton.prototype.blur = function () {
|
|
65
|
-
this._host.focusedControl = null;
|
|
66
|
-
};
|
|
67
|
-
/**
|
|
68
|
-
* Handles the keyboard event
|
|
69
|
-
* @param evt Defines the KeyboardEvent
|
|
70
|
-
*/
|
|
71
|
-
FocusableButton.prototype.processKeyboard = function (evt) {
|
|
72
|
-
this.onKeyboardEventProcessedObservable.notifyObservers(evt, -1, this);
|
|
73
|
-
};
|
|
74
|
-
/**
|
|
75
|
-
* @param target
|
|
76
|
-
* @param coordinates
|
|
77
|
-
* @param pointerId
|
|
78
|
-
* @param buttonIndex
|
|
79
|
-
* @param pi
|
|
80
|
-
* @hidden
|
|
81
|
-
*/
|
|
82
|
-
FocusableButton.prototype._onPointerDown = function (target, coordinates, pointerId, buttonIndex, pi) {
|
|
83
|
-
if (!this.isReadOnly) {
|
|
84
|
-
// Clicking on button should focus
|
|
85
|
-
this.focus();
|
|
86
|
-
}
|
|
87
|
-
return _super.prototype._onPointerDown.call(this, target, coordinates, pointerId, buttonIndex, pi);
|
|
88
|
-
};
|
|
89
|
-
/** @hidden */
|
|
90
|
-
FocusableButton.prototype.displose = function () {
|
|
91
|
-
_super.prototype.dispose.call(this);
|
|
92
|
-
this.onBlurObservable.clear();
|
|
93
|
-
this.onFocusObservable.clear();
|
|
94
|
-
this.onKeyboardEventProcessedObservable.clear();
|
|
95
|
-
};
|
|
96
|
-
return FocusableButton;
|
|
97
|
-
}(Button));
|
|
98
|
-
export { FocusableButton };
|
|
99
|
-
RegisterClass("BABYLON.GUI.FocusableButton", FocusableButton);
|
|
1
|
+
import { __extends } from "tslib";
|
|
2
|
+
import { Button } from "./button";
|
|
3
|
+
import { RegisterClass } from "@babylonjs/core/Misc/typeStore.js";
|
|
4
|
+
import { Observable } from "@babylonjs/core/Misc/observable.js";
|
|
5
|
+
/**
|
|
6
|
+
* Class used to create a focusable button that can easily handle keyboard events
|
|
7
|
+
* @since 5.0.0
|
|
8
|
+
*/
|
|
9
|
+
var FocusableButton = /** @class */ (function (_super) {
|
|
10
|
+
__extends(FocusableButton, _super);
|
|
11
|
+
function FocusableButton(name) {
|
|
12
|
+
var _this = _super.call(this, name) || this;
|
|
13
|
+
_this.name = name;
|
|
14
|
+
/** Highlight color when button is focused */
|
|
15
|
+
_this.focusedColor = null;
|
|
16
|
+
_this._isFocused = false;
|
|
17
|
+
_this._unfocusedColor = null;
|
|
18
|
+
/** Observable raised when the control gets the focus */
|
|
19
|
+
_this.onFocusObservable = new Observable();
|
|
20
|
+
/** Observable raised when the control loses the focus */
|
|
21
|
+
_this.onBlurObservable = new Observable();
|
|
22
|
+
/** Observable raised when a key event was processed */
|
|
23
|
+
_this.onKeyboardEventProcessedObservable = new Observable();
|
|
24
|
+
_this._unfocusedColor = _this.color;
|
|
25
|
+
return _this;
|
|
26
|
+
}
|
|
27
|
+
/** @hidden */
|
|
28
|
+
FocusableButton.prototype.onBlur = function () {
|
|
29
|
+
if (this._isFocused) {
|
|
30
|
+
this._isFocused = false;
|
|
31
|
+
if (this.focusedColor && this._unfocusedColor != null) {
|
|
32
|
+
// Set color back to saved unfocused color
|
|
33
|
+
this.color = this._unfocusedColor;
|
|
34
|
+
}
|
|
35
|
+
this.onBlurObservable.notifyObservers(this);
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
/** @hidden */
|
|
39
|
+
FocusableButton.prototype.onFocus = function () {
|
|
40
|
+
this._isFocused = true;
|
|
41
|
+
if (this.focusedColor) {
|
|
42
|
+
// Save the unfocused color
|
|
43
|
+
this._unfocusedColor = this.color;
|
|
44
|
+
this.color = this.focusedColor;
|
|
45
|
+
}
|
|
46
|
+
this.onFocusObservable.notifyObservers(this);
|
|
47
|
+
};
|
|
48
|
+
/**
|
|
49
|
+
* Function called to get the list of controls that should not steal the focus from this control
|
|
50
|
+
* @returns an array of controls
|
|
51
|
+
*/
|
|
52
|
+
FocusableButton.prototype.keepsFocusWith = function () {
|
|
53
|
+
return null;
|
|
54
|
+
};
|
|
55
|
+
/**
|
|
56
|
+
* Function to focus a button programmatically
|
|
57
|
+
*/
|
|
58
|
+
FocusableButton.prototype.focus = function () {
|
|
59
|
+
this._host.moveFocusToControl(this);
|
|
60
|
+
};
|
|
61
|
+
/**
|
|
62
|
+
* Function to unfocus a button programmatically
|
|
63
|
+
*/
|
|
64
|
+
FocusableButton.prototype.blur = function () {
|
|
65
|
+
this._host.focusedControl = null;
|
|
66
|
+
};
|
|
67
|
+
/**
|
|
68
|
+
* Handles the keyboard event
|
|
69
|
+
* @param evt Defines the KeyboardEvent
|
|
70
|
+
*/
|
|
71
|
+
FocusableButton.prototype.processKeyboard = function (evt) {
|
|
72
|
+
this.onKeyboardEventProcessedObservable.notifyObservers(evt, -1, this);
|
|
73
|
+
};
|
|
74
|
+
/**
|
|
75
|
+
* @param target
|
|
76
|
+
* @param coordinates
|
|
77
|
+
* @param pointerId
|
|
78
|
+
* @param buttonIndex
|
|
79
|
+
* @param pi
|
|
80
|
+
* @hidden
|
|
81
|
+
*/
|
|
82
|
+
FocusableButton.prototype._onPointerDown = function (target, coordinates, pointerId, buttonIndex, pi) {
|
|
83
|
+
if (!this.isReadOnly) {
|
|
84
|
+
// Clicking on button should focus
|
|
85
|
+
this.focus();
|
|
86
|
+
}
|
|
87
|
+
return _super.prototype._onPointerDown.call(this, target, coordinates, pointerId, buttonIndex, pi);
|
|
88
|
+
};
|
|
89
|
+
/** @hidden */
|
|
90
|
+
FocusableButton.prototype.displose = function () {
|
|
91
|
+
_super.prototype.dispose.call(this);
|
|
92
|
+
this.onBlurObservable.clear();
|
|
93
|
+
this.onFocusObservable.clear();
|
|
94
|
+
this.onKeyboardEventProcessedObservable.clear();
|
|
95
|
+
};
|
|
96
|
+
return FocusableButton;
|
|
97
|
+
}(Button));
|
|
98
|
+
export { FocusableButton };
|
|
99
|
+
RegisterClass("BABYLON.GUI.FocusableButton", FocusableButton);
|
|
100
100
|
//# sourceMappingURL=focusableButton.js.map
|
|
@@ -1,34 +1,34 @@
|
|
|
1
|
-
import { IKeyboardEvent } from "@babylonjs/core/Events/deviceInputEvents.js";
|
|
2
|
-
import { Nullable } from "@babylonjs/core/types.js";
|
|
3
|
-
import { Control } from "./control";
|
|
4
|
-
/**
|
|
5
|
-
* Interface used to define a control that can receive focus
|
|
6
|
-
*/
|
|
7
|
-
export interface IFocusableControl {
|
|
8
|
-
/**
|
|
9
|
-
* Function called when the control receives the focus
|
|
10
|
-
*/
|
|
11
|
-
onFocus(): void;
|
|
12
|
-
/**
|
|
13
|
-
* Function called when the control loses the focus
|
|
14
|
-
*/
|
|
15
|
-
onBlur(): void;
|
|
16
|
-
/**
|
|
17
|
-
* Function called to let the control handle keyboard events
|
|
18
|
-
* @param evt defines the current keyboard event
|
|
19
|
-
*/
|
|
20
|
-
processKeyboard(evt: IKeyboardEvent): void;
|
|
21
|
-
/**
|
|
22
|
-
* Function called to get the list of controls that should not steal the focus from this control
|
|
23
|
-
* @returns an array of controls
|
|
24
|
-
*/
|
|
25
|
-
keepsFocusWith(): Nullable<Control[]>;
|
|
26
|
-
/**
|
|
27
|
-
* Function to focus the control programmatically
|
|
28
|
-
*/
|
|
29
|
-
focus(): void;
|
|
30
|
-
/**
|
|
31
|
-
* Function to unfocus the control programmatically
|
|
32
|
-
*/
|
|
33
|
-
blur(): void;
|
|
34
|
-
}
|
|
1
|
+
import { IKeyboardEvent } from "@babylonjs/core/Events/deviceInputEvents.js";
|
|
2
|
+
import { Nullable } from "@babylonjs/core/types.js";
|
|
3
|
+
import { Control } from "./control";
|
|
4
|
+
/**
|
|
5
|
+
* Interface used to define a control that can receive focus
|
|
6
|
+
*/
|
|
7
|
+
export interface IFocusableControl {
|
|
8
|
+
/**
|
|
9
|
+
* Function called when the control receives the focus
|
|
10
|
+
*/
|
|
11
|
+
onFocus(): void;
|
|
12
|
+
/**
|
|
13
|
+
* Function called when the control loses the focus
|
|
14
|
+
*/
|
|
15
|
+
onBlur(): void;
|
|
16
|
+
/**
|
|
17
|
+
* Function called to let the control handle keyboard events
|
|
18
|
+
* @param evt defines the current keyboard event
|
|
19
|
+
*/
|
|
20
|
+
processKeyboard(evt: IKeyboardEvent): void;
|
|
21
|
+
/**
|
|
22
|
+
* Function called to get the list of controls that should not steal the focus from this control
|
|
23
|
+
* @returns an array of controls
|
|
24
|
+
*/
|
|
25
|
+
keepsFocusWith(): Nullable<Control[]>;
|
|
26
|
+
/**
|
|
27
|
+
* Function to focus the control programmatically
|
|
28
|
+
*/
|
|
29
|
+
focus(): void;
|
|
30
|
+
/**
|
|
31
|
+
* Function to unfocus the control programmatically
|
|
32
|
+
*/
|
|
33
|
+
blur(): void;
|
|
34
|
+
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export {};
|
|
1
|
+
export {};
|
|
2
2
|
//# sourceMappingURL=focusableControl.js.map
|