@babylonjs/shared-ui-components 7.5.0 → 7.6.1
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/components/colorPicker/ColorComponentEntry.d.ts +1 -1
- package/components/colorPicker/ColorComponentEntry.js +1 -1
- package/components/colorPicker/ColorComponentEntry.js.map +1 -1
- package/components/colorPicker/ColorPicker.d.ts +4 -4
- package/components/colorPicker/ColorPicker.js +8 -8
- package/components/colorPicker/ColorPicker.js.map +1 -1
- package/components/colorPicker/HexColor.d.ts +1 -1
- package/components/colorPicker/HexColor.js +1 -1
- package/components/colorPicker/HexColor.js.map +1 -1
- package/components/lines/ColorPickerLineComponent.d.ts +5 -5
- package/components/lines/ColorPickerLineComponent.js +2 -2
- package/components/lines/ColorPickerLineComponent.js.map +1 -1
- package/components/reactGraphSystem/GraphNode.d.ts +1 -1
- package/components/reactGraphSystem/GraphNode.js +1 -1
- package/components/reactGraphSystem/GraphNode.js.map +1 -1
- package/components/reactGraphSystem/NodeRenderer.js +2 -2
- package/components/reactGraphSystem/NodeRenderer.js.map +1 -1
- package/copyCommandToClipboard.d.ts +5 -0
- package/copyCommandToClipboard.js +34 -0
- package/copyCommandToClipboard.js.map +1 -0
- package/lines/checkBoxLineComponent.d.ts +1 -0
- package/lines/checkBoxLineComponent.js +18 -1
- package/lines/checkBoxLineComponent.js.map +1 -1
- package/lines/color3LineComponent.js +2 -2
- package/lines/color3LineComponent.js.map +1 -1
- package/lines/color4LineComponent.js +2 -2
- package/lines/color4LineComponent.js.map +1 -1
- package/lines/colorLineComponent.d.ts +6 -6
- package/lines/colorLineComponent.js +30 -18
- package/lines/colorLineComponent.js.map +1 -1
- package/lines/colorPickerComponent.d.ts +5 -5
- package/lines/colorPickerComponent.js +1 -1
- package/lines/colorPickerComponent.js.map +1 -1
- package/lines/fileButtonLineComponent.d.ts +3 -3
- package/lines/fileButtonLineComponent.js +3 -3
- package/lines/fileButtonLineComponent.js.map +1 -1
- package/lines/floatLineComponent.d.ts +1 -0
- package/lines/floatLineComponent.js +18 -1
- package/lines/floatLineComponent.js.map +1 -1
- package/lines/matrixLineComponent.js +2 -2
- package/lines/matrixLineComponent.js.map +1 -1
- package/lines/numericInputComponent.d.ts +4 -4
- package/lines/numericInputComponent.js +2 -2
- package/lines/numericInputComponent.js.map +1 -1
- package/lines/optionsLineComponent.d.ts +5 -4
- package/lines/optionsLineComponent.js +19 -2
- package/lines/optionsLineComponent.js.map +1 -1
- package/lines/sliderLineComponent.d.ts +1 -0
- package/lines/sliderLineComponent.js +18 -1
- package/lines/sliderLineComponent.js.map +1 -1
- package/lines/vector2LineComponent.js +2 -2
- package/lines/vector2LineComponent.js.map +1 -1
- package/lines/vector3LineComponent.d.ts +1 -0
- package/lines/vector3LineComponent.js +20 -2
- package/lines/vector3LineComponent.js.map +1 -1
- package/lines/vector4LineComponent.js +2 -2
- package/lines/vector4LineComponent.js.map +1 -1
- package/package.json +1 -1
- package/stories/colorPicker/ColorPicker.stories.d.ts +3 -3
- package/stories/colorPicker/ColorPicker.stories.js +2 -2
- package/stories/colorPicker/ColorPicker.stories.js.map +1 -1
- package/stories/lines/ColorPickerLineComponent.stories.js.map +1 -1
- package/tabs/propertyGrids/gui/commonControlPropertyGridComponent.js +2 -2
- package/tabs/propertyGrids/gui/commonControlPropertyGridComponent.js.map +1 -1
- package/tabs/propertyGrids/gui/imagePropertyGridComponent.js +2 -2
- package/tabs/propertyGrids/gui/imagePropertyGridComponent.js.map +1 -1
- package/tabs/propertyGrids/gui/textBlockPropertyGridComponent.js +2 -2
- package/tabs/propertyGrids/gui/textBlockPropertyGridComponent.js.map +1 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"vector3LineComponent.js","sourceRoot":"","sources":["../../../../dev/sharedUiComponents/src/lines/vector3LineComponent.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from \"react\";\r\nimport { Vector3 } from \"core/Maths/math.vector\";\r\nimport type { Observable } from \"core/Misc/observable\";\r\n\r\nimport { NumericInputComponent } from \"../lines/numericInputComponent\";\r\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\r\nimport { faMinus, faPlus } from \"@fortawesome/free-solid-svg-icons\";\r\nimport type { PropertyChangedEvent } from \"../propertyChangedEvent\";\r\nimport { SliderLineComponent } from \"../lines/sliderLineComponent\";\r\nimport { Tools } from \"core/Misc/tools\";\r\nimport type { LockObject } from \"../tabs/propertyGrids/lockObject\";\r\n\r\ninterface IVector3LineComponentProps {\r\n label: string;\r\n target: any;\r\n propertyName: string;\r\n step?: number;\r\n onChange?: (newvalue: Vector3) => void;\r\n useEuler?: boolean;\r\n onPropertyChangedObservable?: Observable<PropertyChangedEvent>;\r\n noSlider?: boolean;\r\n icon?: string;\r\n iconLabel?: string;\r\n lockObject: LockObject;\r\n}\r\n\r\nexport class Vector3LineComponent extends React.Component<IVector3LineComponentProps, { isExpanded: boolean; value: Vector3 }> {\r\n // eslint-disable-next-line @typescript-eslint/naming-convention\r\n static defaultProps = {\r\n step: 0.001, // cm\r\n };\r\n\r\n private _localChange = false;\r\n\r\n constructor(props: IVector3LineComponentProps) {\r\n super(props);\r\n\r\n const value = this.getCurrentValue();\r\n this.state = { isExpanded: false, value: value ? value.clone() : Vector3.Zero() };\r\n }\r\n\r\n getCurrentValue() {\r\n return this.props.target[this.props.propertyName];\r\n }\r\n\r\n override shouldComponentUpdate(nextProps: IVector3LineComponentProps, nextState: { isExpanded: boolean; value: Vector3 }) {\r\n const nextPropsValue = nextProps.target[nextProps.propertyName];\r\n\r\n if (!nextPropsValue.equals(nextState.value) || this._localChange) {\r\n nextState.value = nextPropsValue.clone();\r\n this._localChange = false;\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n switchExpandState() {\r\n this._localChange = true;\r\n this.setState({ isExpanded: !this.state.isExpanded });\r\n }\r\n\r\n raiseOnPropertyChanged(previousValue: Vector3) {\r\n if (this.props.onChange) {\r\n this.props.onChange(this.state.value);\r\n }\r\n\r\n if (!this.props.onPropertyChangedObservable) {\r\n return;\r\n }\r\n this.props.onPropertyChangedObservable.notifyObservers({\r\n object: this.props.target,\r\n property: this.props.propertyName,\r\n value: this.state.value,\r\n initialValue: previousValue,\r\n });\r\n }\r\n\r\n updateVector3() {\r\n const store = this.props.target[this.props.propertyName].clone();\r\n this.props.target[this.props.propertyName] = this.state.value;\r\n\r\n this.setState({ value: store });\r\n\r\n this.raiseOnPropertyChanged(store);\r\n }\r\n\r\n updateStateX(value: number) {\r\n this._localChange = true;\r\n\r\n this.state.value.x = value;\r\n this.updateVector3();\r\n }\r\n\r\n updateStateY(value: number) {\r\n this._localChange = true;\r\n\r\n this.state.value.y = value;\r\n this.updateVector3();\r\n }\r\n\r\n updateStateZ(value: number) {\r\n this._localChange = true;\r\n\r\n this.state.value.z = value;\r\n this.updateVector3();\r\n }\r\n\r\n override render() {\r\n const chevron = this.state.isExpanded ? <FontAwesomeIcon icon={faMinus} /> : <FontAwesomeIcon icon={faPlus} />;\r\n\r\n return (\r\n <div className=\"vector3Line\">\r\n <div className=\"firstLine\">\r\n {this.props.icon && <img src={this.props.icon} title={this.props.iconLabel} alt={this.props.iconLabel} className=\"icon\" />}\r\n <div className=\"label\" title={this.props.label}>\r\n {this.props.label}\r\n </div>\r\n <div className=\"vector\">\r\n {!this.props.useEuler && `X: ${this.state.value.x.toFixed(2)}, Y: ${this.state.value.y.toFixed(2)}, Z: ${this.state.value.z.toFixed(2)}`}\r\n {this.props.useEuler &&\r\n `X: ${Tools.ToDegrees(this.state.value.x).toFixed(2)}, Y: ${Tools.ToDegrees(this.state.value.y).toFixed(2)}, Z: ${Tools.ToDegrees(\r\n this.state.value.z\r\n ).toFixed(2)}`}\r\n </div>\r\n <div className=\"expand hoverIcon\" onClick={() => this.switchExpandState()} title=\"Expand\">\r\n {chevron}\r\n </div>\r\n </div>\r\n {this.state.isExpanded && !this.props.useEuler && (\r\n <div className=\"secondLine\">\r\n <NumericInputComponent\r\n label=\"x\"\r\n lockObject={this.props.lockObject}\r\n step={this.props.step}\r\n value={this.state.value.x}\r\n onChange={(value) => this.updateStateX(value)}\r\n />\r\n <NumericInputComponent\r\n label=\"y\"\r\n lockObject={this.props.lockObject}\r\n step={this.props.step}\r\n value={this.state.value.y}\r\n onChange={(value) => this.updateStateY(value)}\r\n />\r\n <NumericInputComponent\r\n label=\"z\"\r\n lockObject={this.props.lockObject}\r\n step={this.props.step}\r\n value={this.state.value.z}\r\n onChange={(value) => this.updateStateZ(value)}\r\n />\r\n </div>\r\n )}\r\n {this.state.isExpanded && this.props.useEuler && !this.props.noSlider && (\r\n <div className=\"secondLine\">\r\n <SliderLineComponent\r\n lockObject={this.props.lockObject}\r\n margin={true}\r\n label=\"x\"\r\n minimum={0}\r\n maximum={360}\r\n step={0.1}\r\n directValue={Tools.ToDegrees(this.state.value.x)}\r\n onChange={(value) => this.updateStateX(Tools.ToRadians(value))}\r\n />\r\n <SliderLineComponent\r\n lockObject={this.props.lockObject}\r\n margin={true}\r\n label=\"y\"\r\n minimum={0}\r\n maximum={360}\r\n step={0.1}\r\n directValue={Tools.ToDegrees(this.state.value.y)}\r\n onChange={(value) => this.updateStateY(Tools.ToRadians(value))}\r\n />\r\n <SliderLineComponent\r\n lockObject={this.props.lockObject}\r\n margin={true}\r\n label=\"z\"\r\n minimum={0}\r\n maximum={360}\r\n step={0.1}\r\n directValue={Tools.ToDegrees(this.state.value.z)}\r\n onChange={(value) => this.updateStateZ(Tools.ToRadians(value))}\r\n />\r\n </div>\r\n )}\r\n {this.state.isExpanded && this.props.useEuler && this.props.noSlider && (\r\n <div className=\"secondLine\">\r\n <NumericInputComponent\r\n lockObject={this.props.lockObject}\r\n label=\"x\"\r\n step={this.props.step}\r\n value={Tools.ToDegrees(this.state.value.x)}\r\n onChange={(value) => this.updateStateX(Tools.ToRadians(value))}\r\n />\r\n <NumericInputComponent\r\n lockObject={this.props.lockObject}\r\n label=\"y\"\r\n step={this.props.step}\r\n value={Tools.ToDegrees(this.state.value.y)}\r\n onChange={(value) => this.updateStateY(Tools.ToRadians(value))}\r\n />\r\n <NumericInputComponent\r\n lockObject={this.props.lockObject}\r\n label=\"z\"\r\n step={this.props.step}\r\n value={Tools.ToDegrees(this.state.value.z)}\r\n onChange={(value) => this.updateStateZ(Tools.ToRadians(value))}\r\n />\r\n </div>\r\n )}\r\n </div>\r\n );\r\n }\r\n}\r\n"]}
|
1
|
+
{"version":3,"file":"vector3LineComponent.js","sourceRoot":"","sources":["../../../../dev/sharedUiComponents/src/lines/vector3LineComponent.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from \"react\";\r\nimport { Vector3 } from \"core/Maths/math.vector\";\r\nimport type { Observable } from \"core/Misc/observable\";\r\nimport { NumericInput } from \"../lines/numericInputComponent\";\r\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\r\nimport { faMinus, faPlus } from \"@fortawesome/free-solid-svg-icons\";\r\nimport type { PropertyChangedEvent } from \"../propertyChangedEvent\";\r\nimport { copyCommandToClipboard, getClassNameWithNamespace } from \"../copyCommandToClipboard\";\r\nimport { SliderLineComponent } from \"../lines/sliderLineComponent\";\r\nimport { Tools } from \"core/Misc/tools\";\r\nimport type { LockObject } from \"../tabs/propertyGrids/lockObject\";\r\nimport copyIcon from \"./copy.svg\";\r\n\r\ninterface IVector3LineComponentProps {\r\n label: string;\r\n target: any;\r\n propertyName: string;\r\n step?: number;\r\n onChange?: (newvalue: Vector3) => void;\r\n useEuler?: boolean;\r\n onPropertyChangedObservable?: Observable<PropertyChangedEvent>;\r\n noSlider?: boolean;\r\n icon?: string;\r\n iconLabel?: string;\r\n lockObject: LockObject;\r\n}\r\n\r\nexport class Vector3LineComponent extends React.Component<IVector3LineComponentProps, { isExpanded: boolean; value: Vector3 }> {\r\n // eslint-disable-next-line @typescript-eslint/naming-convention\r\n static defaultProps = {\r\n step: 0.001, // cm\r\n };\r\n\r\n private _localChange = false;\r\n\r\n constructor(props: IVector3LineComponentProps) {\r\n super(props);\r\n\r\n const value = this.getCurrentValue();\r\n this.state = { isExpanded: false, value: value ? value.clone() : Vector3.Zero() };\r\n }\r\n\r\n getCurrentValue() {\r\n return this.props.target[this.props.propertyName];\r\n }\r\n\r\n override shouldComponentUpdate(nextProps: IVector3LineComponentProps, nextState: { isExpanded: boolean; value: Vector3 }) {\r\n const nextPropsValue = nextProps.target[nextProps.propertyName];\r\n\r\n if (!nextPropsValue.equals(nextState.value) || this._localChange) {\r\n nextState.value = nextPropsValue.clone();\r\n this._localChange = false;\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n switchExpandState() {\r\n this._localChange = true;\r\n this.setState({ isExpanded: !this.state.isExpanded });\r\n }\r\n\r\n raiseOnPropertyChanged(previousValue: Vector3) {\r\n if (this.props.onChange) {\r\n this.props.onChange(this.state.value);\r\n }\r\n\r\n if (!this.props.onPropertyChangedObservable) {\r\n return;\r\n }\r\n this.props.onPropertyChangedObservable.notifyObservers({\r\n object: this.props.target,\r\n property: this.props.propertyName,\r\n value: this.state.value,\r\n initialValue: previousValue,\r\n });\r\n }\r\n\r\n updateVector3() {\r\n const store = this.props.target[this.props.propertyName].clone();\r\n this.props.target[this.props.propertyName] = this.state.value;\r\n\r\n this.setState({ value: store });\r\n\r\n this.raiseOnPropertyChanged(store);\r\n }\r\n\r\n updateStateX(value: number) {\r\n this._localChange = true;\r\n\r\n this.state.value.x = value;\r\n this.updateVector3();\r\n }\r\n\r\n updateStateY(value: number) {\r\n this._localChange = true;\r\n\r\n this.state.value.y = value;\r\n this.updateVector3();\r\n }\r\n\r\n updateStateZ(value: number) {\r\n this._localChange = true;\r\n\r\n this.state.value.z = value;\r\n this.updateVector3();\r\n }\r\n\r\n // Copy to clipboard the code this Vector3 actually does\r\n // Example : Mesh.position = new BABYLON.Vector3(0, 1, 0);\r\n onCopyClick() {\r\n if (this.props && this.props.target) {\r\n const { className, babylonNamespace } = getClassNameWithNamespace(this.props.target);\r\n const targetName = \"globalThis.debugNode\";\r\n const targetProperty = this.props.propertyName;\r\n const value = this.props.target[this.props.propertyName!];\r\n const strVector = \"new \" + babylonNamespace + \"Vector3(\" + value.x + \", \" + value.y + \", \" + value.z + \")\";\r\n const strCommand = targetName + \".\" + targetProperty + \" = \" + strVector + \";// (debugNode as \" + babylonNamespace + className + \")\";\r\n copyCommandToClipboard(strCommand);\r\n } else {\r\n copyCommandToClipboard(\"undefined\");\r\n }\r\n }\r\n\r\n override render() {\r\n const chevron = this.state.isExpanded ? <FontAwesomeIcon icon={faMinus} /> : <FontAwesomeIcon icon={faPlus} />;\r\n\r\n return (\r\n <div className=\"vector3Line\">\r\n <div className=\"firstLine\">\r\n {this.props.icon && <img src={this.props.icon} title={this.props.iconLabel} alt={this.props.iconLabel} className=\"icon\" />}\r\n <div className=\"label\" title={this.props.label}>\r\n {this.props.label}\r\n </div>\r\n <div className=\"vector\">\r\n {!this.props.useEuler && `X: ${this.state.value.x.toFixed(2)}, Y: ${this.state.value.y.toFixed(2)}, Z: ${this.state.value.z.toFixed(2)}`}\r\n {this.props.useEuler &&\r\n `X: ${Tools.ToDegrees(this.state.value.x).toFixed(2)}, Y: ${Tools.ToDegrees(this.state.value.y).toFixed(2)}, Z: ${Tools.ToDegrees(\r\n this.state.value.z\r\n ).toFixed(2)}`}\r\n </div>\r\n <div className=\"expand hoverIcon\" onClick={() => this.switchExpandState()} title=\"Expand\">\r\n {chevron}\r\n </div>\r\n <div className=\"copy hoverIcon\" onClick={() => this.onCopyClick()} title=\"Copy to clipboard\">\r\n <img src={copyIcon} alt=\"Copy\" />\r\n </div>\r\n </div>\r\n {this.state.isExpanded && !this.props.useEuler && (\r\n <div className=\"secondLine\">\r\n <NumericInput\r\n label=\"x\"\r\n lockObject={this.props.lockObject}\r\n step={this.props.step}\r\n value={this.state.value.x}\r\n onChange={(value) => this.updateStateX(value)}\r\n />\r\n <NumericInput\r\n label=\"y\"\r\n lockObject={this.props.lockObject}\r\n step={this.props.step}\r\n value={this.state.value.y}\r\n onChange={(value) => this.updateStateY(value)}\r\n />\r\n <NumericInput\r\n label=\"z\"\r\n lockObject={this.props.lockObject}\r\n step={this.props.step}\r\n value={this.state.value.z}\r\n onChange={(value) => this.updateStateZ(value)}\r\n />\r\n </div>\r\n )}\r\n {this.state.isExpanded && this.props.useEuler && !this.props.noSlider && (\r\n <div className=\"secondLine\">\r\n <SliderLineComponent\r\n lockObject={this.props.lockObject}\r\n margin={true}\r\n label=\"x\"\r\n minimum={0}\r\n maximum={360}\r\n step={0.1}\r\n directValue={Tools.ToDegrees(this.state.value.x)}\r\n onChange={(value) => this.updateStateX(Tools.ToRadians(value))}\r\n />\r\n <SliderLineComponent\r\n lockObject={this.props.lockObject}\r\n margin={true}\r\n label=\"y\"\r\n minimum={0}\r\n maximum={360}\r\n step={0.1}\r\n directValue={Tools.ToDegrees(this.state.value.y)}\r\n onChange={(value) => this.updateStateY(Tools.ToRadians(value))}\r\n />\r\n <SliderLineComponent\r\n lockObject={this.props.lockObject}\r\n margin={true}\r\n label=\"z\"\r\n minimum={0}\r\n maximum={360}\r\n step={0.1}\r\n directValue={Tools.ToDegrees(this.state.value.z)}\r\n onChange={(value) => this.updateStateZ(Tools.ToRadians(value))}\r\n />\r\n </div>\r\n )}\r\n {this.state.isExpanded && this.props.useEuler && this.props.noSlider && (\r\n <div className=\"secondLine\">\r\n <NumericInput\r\n lockObject={this.props.lockObject}\r\n label=\"x\"\r\n step={this.props.step}\r\n value={Tools.ToDegrees(this.state.value.x)}\r\n onChange={(value) => this.updateStateX(Tools.ToRadians(value))}\r\n />\r\n <NumericInput\r\n lockObject={this.props.lockObject}\r\n label=\"y\"\r\n step={this.props.step}\r\n value={Tools.ToDegrees(this.state.value.y)}\r\n onChange={(value) => this.updateStateY(Tools.ToRadians(value))}\r\n />\r\n <NumericInput\r\n lockObject={this.props.lockObject}\r\n label=\"z\"\r\n step={this.props.step}\r\n value={Tools.ToDegrees(this.state.value.z)}\r\n onChange={(value) => this.updateStateZ(Tools.ToRadians(value))}\r\n />\r\n </div>\r\n )}\r\n </div>\r\n );\r\n }\r\n}\r\n"]}
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
2
2
|
import * as React from "react";
|
3
|
-
import {
|
3
|
+
import { NumericInput } from "./numericInputComponent.js";
|
4
4
|
import { FontAwesomeIcon } from "@fortawesome/react-fontawesome";
|
5
5
|
import { faMinus, faPlus } from "@fortawesome/free-solid-svg-icons";
|
6
6
|
export class Vector4LineComponent extends React.Component {
|
@@ -72,7 +72,7 @@ export class Vector4LineComponent extends React.Component {
|
|
72
72
|
}
|
73
73
|
render() {
|
74
74
|
const chevron = this.state.isExpanded ? _jsx(FontAwesomeIcon, { icon: faMinus }) : _jsx(FontAwesomeIcon, { icon: faPlus });
|
75
|
-
return (_jsxs("div", { className: "vector3Line", children: [_jsxs("div", { className: "firstLine", children: [this.props.icon && _jsx("img", { src: this.props.icon, title: this.props.iconLabel, alt: this.props.iconLabel, className: "icon" }), _jsx("div", { className: "label", title: this.props.label, children: this.props.label }), _jsx("div", { className: "vector", children: `X: ${this.state.value.x.toFixed(2)}, Y: ${this.state.value.y.toFixed(2)}, Z: ${this.state.value.z.toFixed(2)}, W: ${this.state.value.w.toFixed(2)}` }), _jsx("div", { className: "expand hoverIcon", onClick: () => this.switchExpandState(), title: "Expand", children: chevron })] }), _jsxs("div", { className: "secondLine", children: [_jsx(
|
75
|
+
return (_jsxs("div", { className: "vector3Line", children: [_jsxs("div", { className: "firstLine", children: [this.props.icon && _jsx("img", { src: this.props.icon, title: this.props.iconLabel, alt: this.props.iconLabel, className: "icon" }), _jsx("div", { className: "label", title: this.props.label, children: this.props.label }), _jsx("div", { className: "vector", children: `X: ${this.state.value.x.toFixed(2)}, Y: ${this.state.value.y.toFixed(2)}, Z: ${this.state.value.z.toFixed(2)}, W: ${this.state.value.w.toFixed(2)}` }), _jsx("div", { className: "expand hoverIcon", onClick: () => this.switchExpandState(), title: "Expand", children: chevron })] }), _jsxs("div", { className: "secondLine", children: [_jsx(NumericInput, { lockObject: this.props.lockObject, label: "x", step: this.props.step, value: this.state.value.x, onChange: (value) => this.updateStateX(value) }), _jsx(NumericInput, { lockObject: this.props.lockObject, label: "y", step: this.props.step, value: this.state.value.y, onChange: (value) => this.updateStateY(value) }), _jsx(NumericInput, { lockObject: this.props.lockObject, label: "z", step: this.props.step, value: this.state.value.z, onChange: (value) => this.updateStateZ(value) }), _jsx(NumericInput, { lockObject: this.props.lockObject, label: "w", step: this.props.step, value: this.state.value.w, onChange: (value) => this.updateStateW(value) })] })] }));
|
76
76
|
}
|
77
77
|
}
|
78
78
|
// eslint-disable-next-line @typescript-eslint/naming-convention
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"vector4LineComponent.js","sourceRoot":"","sources":["../../../../dev/sharedUiComponents/src/lines/vector4LineComponent.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from \"react\";\r\nimport type { Vector4 } from \"core/Maths/math.vector\";\r\nimport type { Observable } from \"core/Misc/observable\";\r\n\r\nimport { NumericInputComponent } from \"./numericInputComponent\";\r\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\r\nimport { faMinus, faPlus } from \"@fortawesome/free-solid-svg-icons\";\r\nimport type { PropertyChangedEvent } from \"../propertyChangedEvent\";\r\nimport type { LockObject } from \"../tabs/propertyGrids/lockObject\";\r\n\r\ninterface IVector4LineComponentProps {\r\n label: string;\r\n target?: any;\r\n propertyName?: string;\r\n step?: number;\r\n onChange?: (newvalue: Vector4) => void;\r\n useEuler?: boolean;\r\n onPropertyChangedObservable?: Observable<PropertyChangedEvent>;\r\n icon?: string;\r\n iconLabel?: string;\r\n value?: Vector4;\r\n lockObject: LockObject;\r\n}\r\n\r\nexport class Vector4LineComponent extends React.Component<IVector4LineComponentProps, { isExpanded: boolean; value: Vector4 }> {\r\n // eslint-disable-next-line @typescript-eslint/naming-convention\r\n static defaultProps = {\r\n step: 0.001, // cm\r\n };\r\n\r\n private _localChange = false;\r\n\r\n constructor(props: IVector4LineComponentProps) {\r\n super(props);\r\n\r\n this.state = { isExpanded: false, value: this.getCurrentValue().clone() };\r\n }\r\n\r\n getCurrentValue() {\r\n return this.props.value || this.props.target[this.props.propertyName!];\r\n }\r\n\r\n override shouldComponentUpdate(nextProps: IVector4LineComponentProps, nextState: { isExpanded: boolean; value: Vector4 }) {\r\n const nextPropsValue = nextProps.value || nextProps.target[nextProps.propertyName!];\r\n\r\n if (!nextPropsValue.equals(nextState.value) || this._localChange) {\r\n nextState.value = nextPropsValue.clone();\r\n this._localChange = false;\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n switchExpandState() {\r\n this._localChange = true;\r\n this.setState({ isExpanded: !this.state.isExpanded });\r\n }\r\n\r\n raiseOnPropertyChanged(previousValue: Vector4) {\r\n if (this.props.onChange) {\r\n this.props.onChange(this.state.value);\r\n }\r\n\r\n if (!this.props.onPropertyChangedObservable) {\r\n return;\r\n }\r\n this.props.onPropertyChangedObservable.notifyObservers({\r\n object: this.props.target,\r\n property: this.props.propertyName || \"\",\r\n value: this.state.value,\r\n initialValue: previousValue,\r\n });\r\n }\r\n\r\n updateVector4() {\r\n const store = this.getCurrentValue().clone();\r\n\r\n if (this.props.value) {\r\n this.props.value.copyFrom(this.state.value);\r\n } else {\r\n this.props.target[this.props.propertyName!] = this.state.value;\r\n }\r\n\r\n this.setState({ value: store });\r\n\r\n this.raiseOnPropertyChanged(store);\r\n }\r\n\r\n updateStateX(value: number) {\r\n this._localChange = true;\r\n\r\n this.state.value.x = value;\r\n this.updateVector4();\r\n }\r\n\r\n updateStateY(value: number) {\r\n this._localChange = true;\r\n\r\n this.state.value.y = value;\r\n this.updateVector4();\r\n }\r\n\r\n updateStateZ(value: number) {\r\n this._localChange = true;\r\n\r\n this.state.value.z = value;\r\n this.updateVector4();\r\n }\r\n\r\n updateStateW(value: number) {\r\n this._localChange = true;\r\n\r\n this.state.value.w = value;\r\n this.updateVector4();\r\n }\r\n\r\n override render() {\r\n const chevron = this.state.isExpanded ? <FontAwesomeIcon icon={faMinus} /> : <FontAwesomeIcon icon={faPlus} />;\r\n\r\n return (\r\n <div className=\"vector3Line\">\r\n <div className=\"firstLine\">\r\n {this.props.icon && <img src={this.props.icon} title={this.props.iconLabel} alt={this.props.iconLabel} className=\"icon\" />}\r\n <div className=\"label\" title={this.props.label}>\r\n {this.props.label}\r\n </div>\r\n <div className=\"vector\">\r\n {`X: ${this.state.value.x.toFixed(2)}, Y: ${this.state.value.y.toFixed(2)}, Z: ${this.state.value.z.toFixed(2)}, W: ${this.state.value.w.toFixed(2)}`}\r\n </div>\r\n <div className=\"expand hoverIcon\" onClick={() => this.switchExpandState()} title=\"Expand\">\r\n {chevron}\r\n </div>\r\n </div>\r\n {\r\n <div className=\"secondLine\">\r\n <NumericInputComponent\r\n lockObject={this.props.lockObject}\r\n label=\"x\"\r\n step={this.props.step}\r\n value={this.state.value.x}\r\n onChange={(value) => this.updateStateX(value)}\r\n />\r\n <NumericInputComponent\r\n lockObject={this.props.lockObject}\r\n label=\"y\"\r\n step={this.props.step}\r\n value={this.state.value.y}\r\n onChange={(value) => this.updateStateY(value)}\r\n />\r\n <NumericInputComponent\r\n lockObject={this.props.lockObject}\r\n label=\"z\"\r\n step={this.props.step}\r\n value={this.state.value.z}\r\n onChange={(value) => this.updateStateZ(value)}\r\n />\r\n <NumericInputComponent\r\n lockObject={this.props.lockObject}\r\n label=\"w\"\r\n step={this.props.step}\r\n value={this.state.value.w}\r\n onChange={(value) => this.updateStateW(value)}\r\n />\r\n </div>\r\n }\r\n </div>\r\n );\r\n }\r\n}\r\n"]}
|
1
|
+
{"version":3,"file":"vector4LineComponent.js","sourceRoot":"","sources":["../../../../dev/sharedUiComponents/src/lines/vector4LineComponent.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from \"react\";\r\nimport type { Vector4 } from \"core/Maths/math.vector\";\r\nimport type { Observable } from \"core/Misc/observable\";\r\n\r\nimport { NumericInput } from \"./numericInputComponent\";\r\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\r\nimport { faMinus, faPlus } from \"@fortawesome/free-solid-svg-icons\";\r\nimport type { PropertyChangedEvent } from \"../propertyChangedEvent\";\r\nimport type { LockObject } from \"../tabs/propertyGrids/lockObject\";\r\n\r\ninterface IVector4LineComponentProps {\r\n label: string;\r\n target?: any;\r\n propertyName?: string;\r\n step?: number;\r\n onChange?: (newvalue: Vector4) => void;\r\n useEuler?: boolean;\r\n onPropertyChangedObservable?: Observable<PropertyChangedEvent>;\r\n icon?: string;\r\n iconLabel?: string;\r\n value?: Vector4;\r\n lockObject: LockObject;\r\n}\r\n\r\nexport class Vector4LineComponent extends React.Component<IVector4LineComponentProps, { isExpanded: boolean; value: Vector4 }> {\r\n // eslint-disable-next-line @typescript-eslint/naming-convention\r\n static defaultProps = {\r\n step: 0.001, // cm\r\n };\r\n\r\n private _localChange = false;\r\n\r\n constructor(props: IVector4LineComponentProps) {\r\n super(props);\r\n\r\n this.state = { isExpanded: false, value: this.getCurrentValue().clone() };\r\n }\r\n\r\n getCurrentValue() {\r\n return this.props.value || this.props.target[this.props.propertyName!];\r\n }\r\n\r\n override shouldComponentUpdate(nextProps: IVector4LineComponentProps, nextState: { isExpanded: boolean; value: Vector4 }) {\r\n const nextPropsValue = nextProps.value || nextProps.target[nextProps.propertyName!];\r\n\r\n if (!nextPropsValue.equals(nextState.value) || this._localChange) {\r\n nextState.value = nextPropsValue.clone();\r\n this._localChange = false;\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n switchExpandState() {\r\n this._localChange = true;\r\n this.setState({ isExpanded: !this.state.isExpanded });\r\n }\r\n\r\n raiseOnPropertyChanged(previousValue: Vector4) {\r\n if (this.props.onChange) {\r\n this.props.onChange(this.state.value);\r\n }\r\n\r\n if (!this.props.onPropertyChangedObservable) {\r\n return;\r\n }\r\n this.props.onPropertyChangedObservable.notifyObservers({\r\n object: this.props.target,\r\n property: this.props.propertyName || \"\",\r\n value: this.state.value,\r\n initialValue: previousValue,\r\n });\r\n }\r\n\r\n updateVector4() {\r\n const store = this.getCurrentValue().clone();\r\n\r\n if (this.props.value) {\r\n this.props.value.copyFrom(this.state.value);\r\n } else {\r\n this.props.target[this.props.propertyName!] = this.state.value;\r\n }\r\n\r\n this.setState({ value: store });\r\n\r\n this.raiseOnPropertyChanged(store);\r\n }\r\n\r\n updateStateX(value: number) {\r\n this._localChange = true;\r\n\r\n this.state.value.x = value;\r\n this.updateVector4();\r\n }\r\n\r\n updateStateY(value: number) {\r\n this._localChange = true;\r\n\r\n this.state.value.y = value;\r\n this.updateVector4();\r\n }\r\n\r\n updateStateZ(value: number) {\r\n this._localChange = true;\r\n\r\n this.state.value.z = value;\r\n this.updateVector4();\r\n }\r\n\r\n updateStateW(value: number) {\r\n this._localChange = true;\r\n\r\n this.state.value.w = value;\r\n this.updateVector4();\r\n }\r\n\r\n override render() {\r\n const chevron = this.state.isExpanded ? <FontAwesomeIcon icon={faMinus} /> : <FontAwesomeIcon icon={faPlus} />;\r\n\r\n return (\r\n <div className=\"vector3Line\">\r\n <div className=\"firstLine\">\r\n {this.props.icon && <img src={this.props.icon} title={this.props.iconLabel} alt={this.props.iconLabel} className=\"icon\" />}\r\n <div className=\"label\" title={this.props.label}>\r\n {this.props.label}\r\n </div>\r\n <div className=\"vector\">\r\n {`X: ${this.state.value.x.toFixed(2)}, Y: ${this.state.value.y.toFixed(2)}, Z: ${this.state.value.z.toFixed(2)}, W: ${this.state.value.w.toFixed(2)}`}\r\n </div>\r\n <div className=\"expand hoverIcon\" onClick={() => this.switchExpandState()} title=\"Expand\">\r\n {chevron}\r\n </div>\r\n </div>\r\n {\r\n <div className=\"secondLine\">\r\n <NumericInput\r\n lockObject={this.props.lockObject}\r\n label=\"x\"\r\n step={this.props.step}\r\n value={this.state.value.x}\r\n onChange={(value) => this.updateStateX(value)}\r\n />\r\n <NumericInput\r\n lockObject={this.props.lockObject}\r\n label=\"y\"\r\n step={this.props.step}\r\n value={this.state.value.y}\r\n onChange={(value) => this.updateStateY(value)}\r\n />\r\n <NumericInput\r\n lockObject={this.props.lockObject}\r\n label=\"z\"\r\n step={this.props.step}\r\n value={this.state.value.z}\r\n onChange={(value) => this.updateStateZ(value)}\r\n />\r\n <NumericInput\r\n lockObject={this.props.lockObject}\r\n label=\"w\"\r\n step={this.props.step}\r\n value={this.state.value.w}\r\n onChange={(value) => this.updateStateW(value)}\r\n />\r\n </div>\r\n }\r\n </div>\r\n );\r\n }\r\n}\r\n"]}
|
package/package.json
CHANGED
@@ -1,7 +1,7 @@
|
|
1
|
-
import {
|
1
|
+
import { ColorPickerComponent } from "../../components/colorPicker/ColorPicker";
|
2
2
|
import type { StoryObj } from "@storybook/react";
|
3
3
|
declare const _default: {
|
4
|
-
component: typeof
|
4
|
+
component: typeof ColorPickerComponent;
|
5
5
|
};
|
6
6
|
export default _default;
|
7
|
-
export declare const Default: StoryObj<typeof
|
7
|
+
export declare const Default: StoryObj<typeof ColorPickerComponent>;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import { Color3 } from "@babylonjs/core/Maths/math.color.js";
|
2
|
-
import {
|
3
|
-
export default { component:
|
2
|
+
import { ColorPickerComponent } from "../../components/colorPicker/ColorPicker.js";
|
3
|
+
export default { component: ColorPickerComponent };
|
4
4
|
export const Default = { args: { color: new Color3(1, 0, 0) } };
|
5
5
|
//# sourceMappingURL=ColorPicker.stories.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ColorPicker.stories.js","sourceRoot":"","sources":["../../../../../dev/sharedUiComponents/src/stories/colorPicker/ColorPicker.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,4CAA8B;AAC/C,OAAO,EAAE,
|
1
|
+
{"version":3,"file":"ColorPicker.stories.js","sourceRoot":"","sources":["../../../../../dev/sharedUiComponents/src/stories/colorPicker/ColorPicker.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,4CAA8B;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AAGhF,eAAe,EAAE,SAAS,EAAE,oBAAoB,EAAE,CAAC;AAEnD,MAAM,CAAC,MAAM,OAAO,GAA0C,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC","sourcesContent":["import { Color3 } from \"core/Maths/math.color\";\r\nimport { ColorPickerComponent } from \"../../components/colorPicker/ColorPicker\";\r\nimport type { StoryObj } from \"@storybook/react\";\r\n\r\nexport default { component: ColorPickerComponent };\r\n\r\nexport const Default: StoryObj<typeof ColorPickerComponent> = { args: { color: new Color3(1, 0, 0) } };\r\n"]}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ColorPickerLineComponent.stories.js","sourceRoot":"","sources":["../../../../../dev/sharedUiComponents/src/stories/lines/ColorPickerLineComponent.stories.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,4CAA8B;AAE/C,OAAO,EAAE,wBAAwB,EAAE,MAAM,iDAAiD,CAAC;AAG3F,eAAe;IACX,SAAS,EAAE,wBAAwB;CACtC,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAA8C;IAC9D,MAAM,EAAE,CAAC,
|
1
|
+
{"version":3,"file":"ColorPickerLineComponent.stories.js","sourceRoot":"","sources":["../../../../../dev/sharedUiComponents/src/stories/lines/ColorPickerLineComponent.stories.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,4CAA8B;AAE/C,OAAO,EAAE,wBAAwB,EAAE,MAAM,iDAAiD,CAAC;AAG3F,eAAe;IACX,SAAS,EAAE,wBAAwB;CACtC,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAA8C;IAC9D,MAAM,EAAE,CAAC,IAAoC,EAAE,EAAE,CAAC,CAC9C,cAAK,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,YACpE,KAAC,wBAAwB,OAAK,IAAI,GAAI,GACpC,CACT;IACD,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE;CACvC,CAAC","sourcesContent":["import { Color3 } from \"core/Maths/math.color\";\r\nimport type { IColorPickerLineComponentProps } from \"../../components/lines/ColorPickerLineComponent\";\r\nimport { ColorPickerLineComponent } from \"../../components/lines/ColorPickerLineComponent\";\r\nimport type { StoryObj } from \"@storybook/react\";\r\n\r\nexport default {\r\n component: ColorPickerLineComponent,\r\n};\r\n\r\nexport const Default: StoryObj<typeof ColorPickerLineComponent> = {\r\n render: (args: IColorPickerLineComponentProps) => (\r\n <div style={{ width: \"100%\", display: \"flex\", justifyContent: \"center\" }}>\r\n <ColorPickerLineComponent {...args} />\r\n </div>\r\n ),\r\n args: { value: new Color3(1, 0, 0) },\r\n};\r\n"]}
|
@@ -6,7 +6,7 @@ import { Control } from "@babylonjs/gui/2D/controls/control.js";
|
|
6
6
|
import { SliderLineComponent } from "../../../lines/sliderLineComponent.js";
|
7
7
|
import { FloatLineComponent } from "../../../lines/floatLineComponent.js";
|
8
8
|
import { TextInputLineComponent } from "../../../lines/textInputLineComponent.js";
|
9
|
-
import {
|
9
|
+
import { OptionsLine } from "../../../lines/optionsLineComponent.js";
|
10
10
|
import { makeTargetsProxy } from "../../../lines/targetsProxy.js";
|
11
11
|
export class CommonControlPropertyGridComponent extends React.Component {
|
12
12
|
constructor(props) {
|
@@ -50,7 +50,7 @@ export class CommonControlPropertyGridComponent extends React.Component {
|
|
50
50
|
{ label: "Bottom", value: Control.VERTICAL_ALIGNMENT_BOTTOM },
|
51
51
|
{ label: "Center", value: Control.VERTICAL_ALIGNMENT_CENTER },
|
52
52
|
];
|
53
|
-
return (_jsxs(_Fragment, { children: [_jsxs(LineContainerComponent, { title: "GENERAL", children: [_jsx(TextLineComponent, { label: "Class", value: control.getClassName() }), _jsx(TextInputLineComponent, { lockObject: this.props.lockObject, label: "Name", target: makeTargetsProxy(controls, this.props.onPropertyChangedObservable), propertyName: "name", onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(TextLineComponent, { label: "Unique ID", value: control.uniqueId.toString() }), _jsx(SliderLineComponent, { lockObject: this.props.lockObject, label: "Alpha", target: makeTargetsProxy(controls, this.props.onPropertyChangedObservable), propertyName: "alpha", minimum: 0, maximum: 1, step: 0.01, onPropertyChangedObservable: this.props.onPropertyChangedObservable }), control.color !== undefined && (_jsx(TextInputLineComponent, { lockObject: this.props.lockObject, label: "Color", target: makeTargetsProxy(controls, this.props.onPropertyChangedObservable), propertyName: "color", onPropertyChangedObservable: this.props.onPropertyChangedObservable })), control.background !== undefined && (_jsx(TextInputLineComponent, { lockObject: this.props.lockObject, label: "Background", target: makeTargetsProxy(controls, this.props.onPropertyChangedObservable), propertyName: "background", onPropertyChangedObservable: this.props.onPropertyChangedObservable })), _jsx(FloatLineComponent, { lockObject: this.props.lockObject, label: "ZIndex", target: makeTargetsProxy(controls, this.props.onPropertyChangedObservable), propertyName: "zIndex", onPropertyChangedObservable: this.props.onPropertyChangedObservable })] }), this.renderGridInformation(control), _jsxs(LineContainerComponent, { title: "ALIGNMENT", children: [_jsx(
|
53
|
+
return (_jsxs(_Fragment, { children: [_jsxs(LineContainerComponent, { title: "GENERAL", children: [_jsx(TextLineComponent, { label: "Class", value: control.getClassName() }), _jsx(TextInputLineComponent, { lockObject: this.props.lockObject, label: "Name", target: makeTargetsProxy(controls, this.props.onPropertyChangedObservable), propertyName: "name", onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(TextLineComponent, { label: "Unique ID", value: control.uniqueId.toString() }), _jsx(SliderLineComponent, { lockObject: this.props.lockObject, label: "Alpha", target: makeTargetsProxy(controls, this.props.onPropertyChangedObservable), propertyName: "alpha", minimum: 0, maximum: 1, step: 0.01, onPropertyChangedObservable: this.props.onPropertyChangedObservable }), control.color !== undefined && (_jsx(TextInputLineComponent, { lockObject: this.props.lockObject, label: "Color", target: makeTargetsProxy(controls, this.props.onPropertyChangedObservable), propertyName: "color", onPropertyChangedObservable: this.props.onPropertyChangedObservable })), control.background !== undefined && (_jsx(TextInputLineComponent, { lockObject: this.props.lockObject, label: "Background", target: makeTargetsProxy(controls, this.props.onPropertyChangedObservable), propertyName: "background", onPropertyChangedObservable: this.props.onPropertyChangedObservable })), _jsx(FloatLineComponent, { lockObject: this.props.lockObject, label: "ZIndex", target: makeTargetsProxy(controls, this.props.onPropertyChangedObservable), propertyName: "zIndex", onPropertyChangedObservable: this.props.onPropertyChangedObservable })] }), this.renderGridInformation(control), _jsxs(LineContainerComponent, { title: "ALIGNMENT", children: [_jsx(OptionsLine, { label: "Horizontal", options: horizontalOptions, target: makeTargetsProxy(controls, this.props.onPropertyChangedObservable), propertyName: "horizontalAlignment", onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(OptionsLine, { label: "Vertical", options: verticalOptions, target: makeTargetsProxy(controls, this.props.onPropertyChangedObservable), propertyName: "verticalAlignment", onPropertyChangedObservable: this.props.onPropertyChangedObservable })] }), _jsxs(LineContainerComponent, { title: "POSITION", children: [_jsx(TextInputLineComponent, { lockObject: this.props.lockObject, label: "Left", target: makeTargetsProxy(controls, this.props.onPropertyChangedObservable), propertyName: "left", onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(TextInputLineComponent, { lockObject: this.props.lockObject, label: "Top", target: makeTargetsProxy(controls, this.props.onPropertyChangedObservable), propertyName: "top", onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(TextInputLineComponent, { lockObject: this.props.lockObject, label: "Width", target: makeTargetsProxy(controls, this.props.onPropertyChangedObservable), propertyName: "width", onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(TextInputLineComponent, { lockObject: this.props.lockObject, label: "Height", target: makeTargetsProxy(controls, this.props.onPropertyChangedObservable), propertyName: "height", onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(TextInputLineComponent, { lockObject: this.props.lockObject, label: "Padding left", target: makeTargetsProxy(controls, this.props.onPropertyChangedObservable), propertyName: "paddingLeft", onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(TextInputLineComponent, { lockObject: this.props.lockObject, label: "Padding top", target: makeTargetsProxy(controls, this.props.onPropertyChangedObservable), propertyName: "paddingTop", onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(TextInputLineComponent, { lockObject: this.props.lockObject, label: "Padding right", target: makeTargetsProxy(controls, this.props.onPropertyChangedObservable), propertyName: "paddingRight", onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(TextInputLineComponent, { lockObject: this.props.lockObject, label: "Padding bottom", target: makeTargetsProxy(controls, this.props.onPropertyChangedObservable), propertyName: "paddingBottom", onPropertyChangedObservable: this.props.onPropertyChangedObservable })] }), _jsxs(LineContainerComponent, { title: "TRANSFORMATION", closed: true, children: [_jsx(FloatLineComponent, { lockObject: this.props.lockObject, label: "ScaleX", target: makeTargetsProxy(controls, this.props.onPropertyChangedObservable), propertyName: "scaleX", onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(FloatLineComponent, { lockObject: this.props.lockObject, label: "ScaleY", target: makeTargetsProxy(controls, this.props.onPropertyChangedObservable), propertyName: "scaleY", onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(SliderLineComponent, { lockObject: this.props.lockObject, label: "Rotation", target: makeTargetsProxy(controls, this.props.onPropertyChangedObservable), propertyName: "rotation", minimum: 0, maximum: 2 * Math.PI, step: 0.01, onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(FloatLineComponent, { lockObject: this.props.lockObject, label: "Transform center X", target: makeTargetsProxy(controls, this.props.onPropertyChangedObservable), propertyName: "transformCenterX", onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(FloatLineComponent, { lockObject: this.props.lockObject, label: "Transform center Y", target: makeTargetsProxy(controls, this.props.onPropertyChangedObservable), propertyName: "transformCenterY", onPropertyChangedObservable: this.props.onPropertyChangedObservable })] }), _jsxs(LineContainerComponent, { title: "FONT", closed: true, children: [_jsx(TextInputLineComponent, { lockObject: this.props.lockObject, label: "Family", target: makeTargetsProxy(controls, this.props.onPropertyChangedObservable), propertyName: "fontFamily", onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(TextInputLineComponent, { lockObject: this.props.lockObject, label: "Size", target: makeTargetsProxy(controls, this.props.onPropertyChangedObservable), propertyName: "fontSize", onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(TextInputLineComponent, { lockObject: this.props.lockObject, label: "Weight", target: makeTargetsProxy(controls, this.props.onPropertyChangedObservable), propertyName: "fontWeight", onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(TextInputLineComponent, { lockObject: this.props.lockObject, label: "Style", target: makeTargetsProxy(controls, this.props.onPropertyChangedObservable), propertyName: "fontStyle", onPropertyChangedObservable: this.props.onPropertyChangedObservable })] }), _jsxs(LineContainerComponent, { title: "SHADOWS", closed: true, children: [_jsx(TextInputLineComponent, { lockObject: this.props.lockObject, label: "Color", target: makeTargetsProxy(controls, this.props.onPropertyChangedObservable), propertyName: "shadowColor", onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(FloatLineComponent, { lockObject: this.props.lockObject, label: "Offset X", target: makeTargetsProxy(controls, this.props.onPropertyChangedObservable), propertyName: "shadowOffsetX", onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(FloatLineComponent, { lockObject: this.props.lockObject, label: "Offset Y", target: makeTargetsProxy(controls, this.props.onPropertyChangedObservable), propertyName: "shadowOffsetY", onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(FloatLineComponent, { lockObject: this.props.lockObject, label: "Blur", target: makeTargetsProxy(controls, this.props.onPropertyChangedObservable), propertyName: "shadowBlur", onPropertyChangedObservable: this.props.onPropertyChangedObservable })] })] }));
|
54
54
|
}
|
55
55
|
}
|
56
56
|
//# sourceMappingURL=commonControlPropertyGridComponent.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"commonControlPropertyGridComponent.js","sourceRoot":"","sources":["../../../../../../dev/sharedUiComponents/src/tabs/propertyGrids/gui/commonControlPropertyGridComponent.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from \"react\";\r\nimport type { Observable } from \"core/Misc/observable\";\r\nimport type { PropertyChangedEvent } from \"../../../propertyChangedEvent\";\r\nimport { LineContainerComponent } from \"../../../lines/lineContainerComponent\";\r\nimport { TextLineComponent } from \"../../../lines/textLineComponent\";\r\nimport { Control } from \"gui/2D/controls/control\";\r\nimport type { Grid } from \"gui/2D/controls/grid\";\r\nimport { SliderLineComponent } from \"../../../lines/sliderLineComponent\";\r\nimport { FloatLineComponent } from \"../../../lines/floatLineComponent\";\r\nimport { TextInputLineComponent } from \"../../../lines/textInputLineComponent\";\r\nimport type { LockObject } from \"../../../tabs/propertyGrids/lockObject\";\r\nimport { OptionsLineComponent } from \"../../../lines/optionsLineComponent\";\r\nimport { makeTargetsProxy } from \"../../../lines/targetsProxy\";\r\n\r\ninterface ICommonControlPropertyGridComponentProps {\r\n controls?: Control[];\r\n control?: Control;\r\n lockObject: LockObject;\r\n onPropertyChangedObservable?: Observable<PropertyChangedEvent>;\r\n}\r\n\r\nexport class CommonControlPropertyGridComponent extends React.Component<ICommonControlPropertyGridComponentProps> {\r\n constructor(props: ICommonControlPropertyGridComponentProps) {\r\n super(props);\r\n }\r\n\r\n renderGridInformation(control: Control) {\r\n if (!control.parent) {\r\n return null;\r\n }\r\n\r\n const gridParent = control.parent;\r\n\r\n if ((gridParent as any).rowCount === undefined) {\r\n return null;\r\n }\r\n\r\n const grid = gridParent as Grid;\r\n const childCellInfo = grid.getChildCellInfo(control);\r\n\r\n if (childCellInfo === undefined) {\r\n return null;\r\n }\r\n\r\n const cellInfos = childCellInfo.split(\":\");\r\n\r\n return (\r\n <LineContainerComponent title=\"GRID\">\r\n <TextLineComponent label={\"Row\"} value={cellInfos[0]} />\r\n <TextLineComponent label={\"Column\"} value={cellInfos[1]} />\r\n </LineContainerComponent>\r\n );\r\n }\r\n\r\n override render() {\r\n let controls: Control[];\r\n if (this.props.controls) {\r\n controls = this.props.controls;\r\n } else if (this.props.control) {\r\n controls = [this.props.control];\r\n } else {\r\n return;\r\n }\r\n const control = controls[0];\r\n\r\n const horizontalOptions = [\r\n { label: \"Left\", value: Control.HORIZONTAL_ALIGNMENT_LEFT },\r\n { label: \"Right\", value: Control.HORIZONTAL_ALIGNMENT_RIGHT },\r\n { label: \"Center\", value: Control.HORIZONTAL_ALIGNMENT_CENTER },\r\n ];\r\n\r\n const verticalOptions = [\r\n { label: \"Top\", value: Control.VERTICAL_ALIGNMENT_TOP },\r\n { label: \"Bottom\", value: Control.VERTICAL_ALIGNMENT_BOTTOM },\r\n { label: \"Center\", value: Control.VERTICAL_ALIGNMENT_CENTER },\r\n ];\r\n\r\n return (\r\n <>\r\n <LineContainerComponent title=\"GENERAL\">\r\n <TextLineComponent label=\"Class\" value={control.getClassName()} />\r\n <TextInputLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Name\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"name\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <TextLineComponent label=\"Unique ID\" value={control.uniqueId.toString()} />\r\n <SliderLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Alpha\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"alpha\"\r\n minimum={0}\r\n maximum={1}\r\n step={0.01}\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n {(control as any).color !== undefined && (\r\n <TextInputLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Color\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"color\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n )}\r\n {(control as any).background !== undefined && (\r\n <TextInputLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Background\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"background\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n )}\r\n <FloatLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"ZIndex\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"zIndex\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n </LineContainerComponent>\r\n {this.renderGridInformation(control)}\r\n <LineContainerComponent title=\"ALIGNMENT\">\r\n <OptionsLineComponent\r\n label=\"Horizontal\"\r\n options={horizontalOptions}\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"horizontalAlignment\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <OptionsLineComponent\r\n label=\"Vertical\"\r\n options={verticalOptions}\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"verticalAlignment\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n </LineContainerComponent>\r\n <LineContainerComponent title=\"POSITION\">\r\n <TextInputLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Left\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"left\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <TextInputLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Top\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"top\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <TextInputLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Width\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"width\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <TextInputLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Height\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"height\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <TextInputLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Padding left\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"paddingLeft\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <TextInputLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Padding top\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"paddingTop\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <TextInputLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Padding right\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"paddingRight\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <TextInputLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Padding bottom\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"paddingBottom\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n </LineContainerComponent>\r\n <LineContainerComponent title=\"TRANSFORMATION\" closed={true}>\r\n <FloatLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"ScaleX\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"scaleX\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <FloatLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"ScaleY\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"scaleY\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <SliderLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Rotation\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"rotation\"\r\n minimum={0}\r\n maximum={2 * Math.PI}\r\n step={0.01}\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <FloatLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Transform center X\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"transformCenterX\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <FloatLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Transform center Y\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"transformCenterY\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n </LineContainerComponent>\r\n <LineContainerComponent title=\"FONT\" closed={true}>\r\n <TextInputLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Family\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"fontFamily\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <TextInputLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Size\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"fontSize\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <TextInputLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Weight\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"fontWeight\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <TextInputLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Style\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"fontStyle\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n </LineContainerComponent>\r\n <LineContainerComponent title=\"SHADOWS\" closed={true}>\r\n <TextInputLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Color\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"shadowColor\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <FloatLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Offset X\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"shadowOffsetX\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <FloatLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Offset Y\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"shadowOffsetY\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <FloatLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Blur\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"shadowBlur\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n </LineContainerComponent>\r\n </>\r\n );\r\n }\r\n}\r\n"]}
|
1
|
+
{"version":3,"file":"commonControlPropertyGridComponent.js","sourceRoot":"","sources":["../../../../../../dev/sharedUiComponents/src/tabs/propertyGrids/gui/commonControlPropertyGridComponent.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from \"react\";\r\nimport type { Observable } from \"core/Misc/observable\";\r\nimport type { PropertyChangedEvent } from \"../../../propertyChangedEvent\";\r\nimport { LineContainerComponent } from \"../../../lines/lineContainerComponent\";\r\nimport { TextLineComponent } from \"../../../lines/textLineComponent\";\r\nimport { Control } from \"gui/2D/controls/control\";\r\nimport type { Grid } from \"gui/2D/controls/grid\";\r\nimport { SliderLineComponent } from \"../../../lines/sliderLineComponent\";\r\nimport { FloatLineComponent } from \"../../../lines/floatLineComponent\";\r\nimport { TextInputLineComponent } from \"../../../lines/textInputLineComponent\";\r\nimport type { LockObject } from \"../../../tabs/propertyGrids/lockObject\";\r\nimport { OptionsLine } from \"../../../lines/optionsLineComponent\";\r\nimport { makeTargetsProxy } from \"../../../lines/targetsProxy\";\r\n\r\ninterface ICommonControlPropertyGridComponentProps {\r\n controls?: Control[];\r\n control?: Control;\r\n lockObject: LockObject;\r\n onPropertyChangedObservable?: Observable<PropertyChangedEvent>;\r\n}\r\n\r\nexport class CommonControlPropertyGridComponent extends React.Component<ICommonControlPropertyGridComponentProps> {\r\n constructor(props: ICommonControlPropertyGridComponentProps) {\r\n super(props);\r\n }\r\n\r\n renderGridInformation(control: Control) {\r\n if (!control.parent) {\r\n return null;\r\n }\r\n\r\n const gridParent = control.parent;\r\n\r\n if ((gridParent as any).rowCount === undefined) {\r\n return null;\r\n }\r\n\r\n const grid = gridParent as Grid;\r\n const childCellInfo = grid.getChildCellInfo(control);\r\n\r\n if (childCellInfo === undefined) {\r\n return null;\r\n }\r\n\r\n const cellInfos = childCellInfo.split(\":\");\r\n\r\n return (\r\n <LineContainerComponent title=\"GRID\">\r\n <TextLineComponent label={\"Row\"} value={cellInfos[0]} />\r\n <TextLineComponent label={\"Column\"} value={cellInfos[1]} />\r\n </LineContainerComponent>\r\n );\r\n }\r\n\r\n override render() {\r\n let controls: Control[];\r\n if (this.props.controls) {\r\n controls = this.props.controls;\r\n } else if (this.props.control) {\r\n controls = [this.props.control];\r\n } else {\r\n return;\r\n }\r\n const control = controls[0];\r\n\r\n const horizontalOptions = [\r\n { label: \"Left\", value: Control.HORIZONTAL_ALIGNMENT_LEFT },\r\n { label: \"Right\", value: Control.HORIZONTAL_ALIGNMENT_RIGHT },\r\n { label: \"Center\", value: Control.HORIZONTAL_ALIGNMENT_CENTER },\r\n ];\r\n\r\n const verticalOptions = [\r\n { label: \"Top\", value: Control.VERTICAL_ALIGNMENT_TOP },\r\n { label: \"Bottom\", value: Control.VERTICAL_ALIGNMENT_BOTTOM },\r\n { label: \"Center\", value: Control.VERTICAL_ALIGNMENT_CENTER },\r\n ];\r\n\r\n return (\r\n <>\r\n <LineContainerComponent title=\"GENERAL\">\r\n <TextLineComponent label=\"Class\" value={control.getClassName()} />\r\n <TextInputLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Name\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"name\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <TextLineComponent label=\"Unique ID\" value={control.uniqueId.toString()} />\r\n <SliderLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Alpha\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"alpha\"\r\n minimum={0}\r\n maximum={1}\r\n step={0.01}\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n {(control as any).color !== undefined && (\r\n <TextInputLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Color\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"color\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n )}\r\n {(control as any).background !== undefined && (\r\n <TextInputLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Background\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"background\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n )}\r\n <FloatLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"ZIndex\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"zIndex\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n </LineContainerComponent>\r\n {this.renderGridInformation(control)}\r\n <LineContainerComponent title=\"ALIGNMENT\">\r\n <OptionsLine\r\n label=\"Horizontal\"\r\n options={horizontalOptions}\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"horizontalAlignment\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <OptionsLine\r\n label=\"Vertical\"\r\n options={verticalOptions}\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"verticalAlignment\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n </LineContainerComponent>\r\n <LineContainerComponent title=\"POSITION\">\r\n <TextInputLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Left\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"left\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <TextInputLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Top\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"top\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <TextInputLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Width\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"width\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <TextInputLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Height\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"height\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <TextInputLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Padding left\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"paddingLeft\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <TextInputLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Padding top\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"paddingTop\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <TextInputLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Padding right\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"paddingRight\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <TextInputLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Padding bottom\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"paddingBottom\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n </LineContainerComponent>\r\n <LineContainerComponent title=\"TRANSFORMATION\" closed={true}>\r\n <FloatLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"ScaleX\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"scaleX\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <FloatLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"ScaleY\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"scaleY\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <SliderLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Rotation\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"rotation\"\r\n minimum={0}\r\n maximum={2 * Math.PI}\r\n step={0.01}\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <FloatLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Transform center X\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"transformCenterX\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <FloatLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Transform center Y\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"transformCenterY\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n </LineContainerComponent>\r\n <LineContainerComponent title=\"FONT\" closed={true}>\r\n <TextInputLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Family\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"fontFamily\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <TextInputLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Size\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"fontSize\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <TextInputLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Weight\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"fontWeight\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <TextInputLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Style\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"fontStyle\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n </LineContainerComponent>\r\n <LineContainerComponent title=\"SHADOWS\" closed={true}>\r\n <TextInputLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Color\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"shadowColor\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <FloatLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Offset X\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"shadowOffsetX\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <FloatLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Offset Y\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"shadowOffsetY\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <FloatLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Blur\"\r\n target={makeTargetsProxy(controls, this.props.onPropertyChangedObservable)}\r\n propertyName=\"shadowBlur\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n </LineContainerComponent>\r\n </>\r\n );\r\n }\r\n}\r\n"]}
|
@@ -5,7 +5,7 @@ import { LineContainerComponent } from "../../../lines/lineContainerComponent.js
|
|
5
5
|
import { Image } from "@babylonjs/gui/2D/controls/image.js";
|
6
6
|
import { FloatLineComponent } from "../../../lines/floatLineComponent.js";
|
7
7
|
import { CheckBoxLineComponent } from "../../../lines/checkBoxLineComponent.js";
|
8
|
-
import {
|
8
|
+
import { OptionsLine } from "../../../lines/optionsLineComponent.js";
|
9
9
|
import { TextInputLineComponent } from "../../../lines/textInputLineComponent.js";
|
10
10
|
export class ImagePropertyGridComponent extends React.Component {
|
11
11
|
constructor(props) {
|
@@ -20,7 +20,7 @@ export class ImagePropertyGridComponent extends React.Component {
|
|
20
20
|
{ label: "Extend", value: Image.STRETCH_EXTEND },
|
21
21
|
{ label: "NinePatch", value: Image.STRETCH_NINE_PATCH },
|
22
22
|
];
|
23
|
-
return (_jsxs(_Fragment, { children: [_jsx(CommonControlPropertyGridComponent, { lockObject: this.props.lockObject, control: image, onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsxs(LineContainerComponent, { title: "IMAGE", children: [_jsx(TextInputLineComponent, { lockObject: this.props.lockObject, label: "Source", target: image, propertyName: "source", onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(FloatLineComponent, { lockObject: this.props.lockObject, label: "Source left", target: image, propertyName: "sourceLeft", onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(FloatLineComponent, { lockObject: this.props.lockObject, label: "Source top", target: image, propertyName: "sourceTop", onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(FloatLineComponent, { lockObject: this.props.lockObject, label: "Source width", target: image, propertyName: "sourceWidth", onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(FloatLineComponent, { lockObject: this.props.lockObject, label: "Source height", target: image, propertyName: "sourceHeight", onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(CheckBoxLineComponent, { label: "Autoscale", target: image, propertyName: "autoScale", onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(
|
23
|
+
return (_jsxs(_Fragment, { children: [_jsx(CommonControlPropertyGridComponent, { lockObject: this.props.lockObject, control: image, onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsxs(LineContainerComponent, { title: "IMAGE", children: [_jsx(TextInputLineComponent, { lockObject: this.props.lockObject, label: "Source", target: image, propertyName: "source", onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(FloatLineComponent, { lockObject: this.props.lockObject, label: "Source left", target: image, propertyName: "sourceLeft", onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(FloatLineComponent, { lockObject: this.props.lockObject, label: "Source top", target: image, propertyName: "sourceTop", onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(FloatLineComponent, { lockObject: this.props.lockObject, label: "Source width", target: image, propertyName: "sourceWidth", onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(FloatLineComponent, { lockObject: this.props.lockObject, label: "Source height", target: image, propertyName: "sourceHeight", onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(CheckBoxLineComponent, { label: "Autoscale", target: image, propertyName: "autoScale", onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(OptionsLine, { label: "Stretch", options: stretchOptions, target: image, propertyName: "stretch", onPropertyChangedObservable: this.props.onPropertyChangedObservable, onSelect: (value) => this.setState({ mode: value }) })] }), _jsxs(LineContainerComponent, { title: "ANIMATION SHEET", children: [_jsx(FloatLineComponent, { lockObject: this.props.lockObject, label: "Cell Id", isInteger: true, target: image, propertyName: "cellId", onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(FloatLineComponent, { lockObject: this.props.lockObject, label: "Cell width", target: image, propertyName: "cellWidth", onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(FloatLineComponent, { lockObject: this.props.lockObject, label: "Cell height", target: image, propertyName: "cellHeight", onPropertyChangedObservable: this.props.onPropertyChangedObservable })] })] }));
|
24
24
|
}
|
25
25
|
}
|
26
26
|
//# sourceMappingURL=imagePropertyGridComponent.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"imagePropertyGridComponent.js","sourceRoot":"","sources":["../../../../../../dev/sharedUiComponents/src/tabs/propertyGrids/gui/imagePropertyGridComponent.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAE,kCAAkC,EAAE,MAAM,oEAAoE,CAAC;AACxH,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAE/E,OAAO,EAAE,KAAK,EAAE,4CAA8B;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,
|
1
|
+
{"version":3,"file":"imagePropertyGridComponent.js","sourceRoot":"","sources":["../../../../../../dev/sharedUiComponents/src/tabs/propertyGrids/gui/imagePropertyGridComponent.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAE,kCAAkC,EAAE,MAAM,oEAAoE,CAAC;AACxH,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAE/E,OAAO,EAAE,KAAK,EAAE,4CAA8B;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAC;AAClE,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAQ/E,MAAM,OAAO,0BAA2B,SAAQ,KAAK,CAAC,SAA2C;IAC7F,YAAY,KAAuC;QAC/C,KAAK,CAAC,KAAK,CAAC,CAAC;IACjB,CAAC;IAEQ,MAAM;QACX,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;QAE/B,MAAM,cAAc,GAAG;YACnB,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,YAAY,EAAE;YAC5C,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,YAAY,EAAE;YAC5C,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,eAAe,EAAE;YAClD,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,cAAc,EAAE;YAChD,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK,CAAC,kBAAkB,EAAE;SAC1D,CAAC;QAEF,OAAO,CACH,8BACI,KAAC,kCAAkC,IAAC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,2BAA2B,EAAE,IAAI,CAAC,KAAK,CAAC,2BAA2B,GAAI,EAC9J,MAAC,sBAAsB,IAAC,KAAK,EAAC,OAAO,aACjC,KAAC,sBAAsB,IACnB,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,EACjC,KAAK,EAAC,QAAQ,EACd,MAAM,EAAE,KAAK,EACb,YAAY,EAAC,QAAQ,EACrB,2BAA2B,EAAE,IAAI,CAAC,KAAK,CAAC,2BAA2B,GACrE,EACF,KAAC,kBAAkB,IACf,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,EACjC,KAAK,EAAC,aAAa,EACnB,MAAM,EAAE,KAAK,EACb,YAAY,EAAC,YAAY,EACzB,2BAA2B,EAAE,IAAI,CAAC,KAAK,CAAC,2BAA2B,GACrE,EACF,KAAC,kBAAkB,IACf,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,EACjC,KAAK,EAAC,YAAY,EAClB,MAAM,EAAE,KAAK,EACb,YAAY,EAAC,WAAW,EACxB,2BAA2B,EAAE,IAAI,CAAC,KAAK,CAAC,2BAA2B,GACrE,EACF,KAAC,kBAAkB,IACf,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,EACjC,KAAK,EAAC,cAAc,EACpB,MAAM,EAAE,KAAK,EACb,YAAY,EAAC,aAAa,EAC1B,2BAA2B,EAAE,IAAI,CAAC,KAAK,CAAC,2BAA2B,GACrE,EACF,KAAC,kBAAkB,IACf,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,EACjC,KAAK,EAAC,eAAe,EACrB,MAAM,EAAE,KAAK,EACb,YAAY,EAAC,cAAc,EAC3B,2BAA2B,EAAE,IAAI,CAAC,KAAK,CAAC,2BAA2B,GACrE,EACF,KAAC,qBAAqB,IAAC,KAAK,EAAC,WAAW,EAAC,MAAM,EAAE,KAAK,EAAE,YAAY,EAAC,WAAW,EAAC,2BAA2B,EAAE,IAAI,CAAC,KAAK,CAAC,2BAA2B,GAAI,EACxJ,KAAC,WAAW,IACR,KAAK,EAAC,SAAS,EACf,OAAO,EAAE,cAAc,EACvB,MAAM,EAAE,KAAK,EACb,YAAY,EAAC,SAAS,EACtB,2BAA2B,EAAE,IAAI,CAAC,KAAK,CAAC,2BAA2B,EACnE,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,GACrD,IACmB,EACzB,MAAC,sBAAsB,IAAC,KAAK,EAAC,iBAAiB,aAC3C,KAAC,kBAAkB,IACf,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,EACjC,KAAK,EAAC,SAAS,EACf,SAAS,EAAE,IAAI,EACf,MAAM,EAAE,KAAK,EACb,YAAY,EAAC,QAAQ,EACrB,2BAA2B,EAAE,IAAI,CAAC,KAAK,CAAC,2BAA2B,GACrE,EACF,KAAC,kBAAkB,IACf,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,EACjC,KAAK,EAAC,YAAY,EAClB,MAAM,EAAE,KAAK,EACb,YAAY,EAAC,WAAW,EACxB,2BAA2B,EAAE,IAAI,CAAC,KAAK,CAAC,2BAA2B,GACrE,EACF,KAAC,kBAAkB,IACf,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,EACjC,KAAK,EAAC,aAAa,EACnB,MAAM,EAAE,KAAK,EACb,YAAY,EAAC,YAAY,EACzB,2BAA2B,EAAE,IAAI,CAAC,KAAK,CAAC,2BAA2B,GACrE,IACmB,IAC1B,CACN,CAAC;IACN,CAAC;CACJ","sourcesContent":["import * as React from \"react\";\r\nimport type { Observable } from \"core/Misc/observable\";\r\nimport type { PropertyChangedEvent } from \"../../../propertyChangedEvent\";\r\nimport { CommonControlPropertyGridComponent } from \"../../../tabs/propertyGrids/gui/commonControlPropertyGridComponent\";\r\nimport { LineContainerComponent } from \"../../../lines/lineContainerComponent\";\r\nimport type { LockObject } from \"../../../tabs/propertyGrids/lockObject\";\r\nimport { Image } from \"gui/2D/controls/image\";\r\nimport { FloatLineComponent } from \"../../../lines/floatLineComponent\";\r\nimport { CheckBoxLineComponent } from \"../../../lines/checkBoxLineComponent\";\r\nimport { OptionsLine } from \"../../../lines/optionsLineComponent\";\r\nimport { TextInputLineComponent } from \"../../../lines/textInputLineComponent\";\r\n\r\ninterface IImagePropertyGridComponentProps {\r\n image: Image;\r\n lockObject: LockObject;\r\n onPropertyChangedObservable?: Observable<PropertyChangedEvent>;\r\n}\r\n\r\nexport class ImagePropertyGridComponent extends React.Component<IImagePropertyGridComponentProps> {\r\n constructor(props: IImagePropertyGridComponentProps) {\r\n super(props);\r\n }\r\n\r\n override render() {\r\n const image = this.props.image;\r\n\r\n const stretchOptions = [\r\n { label: \"None\", value: Image.STRETCH_NONE },\r\n { label: \"Fill\", value: Image.STRETCH_FILL },\r\n { label: \"Uniform\", value: Image.STRETCH_UNIFORM },\r\n { label: \"Extend\", value: Image.STRETCH_EXTEND },\r\n { label: \"NinePatch\", value: Image.STRETCH_NINE_PATCH },\r\n ];\r\n\r\n return (\r\n <>\r\n <CommonControlPropertyGridComponent lockObject={this.props.lockObject} control={image} onPropertyChangedObservable={this.props.onPropertyChangedObservable} />\r\n <LineContainerComponent title=\"IMAGE\">\r\n <TextInputLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Source\"\r\n target={image}\r\n propertyName=\"source\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <FloatLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Source left\"\r\n target={image}\r\n propertyName=\"sourceLeft\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <FloatLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Source top\"\r\n target={image}\r\n propertyName=\"sourceTop\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <FloatLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Source width\"\r\n target={image}\r\n propertyName=\"sourceWidth\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <FloatLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Source height\"\r\n target={image}\r\n propertyName=\"sourceHeight\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <CheckBoxLineComponent label=\"Autoscale\" target={image} propertyName=\"autoScale\" onPropertyChangedObservable={this.props.onPropertyChangedObservable} />\r\n <OptionsLine\r\n label=\"Stretch\"\r\n options={stretchOptions}\r\n target={image}\r\n propertyName=\"stretch\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n onSelect={(value) => this.setState({ mode: value })}\r\n />\r\n </LineContainerComponent>\r\n <LineContainerComponent title=\"ANIMATION SHEET\">\r\n <FloatLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Cell Id\"\r\n isInteger={true}\r\n target={image}\r\n propertyName=\"cellId\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <FloatLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Cell width\"\r\n target={image}\r\n propertyName=\"cellWidth\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <FloatLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Cell height\"\r\n target={image}\r\n propertyName=\"cellHeight\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n </LineContainerComponent>\r\n </>\r\n );\r\n }\r\n}\r\n"]}
|
@@ -5,7 +5,7 @@ import { TextWrapping } from "@babylonjs/gui/2D/controls/textBlock.js";
|
|
5
5
|
import { Control } from "@babylonjs/gui/2D/controls/control.js";
|
6
6
|
import { LineContainerComponent } from "../../../lines/lineContainerComponent.js";
|
7
7
|
import { TextInputLineComponent } from "../../../lines/textInputLineComponent.js";
|
8
|
-
import {
|
8
|
+
import { OptionsLine } from "../../../lines/optionsLineComponent.js";
|
9
9
|
import { CheckBoxLineComponent } from "../../../lines/checkBoxLineComponent.js";
|
10
10
|
import { FloatLineComponent } from "../../../lines/floatLineComponent.js";
|
11
11
|
export class TextBlockPropertyGridComponent extends React.Component {
|
@@ -30,7 +30,7 @@ export class TextBlockPropertyGridComponent extends React.Component {
|
|
30
30
|
{ label: "Word wrap", value: TextWrapping.WordWrap },
|
31
31
|
{ label: "Word wrap ellipsis", value: TextWrapping.WordWrapEllipsis },
|
32
32
|
];
|
33
|
-
return (_jsxs(_Fragment, { children: [_jsx(CommonControlPropertyGridComponent, { lockObject: this.props.lockObject, control: textBlock, onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsxs(LineContainerComponent, { title: "TEXTBLOCK", children: [_jsx(TextInputLineComponent, { lockObject: this.props.lockObject, label: "Text", target: textBlock, propertyName: "text", onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(
|
33
|
+
return (_jsxs(_Fragment, { children: [_jsx(CommonControlPropertyGridComponent, { lockObject: this.props.lockObject, control: textBlock, onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsxs(LineContainerComponent, { title: "TEXTBLOCK", children: [_jsx(TextInputLineComponent, { lockObject: this.props.lockObject, label: "Text", target: textBlock, propertyName: "text", onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(OptionsLine, { label: "Horizontal text alignment", options: horizontalOptions, target: textBlock, propertyName: "textHorizontalAlignment", onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(OptionsLine, { label: "Vertical text alignment", options: verticalOptions, target: textBlock, propertyName: "textVerticalAlignment", onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(CheckBoxLineComponent, { label: "Resize to fit", target: textBlock, propertyName: "resizeToFit", onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(OptionsLine, { label: "Wrapping", options: wrappingOptions, target: textBlock, propertyName: "textWrapping", onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(TextInputLineComponent, { lockObject: this.props.lockObject, label: "Line spacing", target: textBlock, propertyName: "lineSpacing", onPropertyChangedObservable: this.props.onPropertyChangedObservable })] }), _jsxs(LineContainerComponent, { title: "OUTLINE", children: [_jsx(FloatLineComponent, { lockObject: this.props.lockObject, label: "Outline width", target: textBlock, propertyName: "outlineWidth", onPropertyChangedObservable: this.props.onPropertyChangedObservable }), _jsx(TextInputLineComponent, { lockObject: this.props.lockObject, label: "Outline color", target: textBlock, propertyName: "outlineColor", onPropertyChangedObservable: this.props.onPropertyChangedObservable })] })] }));
|
34
34
|
}
|
35
35
|
}
|
36
36
|
//# sourceMappingURL=textBlockPropertyGridComponent.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"textBlockPropertyGridComponent.js","sourceRoot":"","sources":["../../../../../../dev/sharedUiComponents/src/tabs/propertyGrids/gui/textBlockPropertyGridComponent.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAE,kCAAkC,EAAE,MAAM,oEAAoE,CAAC;AAExH,OAAO,EAAE,YAAY,EAAE,gDAAkC;AACzD,OAAO,EAAE,OAAO,EAAE,8CAAgC;AAClD,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAE/E,OAAO,EAAE,
|
1
|
+
{"version":3,"file":"textBlockPropertyGridComponent.js","sourceRoot":"","sources":["../../../../../../dev/sharedUiComponents/src/tabs/propertyGrids/gui/textBlockPropertyGridComponent.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from \"react\";\r\nimport type { Observable } from \"core/Misc/observable\";\r\nimport type { PropertyChangedEvent } from \"../../../propertyChangedEvent\";\r\nimport { CommonControlPropertyGridComponent } from \"../../../tabs/propertyGrids/gui/commonControlPropertyGridComponent\";\r\nimport type { TextBlock } from \"gui/2D/controls/textBlock\";\r\nimport { TextWrapping } from \"gui/2D/controls/textBlock\";\r\nimport { Control } from \"gui/2D/controls/control\";\r\nimport { LineContainerComponent } from \"../../../lines/lineContainerComponent\";\r\nimport { TextInputLineComponent } from \"../../../lines/textInputLineComponent\";\r\nimport type { LockObject } from \"../../../tabs/propertyGrids/lockObject\";\r\nimport { OptionsLine } from \"../../../lines/optionsLineComponent\";\r\nimport { CheckBoxLineComponent } from \"../../../lines/checkBoxLineComponent\";\r\nimport { FloatLineComponent } from \"../../../lines/floatLineComponent\";\r\n\r\ninterface ITextBlockPropertyGridComponentProps {\r\n textBlock: TextBlock;\r\n lockObject: LockObject;\r\n onPropertyChangedObservable?: Observable<PropertyChangedEvent>;\r\n}\r\n\r\nexport class TextBlockPropertyGridComponent extends React.Component<ITextBlockPropertyGridComponentProps> {\r\n constructor(props: ITextBlockPropertyGridComponentProps) {\r\n super(props);\r\n }\r\n\r\n override render() {\r\n const textBlock = this.props.textBlock;\r\n\r\n const horizontalOptions = [\r\n { label: \"Left\", value: Control.HORIZONTAL_ALIGNMENT_LEFT },\r\n { label: \"Right\", value: Control.HORIZONTAL_ALIGNMENT_RIGHT },\r\n { label: \"Center\", value: Control.HORIZONTAL_ALIGNMENT_CENTER },\r\n ];\r\n\r\n const verticalOptions = [\r\n { label: \"Top\", value: Control.VERTICAL_ALIGNMENT_TOP },\r\n { label: \"Bottom\", value: Control.VERTICAL_ALIGNMENT_BOTTOM },\r\n { label: \"Center\", value: Control.VERTICAL_ALIGNMENT_CENTER },\r\n ];\r\n\r\n const wrappingOptions = [\r\n { label: \"Clip\", value: TextWrapping.Clip },\r\n { label: \"Ellipsis\", value: TextWrapping.Ellipsis },\r\n { label: \"Word wrap\", value: TextWrapping.WordWrap },\r\n { label: \"Word wrap ellipsis\", value: TextWrapping.WordWrapEllipsis },\r\n ];\r\n\r\n return (\r\n <>\r\n <CommonControlPropertyGridComponent lockObject={this.props.lockObject} control={textBlock} onPropertyChangedObservable={this.props.onPropertyChangedObservable} />\r\n <LineContainerComponent title=\"TEXTBLOCK\">\r\n <TextInputLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Text\"\r\n target={textBlock}\r\n propertyName=\"text\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <OptionsLine\r\n label=\"Horizontal text alignment\"\r\n options={horizontalOptions}\r\n target={textBlock}\r\n propertyName=\"textHorizontalAlignment\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <OptionsLine\r\n label=\"Vertical text alignment\"\r\n options={verticalOptions}\r\n target={textBlock}\r\n propertyName=\"textVerticalAlignment\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <CheckBoxLineComponent\r\n label=\"Resize to fit\"\r\n target={textBlock}\r\n propertyName=\"resizeToFit\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <OptionsLine\r\n label=\"Wrapping\"\r\n options={wrappingOptions}\r\n target={textBlock}\r\n propertyName=\"textWrapping\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <TextInputLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Line spacing\"\r\n target={textBlock}\r\n propertyName=\"lineSpacing\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n </LineContainerComponent>\r\n <LineContainerComponent title=\"OUTLINE\">\r\n <FloatLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Outline width\"\r\n target={textBlock}\r\n propertyName=\"outlineWidth\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n <TextInputLineComponent\r\n lockObject={this.props.lockObject}\r\n label=\"Outline color\"\r\n target={textBlock}\r\n propertyName=\"outlineColor\"\r\n onPropertyChangedObservable={this.props.onPropertyChangedObservable}\r\n />\r\n </LineContainerComponent>\r\n </>\r\n );\r\n }\r\n}\r\n"]}
|