0001 function data = vb_signal_processor_change_process_order(data, direction)
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019 if ~exist('data', 'var')
0020 error('data is a required parameter.');
0021 end
0022 if ~exist('direction', 'var')
0023 error('direction is a required parameter.');
0024 end
0025
0026
0027
0028
0029
0030 current_pos = get(data.H.process_list_listbox, 'Value');
0031 switch(lower(direction))
0032 case 'upper'
0033 new_pos = current_pos-1;
0034 case 'lower'
0035 new_pos = current_pos+1;
0036 otherwise
0037 error('Unknown direction was specified.');
0038 end
0039
0040 if (new_pos <= 0) || new_pos > length(data.process_list)
0041
0042 else
0043 current_item = data.process_list{current_pos};
0044 tmp = data.process_list{new_pos};
0045 data.process_list{new_pos} = current_item;
0046 data.process_list{current_pos} = tmp;
0047 set(data.H.process_list_listbox, 'Value', new_pos);
0048 end
0049
0050
0051
0052
0053 if nargout ~= 1
0054 error('Function caller should receive an updated application data');
0055 end