Newer
Older
function [] = setPlotHandleVisibility(pHandles, pVisible)
%HIDEORSHOWHANDLES Summary of this function goes here
% Detailed explanation goes here
%% Parameter check
if ~islogical(pVisible)
warning('Parameter pVisible needs to be logical. Skipping...');
return;
end
%% Check data structure
if iscell(pHandles)
processCell(pHandles);
return;
end
if isstruct(pHandles)
processStruct(pHandles);
return;
end
if all(ishandle(pHandles)) && length(pHandles) > 1
processHandleArray(pHandles);
return;
end
%% Check if handle is valid
if isempty(pHandles) || ~isvalid(pHandles)
return;
end
%% Set visibility
if pVisible
pHandles.Visible = 'on';
else
pHandles.Visible = 'off';
end
function processCell(pCell)
for i = 1:length(pCell)
artoa.controller.setPlotHandleVisibility(pCell{i}, pVisible);
end
end
function processStruct(pHandles)
fnames = fieldnames(pHandles);
for oFnames = 1:length(fnames)
artoa.controller.setPlotHandleVisibility(pHandles.(fnames{oFnames}), pVisible);
end
end
function processHandleArray(pHandleArray)
for i = 1:length(pHandleArray)
artoa.controller.setPlotHandleVisibility(pHandleArray(i), pVisible);
end
end