0001 function CB_logmenu(handle, event)
0002
0003
0004
0005 userdata=get(handle, 'UserData');
0006 checked = onoff2bool(get(handle,'Checked'));
0007 if (checked), scale = 'linear'; else, scale = 'log'; end;
0008 set(handle, 'Checked', bool2onoff(~checked));
0009
0010
0011 switch(userdata.limits(1)),
0012 case 'Y',
0013 set(userdata.axes, 'YScale', scale);
0014 case 'Z',
0015 set(userdata.axes, 'ZScale', scale);
0016 case 'C',
0017
0018 temp = get(userdata.axes, userdata.limits);
0019 set(userdata.axes, userdata.limits, userdata.backlims);
0020 userdata.backlims = temp;
0021
0022 temp = get(userdata.imageobj, 'CData');
0023 set(userdata.imageobj, 'CData', userdata.backdata);
0024 userdata.backdata = temp;
0025
0026 h = find_colorbar(userdata.axes);
0027 if (~isempty(h)),
0028 cbar_pos = get(h,'Position'); axes_pos = get(userdata.axes,'Position');
0029 if (cbar_pos(1) > sum(axes_pos([1,3]))), loc = 'vert'; else, loc = 'horiz'; end;
0030 colorbar(loc, 'peer', userdata.axes);
0031 end;
0032
0033 otherwise, error('UIlogmenu error: invalid mode.');
0034 end
0035
0036 set(handle, 'UserData', userdata);