I'm working on a large GUI in GUIDE with many different buttons, plots and popupmenus etc.. For the sake of error handling I would like to use try and catch statements to detect and output unexpected error messages. In combination with this, I would like to be able to backup the state of my entire GUI before I execute the code in a callback and then restore it if an error occurs.
Is there an efficient and general way to do this, without having to manually read out every component i alter?
I have tried working with findobj to automatically get all GUI Objects that fulfill different conditions to for example activate large parts of the GUI at once. This works well for specific cases like finding all deactivated UIControl Elements:
handles.InterfaceObjOff = findobj(handles.figure1, 'Enable', 'off', 'Visible', 'on', 'Type', 'UIControl');
but I am looking for something to read out everything, including entered values, strings in popupmenus, plotted lines etc. for different types of GUI elements.
I have also tried using guidata to backup the state of my GUI, but this does not work to actually restore the state of the GUI itself, only the variables stored within it.
Thanks in advance!