The workbench is the new PyQt-based GUI that will be the primary interface for interacting with the mantid framework. The plotting is provided by matplotlib. It will eventually replace MantidPlot.
The following build instructions assume you have followed the instructions on the Getting Started pages and can build mantid and MantidPlot. To enable the
build of the workbench simply set the cmake flag ENABLE_WORKBENCH=ON and
build as normal. A workbench startup script (Linux/macOS) or executable (Windows) will appear in the bin folder. For Windows the executable will appear in the configuration subdirectory of bin.
Packaging is currently only supported on Linux platforms and must be enabled
using the cmake flag PACKAGE_WORKBENCH=ON.
The first thing that needs to be done is creating the PyCharm project and configuring the project settings. Please follow the instructions at Setting up PyCharm on Windows.
After the project settings have been configured, a Run/Debug configuration needs to be created. To edit the configurations go to Run->Run... and select Edit Configurations. Select Templates->Python, and hit the green + in the top left.
The necessary changes to the configuration are:
<Mantid Build Directory>/bin/Debug/workbench-script.pyw<Mantid Build Directory>/bin/Debug<Mantid Build Directory>/bin/Release/workbench-script.pyw<Mantid Build Directory>/bin/ReleaseNote that the only difference here is the change from /bin/Debug/ to /bin/Release/.
Make sure you have finished the build you are using (Debug or Release), or there will be import errors.
qtpy.PythonQtError: No Qt bindings could be found
<Mantid Source Directory>/external/src/ThirdParty/lib/qt5/bin is missing from the Path environment variable.
ImportError: DLL load failed: The specified module could not be found.
<Mantid Source Directory>/external/src/ThirdParty/lib/qt5/lib is missing from the Path environment variable.
The fix for these errors is to make sure you have started PyCharm through the <Mantid Build Directory>/pycharm.bat script. This sets up the PATH variable for the Python imports.
Additionally, check that your PyCharm Run/Debug configuration does not overwrite the PATH variable.
To check go to Edit Configurations -> Environment Variables and click the folder icon on the right side. In the Name column there should not be a Path variable.
If there is one, try deleting it and running your configuration again.
Follow these steps to narrow down the root of potential errors:
command_prompt.bat. If the command_prompt.bat file is missing, the build has not been fully generated from CMake or is corrupted.python.import qtpy, from PyQt5 import QtCore, try running that line in the interpreter.PATH configuration in PyCharm.PyQt4/PyQt5/qtpy, and it fails to import from the command prompt, then the external dependencies might not be downloaded or are corrupted.The widgets in mantidqt/widgets can be run independently of the Workbench. They still need the relevant PATHs available - to load the mantid, mantidqt, and various other libraries.
The easiest way to do this is to set the script path to the widget’s startup script, but leave the working directory to point at <Mantid Build Directory>/bin/Debug or <Mantid Build Directory>/bin/Release
For example to run the MatrixWorkspaceDisplay:
<Mantid Source Dir>/qt/python/mantidqt/widgets/matrixworkspaceviewer. This package has a __main__.py file which makes it runnable.<Mantid Build Dir>/bin/Debug.