summaryrefslogtreecommitdiff
path: root/src/components/app/timeline/TimelineComponent.js
diff options
context:
space:
mode:
authorGeorgios Andreadis <g.andreadis@student.tudelft.nl>2017-09-22 21:20:54 +0200
committerGeorgios Andreadis <g.andreadis@student.tudelft.nl>2017-09-23 10:06:18 +0200
commitbf7708f658cc6299a3b775afe24459b5a808c54d (patch)
tree227520267968759e2a2f1e29e6f3edfeb4e3cf8a /src/components/app/timeline/TimelineComponent.js
parente722cf117d0e3ebac20237f96764fb08cab49a62 (diff)
Restructure component and container directories
Diffstat (limited to 'src/components/app/timeline/TimelineComponent.js')
-rw-r--r--src/components/app/timeline/TimelineComponent.js37
1 files changed, 37 insertions, 0 deletions
diff --git a/src/components/app/timeline/TimelineComponent.js b/src/components/app/timeline/TimelineComponent.js
new file mode 100644
index 00000000..950a25bd
--- /dev/null
+++ b/src/components/app/timeline/TimelineComponent.js
@@ -0,0 +1,37 @@
+import React from "react";
+import TimelineControlsContainer from "../../../containers/app/timeline/TimelineControlsContainer";
+import TimelineLabelsContainer from "../../../containers/app/timeline/TimelineLabelsContainer";
+import "./Timeline.css";
+
+class TimelineComponent extends React.Component {
+ componentDidMount() {
+ this.interval = setInterval(() => {
+ if (!this.props.isPlaying) {
+ return;
+ }
+
+ if (this.props.currentTick < this.props.lastSimulatedTick) {
+ this.props.incrementTick();
+ } else {
+ this.props.pauseSimulation();
+ }
+ }, 1000);
+ }
+
+ componentWillUnmount() {
+ clearInterval(this.interval);
+ }
+
+ render() {
+ return (
+ <div className="timeline-bar">
+ <div className="timeline-container">
+ <TimelineLabelsContainer/>
+ <TimelineControlsContainer/>
+ </div>
+ </div>
+ );
+ }
+}
+
+export default TimelineComponent;