react-floorplanner
Version:
react-floorplanner is a React Component for plans design. Draw a 2D floorplan and navigate it in 3D mode.
35 lines (28 loc) • 953 B
JSX
import React from 'react';
import PropTypes from 'prop-types';
import IconSave from 'react-icons/lib/fa/floppy-o';
import ToolbarButton from './toolbar-button';
import {browserDownload} from '../../utils/browser';
import {unselectAll} from '../../utils/layer-operations';
export default function ToolbarSaveButton({state}, {translator, projectActions}) {
let saveProjectToFile = event => {
event.preventDefault();
let scene = state
.get('scene')
.update('layers', layers => layers.map(layer => unselectAll(layer)))
.toJS();
browserDownload(scene);
};
return (
<ToolbarButton active={false} tooltip={translator.t("Save project")} onClick={saveProjectToFile}>
<IconSave />
</ToolbarButton>
);
}
ToolbarSaveButton.propTypes = {
state: PropTypes.object.isRequired,
};
ToolbarSaveButton.contextTypes = {
projectActions: PropTypes.object.isRequired,
translator: PropTypes.object.isRequired,
};