/**************************************************************************** * Copyright 2017 EPAM Systems * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ***************************************************************************/ import { h, Component } from 'preact'; import { connect } from 'preact-redux'; /** @jsx h */ import { map as formatMap } from '../structformat'; import Dialog from '../component/dialog'; import OpenButton from '../component/openbutton'; import ClipArea, { exec } from '../component/cliparea'; import { load } from '../state'; class Open extends Component { constructor(props) { super(props); this.state = { structStr: '', fragment: false }; } result() { let { structStr, fragment } = this.state; return structStr ? { structStr, fragment } : null; } changeStructStr(structStr) { this.setState({ structStr }); } changeFragment(target) { this.setState({ fragment: target.checked }); } render () { let { structStr, fragment } = this.state; return ( this.result()} params={this.props} buttons={[( this.changeStructStr(s)}> Open From File… ), "Cancel", "OK"]}>