0001 function CB_subzoom(handle, event)
0002
0003
0004 hei_zoom = 0.85;
0005 wid_zoom = 0.85;
0006
0007
0008
0009 userdata = get(handle, 'UserData');
0010 target = userdata.targetaxs;
0011 mymenu = find_uimenu(target, 'subzoom');
0012
0013 allcontexts = get(get(target, 'Children'), 'UIContextMenu');
0014 if (iscell(allcontexts)), allcontexts = cat(1, allcontexts{:}); end;
0015 chmenu = findobj(allcontexts, 'Tag', 'subzoom');
0016
0017 userdata = get(mymenu, 'UserData');
0018
0019 userdata.zoomstate = ~onoff2bool(get(mymenu,'Checked'));
0020 set([mymenu, chmenu], 'Checked', bool2onoff(userdata.zoomstate));
0021
0022
0023 oldunits = get(target, 'Units'); set(target, 'Units', 'normalized');
0024 if (userdata.zoomstate)
0025 userdata.revert = get(target, 'Position');
0026 set(target, 'Position', ...
0027 [(1-wid_zoom)/2 (1-hei_zoom)/2 wid_zoom hei_zoom]);
0028 uistack(target, 'top');
0029 else
0030 set(target, 'Position', userdata.revert);
0031 userdata.revert = [];
0032 end
0033 if (~isempty(legend(target))), legend(target); end;
0034 set(target, 'Units', oldunits);
0035
0036
0037 set(mymenu, 'UserData', userdata);