diff --git a/src/components/widget-factory.js b/src/components/widget-factory.js index ee54fa1..68afcba 100644 --- a/src/components/widget-factory.js +++ b/src/components/widget-factory.js @@ -74,8 +74,8 @@ class WidgetFactory { widget.time = 60; break; case 'Image': - widget.minWidth = 100; - widget.minHeight = 100; + widget.minWidth = 20; + widget.minHeight = 20; widget.width = 200; widget.height = 200; widget.lockAspect = true; diff --git a/src/containers/projects.js b/src/containers/projects.js index f1ea7fd..47fda11 100644 --- a/src/containers/projects.js +++ b/src/containers/projects.js @@ -107,6 +107,14 @@ class Projects extends React.Component { return id; } + hasValidSimulation() { + const simulations = this.state.simulations.filter(simulation => { + return simulation.models.length > 0; + }); + + return simulations.length > 0; + } + render() { return (
@@ -118,10 +126,13 @@ class Projects extends React.Component { this.setState({ editModal: true, modalData: this.state.projects[index] })} onDelete={index => this.setState({ deleteModal: true, modalData: this.state.projects[index] })} /> - + + + {!this.hasValidSimulation() && + Simulation with at least one simulation-model required! + } this.closeNewModal(data)} simulations={this.state.simulations} /> - this.closeEditModal(data)} project={this.state.modalData} simulations={this.state.simulations} /> diff --git a/src/containers/widget.js b/src/containers/widget.js index 02b70d2..055637a 100644 --- a/src/containers/widget.js +++ b/src/containers/widget.js @@ -50,7 +50,6 @@ class Widget extends Component { } static calculateState(prevState) { - let tokenState = UserStore.getState().token; if (prevState) { @@ -149,7 +148,7 @@ class Widget extends Component { // get widget element const widget = this.props.data; let borderedWidget = false; - var element = null; + let element = null; // dummy is passed to widgets to keep updating them while in edit mode if (widget.type === 'Value') { @@ -180,7 +179,7 @@ class Widget extends Component { 'widget': !this.props.editing, 'editing-widget': this.props.editing, 'border': borderedWidget, - 'unselectable': this.props.editing, + 'unselectable': false, 'locked': widget.locked && this.props.editing }); diff --git a/src/styles/context-menu.css b/src/styles/context-menu.css index c21fffc..1dff534 100644 --- a/src/styles/context-menu.css +++ b/src/styles/context-menu.css @@ -74,7 +74,12 @@ padding: 0; right: 7px; } -.example-multiple-targets::after { - content: attr(data-count); - display: block; +.react-contextmenu-wrapper { + width: 100%; + height: 100%; + position: absolute; + top: 0px; + left: 0px; + overflow: auto; } +