diff options
author | AlexKlimenkov <shurick.klimenkov@gmail.com> | 2017-05-23 16:44:22 +0300 |
---|---|---|
committer | AlexKlimenkov <shurick.klimenkov@gmail.com> | 2017-05-23 16:44:22 +0300 |
commit | 83880a83d328e7ea2c73cbace39b38bd479246e8 (patch) | |
tree | de60e2589afb871fc11d2ee982604c43c00b33b3 /src/Toolbar.js | |
parent | 7b1e4c1749c599a154616b0df8ccc252be5f8739 (diff) | |
download | react-gantt-demo-83880a83d328e7ea2c73cbace39b38bd479246e8.zip react-gantt-demo-83880a83d328e7ea2c73cbace39b38bd479246e8.tar.gz react-gantt-demo-83880a83d328e7ea2c73cbace39b38bd479246e8.tar.bz2 |
mode zoom toolbar and message area to separate components
Diffstat (limited to 'src/Toolbar.js')
-rw-r--r-- | src/Toolbar.js | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/src/Toolbar.js b/src/Toolbar.js new file mode 100644 index 0000000..ca42f75 --- /dev/null +++ b/src/Toolbar.js @@ -0,0 +1,36 @@ +import React, { Component } from 'react'; + +export default class Toolbar extends Component { + constructor(props) { + super(props); + this.handleZoomChange = this.handleZoomChange.bind(this); + } + + handleZoomChange(e) { + if(this.props.onZoomChange){ + this.props.onZoomChange(e.target.value) + } + } + + render() { + let zoomRadios = ['Hours', 'Days', 'Months'].map((value) => { + let isActive = this.props.zoom === value; + return ( + <label key={value} className={`radio-label ${isActive ? 'radio-label-active': ''}`}> + <input type='radio' + checked={isActive} + onChange={this.handleZoomChange} + value={value}/> + {value} + </label> + ); + }); + + return ( + <div className="zoom-bar"> + <b>Zooming: </b> + {zoomRadios} + </div> + ); + } +} |