From 101caf15c05fe4441b1646b0247482750ebdb381 Mon Sep 17 00:00:00 2001 From: Markus Grigull Date: Tue, 11 Jul 2017 21:09:19 +0200 Subject: [PATCH] Change widget table data --- src/components/dialog/edit-widget.js | 7 ++++++- src/components/widget-table.js | 12 ++++++------ src/components/widget-value.js | 2 +- src/containers/visualization.js | 3 +-- 4 files changed, 14 insertions(+), 10 deletions(-) diff --git a/src/components/dialog/edit-widget.js b/src/components/dialog/edit-widget.js index 24866c3..398fd5a 100644 --- a/src/components/dialog/edit-widget.js +++ b/src/components/dialog/edit-widget.js @@ -71,7 +71,12 @@ class EditWidgetDialog extends Component { this.setState({ temporal: Object.assign({}, this.state.temporal, changes ) }); } else { let changeObject = {}; - changeObject[e.target.id] = e.target.value; + if (e.target.id === 'simulator') { + changeObject[e.target.id] = JSON.parse(e.target.value); + } else { + changeObject[e.target.id] = e.target.value; + } + this.setState({ temporal: Object.assign({}, this.state.temporal, changeObject ) }); } } diff --git a/src/components/widget-table.js b/src/components/widget-table.js index 9c48a00..44d3966 100644 --- a/src/components/widget-table.js +++ b/src/components/widget-table.js @@ -38,33 +38,33 @@ class WidgetTable extends Component { // check data const simulator = nextProps.widget.simulator; - if (nextProps.simulation == null || nextProps.data == null || nextProps.data[simulator] == null || nextProps.data[simulator].length === 0 || nextProps.data[simulator].values[0].length === 0) { + if (nextProps.simulation == null || nextProps.data == null || nextProps.data[simulator.node][simulator.simulator] == null || nextProps.data[simulator.node][simulator.simulator].length === 0 || nextProps.data[simulator.node][simulator.simulator].values.length === 0 || nextProps.data[simulator.node][simulator.simulator].values[0].length === 0) { // clear values this.setState({ rows: [], sequence: null }); return; } // check if new data, otherwise skip - if (this.state.sequence >= nextProps.data[simulator].sequence) { + /*if (this.state.sequence >= nextProps.data[simulator.node][simulator.simulator].sequence) { return; - } + }*/ // get simulation model const simulationModel = nextProps.simulation.models.find((model) => { - return (model.simulator === simulator); + return (model.simulator.node === simulator.node && model.simulator.simulator === simulator.simulator); }); // get rows var rows = []; - nextProps.data[simulator].values.forEach((signal, index) => { + nextProps.data[simulator.node][simulator.simulator].values.forEach((signal, index) => { rows.push({ name: simulationModel.mapping[index].name, value: signal[signal.length - 1].y.toFixed(3) }) }); - this.setState({ rows: rows, sequence: nextProps.data[simulator].sequence }); + this.setState({ rows: rows, sequence: nextProps.data[simulator.node][simulator.simulator].sequence }); } render() { diff --git a/src/components/widget-value.js b/src/components/widget-value.js index f3451aa..fdbb04b 100644 --- a/src/components/widget-value.js +++ b/src/components/widget-value.js @@ -44,7 +44,7 @@ class WidgetValue extends Component { // check if value has changed const signal = nextProps.data[node][simulator].values[nextProps.widget.signal]; - if (this.state.value !== signal[signal.length - 1].y) { + if (signal != null && this.state.value !== signal[signal.length - 1].y) { this.setState({ value: signal[signal.length - 1].y }); } } diff --git a/src/containers/visualization.js b/src/containers/visualization.js index 66c5403..425f394 100644 --- a/src/containers/visualization.js +++ b/src/containers/visualization.js @@ -154,7 +154,6 @@ class Visualization extends Component { NotificationsDataManager.addNotification(NotificationsFactory.NO_SIM_MODEL_AVAILABLE); } else { defaultSimulator = this.state.simulation.models[0].simulator; - console.log(defaultSimulator); } // create new widget @@ -236,7 +235,7 @@ class Visualization extends Component { if (data) { // save changes temporarily var widgets_update = {}; - widgets_update[this.state.modalIndex] = data; + widgets_update[this.state.modalIndex] = data; var new_widgets = Object.assign({}, this.state.visualization.widgets, widgets_update);