source: issm/oecreview/Archive/11881-11894/ISSM-11891-11892.diff@ 11991

Last change on this file since 11991 was 11991, checked in by Eric.Larour, 13 years ago

oecreview from 11518 to present

File size: 3.5 KB
  • proj/ice/larour/issm-uci-clean/trunk-jpl/src/m/classes/plotoptions.m

     
    4747                                 error('buildlist error message: an even number of plotoptions is required')
    4848                         end
    4949
    50                          %first: build a pairoptions out of varargin:
     50                         %go through varargin and build list (like pairoptions)
    5151                         rawoptions=pairoptions(varargin{:});
     52                         numoptions = (nargin-1)/2;
     53                         rawlist=cell(numoptions,2);
     54                         for i=1:numoptions,
     55                                 if ischar(varargin{2*i-1}),
     56                                         rawlist{i,1}=varargin{2*i-1};
     57                                         rawlist{i,2}=varargin{2*i};
     58                                 else
     59                                         %option is not a string, ignore it
     60                                         disp(['WARNING: option number ' num2str(i) ' is not a string, it will be ignored']);
     61                                         rawlist(i,:)=[];
     62                                         continue
     63                                 end
     64                         end
    5265
    5366                         %get figure number
    5467                         opt.figurenumber=getfieldvalue(rawoptions,'figure',1);
     
    7184                         end
    7285
    7386                         %process plot options
    74                          for i=1:size(rawoptions.list,1),
     87                         for i=1:size(rawlist,1),
    7588
    7689                                 %If alloptions flag has is on, apply to all plots
    77                                  if (allflag & ~strcmpi(rawoptions.list{i,1},'data') & ~ismember('#',rawoptions.list{i,1})),
     90                                 if (allflag & ~strcmpi(rawlist{i,1},'data') & ~ismember('#',rawlist{i,1})),
    7891                                         for j=1:numberofplots,
    79                                                  opt.list{j}=addfield(opt.list{j},rawoptions.list{i,1},rawoptions.list{i,2});
     92                                                 opt.list{j}=addfield(opt.list{j},rawlist{i,1},rawlist{i,2});
    8093                                         end
    8194
    8295                                         %option contains '#'
    83                                  elseif ismember('#',rawoptions.list{i,1}),
     96                                 elseif ismember('#',rawlist{i,1}),
    8497
    8598                                         %get suplot(s) associated
    86                                          string=strsplit(rawoptions.list{i,1},'#');
     99                                         string=strsplit(rawlist{i,1},'#');
    87100                                         plotnums=string{end};
    88101                                         field=string{1};
    89102
     
    101114                                                         %#all
    102115                                                 elseif strcmpi(plotnum,'all');
    103116                                                         for j=1:numberofplots,
    104                                                                  opt.list{j}=addfield(opt.list{j},field,rawoptions.list{i,2});
     117                                                                 opt.list{j}=addfield(opt.list{j},field,rawlist{i,2});
    105118                                                         end
    106119
    107120                                                         %#i-j
     
    112125                                                                 error(['the option #i-j is not set properly for ' field]);
    113126                                                         end
    114127                                                         for j=nums(1):nums(2),
    115                                                                  opt.list{j}=addfield(opt.list{j},field,rawoptions.list{i,2});
     128                                                                 opt.list{j}=addfield(opt.list{j},field,rawlist{i,2});
    116129                                                         end
    117130
    118131                                                         %#i
     
    121134                                                         if str2num(plotnum)>numberofplots,
    122135                                                                 error(['opt error message: ' field ' cannot be assigned (' plotnum ' exceed maximum number of plot)']);
    123136                                                         end
    124                                                          opt.list{str2num(plotnum)}=addfield(opt.list{str2num(plotnum)},field,rawoptions.list{i,2});
     137                                                         opt.list{str2num(plotnum)}=addfield(opt.list{str2num(plotnum)},field,rawlist{i,2});
    125138                                                 end
    126139                                         end
    127140
     
    131144                                         %go through all subplot and assign to the first one free
    132145                                         j=1;
    133146                                         while (j<=numberofplots),
    134                                                  if ~exist(opt.list{j},rawoptions.list{i,1});
    135                                                          opt.list{j}=addfield(opt.list{j},rawoptions.list{i,1},rawoptions.list{i,2});
     147                                                 if ~exist(opt.list{j},rawlist{i,1});
     148                                                         opt.list{j}=addfield(opt.list{j},rawlist{i,1},rawlist{i,2});
    136149                                                         break
    137150                                                 else
    138151                                                         j=j+1;
    139152                                                 end
    140153                                         end
    141154                                         if j>numberofplots,
    142                                                  disp(['plot info message: too many ''' rawoptions.list{i,1} ''' options']);
     155                                                 disp(['plot info message: too many ''' rawlist{i,1} ''' options']);
    143156                                         end
    144157                                 end
    145158                         end
Note: See TracBrowser for help on using the repository browser.