0001 function pa_fmri_parm_gui_callback(fig, hObj)
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 if ~exist('fig', 'var') || isempty(fig) || ~ishandle(fig)
0018 error('invalid figure handle.');
0019 end
0020 if ~exist('hObj', 'var'), error('hObj is a required parameter.'); end
0021
0022
0023
0024
0025 global vbmeg_inst;
0026 define = vbmeg_inst.const;
0027
0028
0029 data = guidata(fig);
0030 H = data.H;
0031
0032 switch( hObj )
0033
0034 case H.gauss_radius_slider
0035 val = get(H.gauss_radius_slider, 'Value');
0036 set(H.gauss_radius_edit, 'String', num2str(val));
0037 case H.gauss_max_slider
0038 val = get(H.gauss_max_slider, 'Value');
0039 set(H.gauss_max_edit, 'String', num2str(val));
0040 case H.spm_radius_slider
0041 val = get(H.spm_radius_slider, 'Value');
0042 set(H.spm_radius_edit, 'String', num2str(val));
0043 case H.spm_zstep_slider
0044 val = get(H.spm_zstep_slider, 'Value');
0045 set(H.spm_zstep_edit, 'String', num2str(val));
0046
0047
0048 case H.gauss_radius_edit
0049 val = str2num(get(H.gauss_radius_edit, 'String'));
0050 set(H.gauss_radius_slider, 'Value', val);
0051 case H.gauss_max_edit
0052 val = str2num(get(H.gauss_max_edit, 'String'));
0053 set(H.gauss_max_slider, 'Value', val);
0054 case H.spm_radius_edit
0055 val = str2num(get(H.spm_radius_edit, 'String'));
0056 set(H.spm_radius_slider, 'Value', val);
0057 case H.spm_zstep_edit
0058 val = str2num(get(H.spm_zstep_edit, 'String'));
0059 set(H.spm_zstep_slider, 'Value', val);
0060
0061 case H.ok_push
0062 fmri_parm = pa_fmri_parm_gui_get_parm(fig);
0063 pa_fmri_merge_parm(data.parent_fig, fmri_parm);
0064 pa_fmri_parm_gui_close(fig);
0065 case H.cancel_push
0066 button = questdlg('Close Now?', 'fMRI_parm',...
0067 'Yes', 'No',...
0068 'No');
0069 if strcmp(button, 'Yes')
0070 pa_fmri_parm_gui_close(fig);
0071 end
0072 end