Add in code at each relevant stage which checks that the user inputs are as expected to avoid errors. Also notices, warnings and errors to push to the user to make the process clearer.
[x] Work out how to push messages to the QGIS console
[x] Add most important messages
Simstock running
Simstock finished/failed
Initial setup success/fail
[x] Check types and formatting of input attribute table
[x] Report which E+ model failed if so so that user can fix issues
[x] Supress the idd warning that keeps coming up - these warnings can confuse the user that something has gone wrong
[ ] Replace or complement Python raised errors with QGIS ones - can use 'return' to exit a function without raising a Python error or using sys.exit() (the latter exits the entire QGIS session)
[ ] Catch if user has not yet performed the initial setup and provide a useful message instructing them to do so
Add in code at each relevant stage which checks that the user inputs are as expected to avoid errors. Also notices, warnings and errors to push to the user to make the process clearer.