scratch-paint/src/components/paint-editor.jsx

38 lines
1.1 KiB
React
Raw Normal View History

2017-07-27 16:41:41 -04:00
import bindAll from 'lodash.bindall';
2017-07-13 14:03:48 -04:00
import React from 'react';
import PaperCanvas from '../containers/paper-canvas.jsx';
2017-07-20 22:48:07 -04:00
import BrushTool from '../containers/tools/brush-tool.jsx';
2017-07-25 11:53:54 -04:00
import EraserTool from '../containers/tools/eraser-tool.jsx';
2017-07-13 14:03:48 -04:00
2017-07-27 11:45:41 -04:00
class PaintEditorComponent extends React.Component {
2017-07-27 16:41:41 -04:00
constructor (props) {
super(props);
bindAll(this, [
'setCanvas'
]);
this.state = {};
}
setCanvas (canvas) {
this.setState({canvas: canvas});
}
2017-07-27 11:45:41 -04:00
render () {
2017-07-27 16:48:37 -04:00
// Tools can't work without a canvas, so we don't render them until we have it
2017-07-27 16:41:41 -04:00
if (this.state.canvas) {
return (
<div>
<PaperCanvas canvasRef={this.setCanvas} />
<BrushTool canvas={this.state.canvas} />
<EraserTool canvas={this.state.canvas} />
</div>
);
}
2017-07-27 11:45:41 -04:00
return (
<div>
2017-07-27 16:41:41 -04:00
<PaperCanvas canvasRef={this.setCanvas} />
2017-07-27 11:45:41 -04:00
</div>
);
}
}
2017-07-13 14:03:48 -04:00
2017-07-26 20:39:12 -04:00
export default PaintEditorComponent;