51 lines
1.2 KiB
Matlab
51 lines
1.2 KiB
Matlab
function waitUntilClick(options)
|
|
|
|
% use like this to stop any computation and wait for user to press ENTER or
|
|
% Continue button. I used this in the lab to wait until smth settled or I
|
|
% set a device to a certain operating point...
|
|
|
|
% USAGE:
|
|
% waitUntilClick;
|
|
|
|
% OPTIONAL: provide input text that is prompted :-)
|
|
% usrcmd = sprintf('Laser to %d dBm',p);
|
|
% waitUntilClick('Text',usrcmd);
|
|
|
|
|
|
arguments
|
|
options.Text string = "Click ""Continue"" to proceed"
|
|
end
|
|
|
|
% Create the UI figure
|
|
fig = uifigure('Name', 'Pause Execution', ...
|
|
'Position', [100 100 300 150], ...
|
|
'KeyPressFcn', @(src,event) keyHandler(event));
|
|
|
|
% Create a label with custom text
|
|
uilabel(fig, ...
|
|
'Position', [30 70 240 60], ...
|
|
'Text', options.Text, ...
|
|
'FontSize', 14, ...
|
|
'HorizontalAlignment', 'center', ...
|
|
'WordWrap','on');
|
|
|
|
% Create the "Continue" button
|
|
uibutton(fig, 'push', ...
|
|
'Text', 'Continue', ...
|
|
'Position', [100 20 100 40], ...
|
|
'ButtonPushedFcn', @(src, event) closeWindow());
|
|
|
|
function closeWindow()
|
|
delete(fig);
|
|
end
|
|
|
|
function keyHandler(event)
|
|
if strcmp(event.Key,'return') || strcmp(event.Key,'enter')
|
|
closeWindow();
|
|
end
|
|
end
|
|
|
|
% Wait until the figure is closed
|
|
waitfor(fig);
|
|
end
|