hedgewars/ArgParsers.inc
branchwebgl
changeset 8332 9333216f2054
parent 8330 aaefa587e277
child 8444 75db7bb8dce8
equal deleted inserted replaced
8330:aaefa587e277 8332:9333216f2054
   153     if wrongParameter then
   153     if wrongParameter then
   154          WriteLn(stderr, 'ERROR: '+ParamStr(paramIndex-1)+' expects a string, you passed "'+str+'"');
   154          WriteLn(stderr, 'ERROR: '+ParamStr(paramIndex-1)+' expects a string, you passed "'+str+'"');
   155     getStringParameter:= str;
   155     getStringParameter:= str;
   156 end;
   156 end;
   157 
   157 
   158 
   158 procedure parseClassicParameter(cmdArray: array of String; size:LongInt; var paramIndex:LongInt); forward;
   159 procedure parseClassicParameter(cmdArray: Array of String; size:LongInt; var paramIndex:LongInt); Forward;
       
   160 
   159 
   161 function parseParameter(cmd:String; arg:String; var paramIndex:LongInt): Boolean;
   160 function parseParameter(cmd:String; arg:String; var paramIndex:LongInt): Boolean;
   162 const videoArray: Array [1..3] of String = ('--width','--height','--depth');
   161 const videoArray: array [1..3] of String = ('--width','--height','--depth');
   163       audioArray: Array [1..3] of String = ('--volume','--nomusic','--nosound');
   162       audioArray: array [1..3] of String = ('--volume','--nomusic','--nosound');
   164       otherArray: Array [1..3] of String = ('--locale','--fullscreen','--showfps');
   163       otherArray: array [1..3] of String = ('--locale','--fullscreen','--showfps');
   165       mediaArray: Array [1..8] of String = ('--width','--height','--depth','--volume','--nomusic','--nosound','--locale','--fullscreen');
   164       mediaArray: array [1..8] of String = ('--width','--height','--depth','--volume','--nomusic','--nosound','--locale','--fullscreen');
   166       allArray: Array [1..12] of String = ('--width','--height','--depth','--volume','--nomusic','--nosound','--locale','--fullscreen','--showfps','--altdmg','--frame-interval','--low-quality');
   165       allArray: array [1..12] of String = ('--width','--height','--depth','--volume','--nomusic','--nosound','--locale','--fullscreen','--showfps','--altdmg','--frame-interval','--low-quality');
   167       reallyAll: array[0..28] of shortstring = (
   166       reallyAll: array[0..28] of shortstring = (
   168                 '--prefix', '--user-prefix', '--locale', '--width', '--height', '--frame-interval', '--volume','--nomusic', '--nosound',
   167                 '--prefix', '--user-prefix', '--locale', '--width', '--height', '--frame-interval', '--volume','--nomusic', '--nosound',
   169                 '--fullscreen', '--showfps', '--altdmg', '--low-quality', '--raw-quality', '--stereo', '--nick',
   168                 '--fullscreen', '--showfps', '--altdmg', '--low-quality', '--raw-quality', '--stereo', '--nick',
   170   {deprecated}  '--depth', '--set-video', '--set-audio', '--set-other', '--set-multimedia', '--set-everything',
   169   {deprecated}  '--depth', '--set-video', '--set-audio', '--set-other', '--set-multimedia', '--set-everything',
   171   {internal}    '--internal', '--port', '--recorder', '--landpreview',
   170   {internal}    '--internal', '--port', '--recorder', '--landpreview',
   224             end;
   223             end;
   225         end;
   224         end;
   226     end;
   225     end;
   227 end;
   226 end;
   228 
   227 
   229 procedure parseClassicParameter(cmdArray: Array of String; size:LongInt; var paramIndex:LongInt);
   228 procedure parseClassicParameter(cmdArray: array of String; size:LongInt; var paramIndex:LongInt);
   230 var index, tmpInt: LongInt;
   229 var index, tmpInt: LongInt;
   231     isBool, isValid: Boolean;
   230     isBool, isValid: Boolean;
   232     cmd, arg, newSyntax: String;
   231     cmd, arg, newSyntax: String;
   233 begin
   232 begin
   234     WriteLn(stdout, 'WARNING: you are using a deprecated command, which could be removed in a future version!');
   233     WriteLn(stdout, 'WARNING: you are using a deprecated command, which could be removed in a future version!');
   253             isValid:= not isValid;
   252             isValid:= not isValid;
   254 
   253 
   255         if isValid then
   254         if isValid then
   256             begin
   255             begin
   257             parseParameter(cmd, arg, tmpInt);
   256             parseParameter(cmd, arg, tmpInt);
   258             newSyntax += cmd + ' ';
   257             newSyntax:= newSyntax + cmd + ' ';
   259             if not isBool then
   258             if not isBool then
   260                 newSyntax += arg + ' ';
   259                 newSyntax:= newSyntax + arg + ' ';
   261             end;
   260             end;
   262         inc(index);
   261         inc(index);
   263         end;
   262         end;
   264 
   263 
   265     WriteLn(stdout, 'Attempted to automatically convert to the new syntax:');
   264     WriteLn(stdout, 'Attempted to automatically convert to the new syntax:');