import * as React from "react"; import { Observable } from "babylonjs/Misc/observable"; import { PropertyChangedEvent } from "../../../../propertyChangedEvent"; import { LineContainerComponent } from "../../../../../sharedUiComponents/lines/lineContainerComponent"; import { TextLineComponent } from "../../../../../sharedUiComponents/lines/textLineComponent"; import { LockObject } from "../../../../../sharedUiComponents/tabs/propertyGrids/lockObject"; import { GlobalState } from '../../../../globalState'; import { Sound } from 'babylonjs/Audio/sound'; import { IExplorerExtensibilityGroup } from 'babylonjs/Debug/debugLayer'; import { TextInputLineComponent } from '../../../../../sharedUiComponents/lines/textInputLineComponent'; import { ButtonLineComponent } from '../../../../../sharedUiComponents/lines/buttonLineComponent'; import { SliderLineComponent } from '../../../../../sharedUiComponents/lines/sliderLineComponent'; import { CheckBoxLineComponent } from '../../../../../sharedUiComponents/lines/checkBoxLineComponent'; interface ISoundPropertyGridComponentProps { globalState: GlobalState; sound: Sound; extensibilityGroups?: IExplorerExtensibilityGroup[]; lockObject: LockObject; onPropertyChangedObservable?: Observable; } export class SoundPropertyGridComponent extends React.Component { constructor(props: ISoundPropertyGridComponentProps) { super(props); } render() { const sound = this.props.sound; return (
{/* { postProcess.width && } { postProcess.height && } { postProcess.clearColor && } { postProcess.dispose(); this.props.globalState.onSelectionChangedObservable.notifyObservers(null); }} /> */} { sound.isPlaying && { sound.pause(); this.forceUpdate(); }} /> } { !sound.isPlaying && { sound.play(); this.forceUpdate(); }} /> } { sound.setVolume(value); this.forceUpdate(); }} minimum={0} maximum={5} step={0.1} decimalCount={1} onPropertyChangedObservable={this.props.onPropertyChangedObservable} />
); } }