Simulation support: simplified our Simulation interface and put back our handling of the File Handling interface (#1630). Indeed, the only thing we need to do (and should be doing) as soon as possible is stop the simulation. Once this is done, we can retrieve our file details when a SED-ML/CellML file has been reloaded. To retrieve our file details just after stopping a simulation will result in our file details being wrong since a SED-ML/CellML file will have reloaded yet. (commit: 9b9e721)
Simulation support: make sure that we have a data store before returning our number of runs (#1630). This is needed, for example, when a simulation was running and then we reloaded a SED-ML file as a result of its corresponding CellML file having been modified. (commit: 72f0c7e)
Simulation support: we should really not have to reset our various arrays in SimulationData::deleteArrays(). Indeed, we should only ever come here once, so… (commit: e575371)
Simulation Experiment view: a simulation shouldn't be stopped by the Simulation Experiment view (#1630). When a simulation needs to be stopped, it should be stopped before doing anything else (e.g. reloading a file) since it’s run in its own thread. So, anything else will result in a potential crash of OpenCOR. This is the reason we now stop a simulation from within our central widget. (commit: ae46194)
Graph Panel widget: improved the alignment of a graph panel with its neighbours. Indeed, when running the model in issue #1630, the X axis of the first graph panel was flashing for a bit before becoming “stable”. This was due to us calling xScaleWidget->setMinBorderDist(0, 0), which unlike our call to yScaleDraw->setMinimumExtent(0.0), we don’t seem to need to properly align our graph panels. (commit: 9920ff9)
Revert "Graph Panel widget: improved the alignment of a graph panel with its neighbours." This reverts commit 9920ff9a07c903c8900154eb68ca1eb9702bee5d. (commit: af9451e)
Graph Panel widget: improved the alignment of a graph panel with its neighbours on macOS. Indeed, when running the model in issue #1630 on macOS, the X axis of the first graph panel was flashing for a bit before becoming "stable". This was due to us calling xScaleWidget->setMinBorderDist(0, 0), which unlike our call to yScaleDraw->setMinimumExtent(0.0), we don’t seem to need to properly align our graph panels (at least, on macOS). (commit: c927305)
Revert "Graph Panel widget: improved the alignment of a graph panel with its neighbours on macOS." This reverts commit c927305cc668a4b5aeb1c05f5ae127db59f2abf6. (commit: 0ba67a8)
Graph Panel widget: improved the alignment of a graph panel with its neighbours. Indeed, when running the model in issue #1630, the X axis of the first graph panel was flashing on macOS for a bit before becoming "stable", due to our call to xScaleWidget->setMinBorderDist(0, 0). So, we had to find another way of doing things without that call... (commit: 609b4d5)
CellML support: have `CellmlFile::runtime()` always return a brand new runtime (#1630). The idea is that whoever calls `CellmlFile::runtime()` is responsible for deleting that runtime once it’s done with it. (commit: bd5ab3f)
CellML support: have `CellmlFile::runtime()` always return a brand new runtime (#1630). The idea is that whoever calls `CellmlFile::runtime()` is responsible for deleting that runtime once it’s done with it. (commit: a309360)
Some cleaning up. In the end, because of what we did for issue #1630, we don’t need to decide whether we want an elapsed time to be computed or not when asking for a simulation to stop. (commit: 7a4752a)