import React, { Component } from 'react' // import { Link } from 'react-router-dom' // import { bindActionCreators } from 'redux' import { connect } from 'react-redux' import actions from '../../../actions' // import * as uploadActions from './upload.actions' import Ticks from './ticks.component' import * as constants from '../constants' class Timeline extends Component { constructor(props){ super(props) this.canvasRef = React.createRef() this.handleKeydown = this.handleKeydown.bind(this) } componentDidMount() { this.bind() this.resize() this.draw() } componentDidUpdate() { this.draw() } componentWillUnmount() { this.unbind() } bind() { document.addEventListener('keydown', this.handleKeydown) } unbind() { document.removeEventListener('keydown', this.handleKeydown) } handleKeydown(e) { // console.log(e.shiftKey, e.keyCode) } resize() { const canvas = this.canvasRef.current canvas.width = window.innerWidth canvas.height = constants.DEFAULT_HEIGHT } draw() { const canvas = this.canvasRef.current const ctx = canvas.getContext('2d') const w = window.innerWidth this.clearCanvas(ctx, w) } clearCanvas(ctx, w) { const h = constants.WAVEFORM_HEIGHT ctx.clearRect(0, 0, w, h) ctx.fillStyle = 'rgba(0,0,0,0.5)' ctx.fillRect(0, 0, w, h) ctx.fillStyle = 'rgba(64,128,192,0.5)' } render() { return (
) } } const mapStateToProps = state => ({ timeline: state.align.timeline, }) const mapDispatchToProps = dispatch => ({ // uploadActions: bindActionCreators({ ...uploadActions }, dispatch), }) export default connect(mapStateToProps, mapDispatchToProps)(Timeline)