GUITool - Easy to Use GUI Toolkit & Framework for MATLAB
GUITool is a cross compatible Graphical User Interface (GUI) Toolkit, UI design, and layout framework for MATLAB. It has been specifically designed to be very easy to use and allow rapid prototyping of custom MATLAB UI interfaces. At the same time it has been developed to be faster and have better performance for complex and larger scale GUIs than the Mathworks GUI Layout Toolbox.
The GUITool framework has been compared to the Mathworks GUI Layout Toolbox (GLT) by running the included test suite, as for example
runTestSuite( 'nruns', 100, 'pause', 0, 'closef', 1, 'uilib', 'uitk' )
substituting the _uilib_ parameter with `uitk`, `uiextras`, and `uix` correspondingly. The resulting timings can be seen in the table below. First, we can see that GUITool is 1.8-2.5 times faster than the GUI Layout Toolbox (GLT), moreover, comparing the runs for MATLAB 2011a with 2019a it also clear that the MATLAB GUI functionality is currently 2-3 times slower with is also consistent with a previous MATLAB GUI benchmark comparison (https://www.precisesimulation.com/blog/2019-08-20-benchmarking-and-performance-comparison-of-matlab-versions). To really get good GUI performance we can therefore only recommend using the GUITool framework with older MATLAB versions.
<caption id="matlab-gui-performance-comparison-table">MATLAB GUI Performance Comparison</caption>
<tr> <th> MATLAB <th colspan="2"> R2011a <th colspan="2"> R2019a
<tr> <th> Test case <th> GUITool <th> GLT (v1.17) <th> GUITool <th> GLT (v2.3.4)
<tr> <td> hbox 1 <td> 0.5 <td> 1.3 <td> 1.4 <td> 1.9
<tr> <td> hbox 2 <td> 0.7 <td> 1.7 <td> 2.0 <td> 2.8
<tr> <td> vbox 1 <td> 0.4 <td> 1.3 <td> 1.3 <td> 1.9
<tr> <td> vbox 2 <td> 0.6 <td> 1.7 <td> 2.0 <td> 2.5
<tr> <td> grid 1 <td> 0.6 <td> 2.4 <td> 2.0 <td> 3.6
<tr> <td> boxpanel 1 <td> 0.5 <td> 2.7 <td> 2.2 <td> 12.5
<tr> <td> tabpanel 1 <td> 1.6 <td> 3.1 <td> 6.1 <td> 3.9
<tr> <th> Total Time <th> 5.8 <th> 14.2 <th> 16.9 <th> 28.9
Copy and add the GUI toolkit source files (.m and .p files from the _src_ directory) to your own project directory, or add a path to to the directory with the `addpath` command.
Look at the examples in the source files _uitkHBox_, _uitkVBox_, _uitkGrid_, _uitkBoxPanel_, and _uitkTabPanel_ as well as the examples in the _src/tests_ directory.
Run the `runTestSuite` function from the root directory.
Open the included *index.html* file in a web browser to access the function documentation.
Precise Simulation (2020). GUITool - Easy and Fast MATLAB GUI Framework (https://github.com/precise-simulation/guitool), GitHub. Retrieved .