import * as React from "react"; import { GlobalState } from '../globalState'; import { CommandButtonComponent } from './commandButtonComponent'; import { CommandDropdownComponent } from './commandDropdownComponent'; require("../scss/commandBar.scss"); interface ICommandBarComponentProps { globalState: GlobalState; } export class CommandBarComponent extends React.Component { public constructor(props: ICommandBarComponentProps) { super(props); } onPlay() { this.props.globalState.onRunRequiredObservable.notifyObservers(); } onNew() { this.props.globalState.onNewRequiredObservable.notifyObservers(); } onClear() { this.props.globalState.onClearRequiredObservable.notifyObservers(); } onSave() { this.props.globalState.onSaveRequiredObservable.notifyObservers(); } onDownload() { this.props.globalState.onDownloadRequiredObservable.notifyObservers(); } onInspector() { this.props.globalState.onInspectorRequiredObservable.notifyObservers(); } public render() { return (
this.onPlay()}/> this.onSave()}/> this.onInspector()}/> this.onDownload()}/> this.onNew()}/> this.onClear()}/> {} }, { label: "CTRL+S to save", storeKey: "ctrl-s-to-save", defaultValue: true, onCheck: () => {} }, { label: "editor", storeKey: "editor", defaultValue: true, onCheck: (value) => {this.props.globalState.onEditorDisplayChangedObservable.notifyObservers(value)} }, { label: "minimap", storeKey: "minimap", defaultValue: true, onCheck: (value) => {this.props.globalState.onMinimapChangedObservable.notifyObservers(value)} }, { label: "fullscreen", onClick: () => {this.props.globalState.onFullcreenRequiredObservable.notifyObservers()} }, { label: "fullscreen editor", onClick: () => {this.props.globalState.onEditorFullcreenRequiredObservable.notifyObservers()} }, { label: "format code", onClick: () => {this.props.globalState.onFormatCodeRequiredObservable.notifyObservers()} }, { label: "metadata", onClick: () => {this.props.globalState.onDisplayMetadataObservable.notifyObservers(true)} } ]}/>
); } }