ソースを参照

* Fix selection of package

git-svn-id: trunk@32895 -
michael 9 年 前
コミット
a87e83e9b7
1 ファイル変更16 行追加11 行削除
  1. 16 11
      utils/fpdoc/fpdoc.pp

+ 16 - 11
utils/fpdoc/fpdoc.pp

@@ -178,16 +178,20 @@ end;
 
 
 procedure TFPDocApplication.ParseCommandLine;
 procedure TFPDocApplication.ParseCommandLine;
 
 
+Const
+  SOptProject = '--project=';
+  SOptPackage = '--package=';
+  
   Function ProjectOpt(Const s : string) : boolean;
   Function ProjectOpt(Const s : string) : boolean;
 
 
   begin
   begin
-    Result:=(Copy(s,1,3)='-p=') or (Copy(s,1,10)='--project=');
+    Result:=(Copy(s,1,3)='-p=') or (Copy(s,1,Length(SOptProject))=SOptProject);
   end;
   end;
 
 
   Function PackageOpt(Const s : string) : boolean;
   Function PackageOpt(Const s : string) : boolean;
 
 
   begin
   begin
-    Result:=((Copy(s,1,3)='-a=') or (Copy(s,1,10)='--package='));
+    Result:=((Copy(s,1,3)='-a=') or (Copy(s,1,Length(SOptPackage))=SOptPackage));
   end;
   end;
 
 
 var
 var
@@ -195,17 +199,18 @@ var
   s : string;
   s : string;
 
 
 begin
 begin
+
   // Check project
   // Check project
   for i := 1 to ParamCount do
   for i := 1 to ParamCount do
     begin
     begin
     s:=ParamStr(I);
     s:=ParamStr(I);
     If ProjectOpt(S) then
     If ProjectOpt(S) then
       ParseOption(s);
       ParseOption(s);
-    If (FCreator.Packages.Count=1) then
-      FPackage:=FCreator.Packages[0]
-    else if (FCreator.Options.DefaultPackageName<>'') then
-      Fpackage:=FCreator.Packages.FindPackage(FCreator.Options.DefaultPackageName);
     end;
     end;
+  If (FCreator.Packages.Count=1) then
+    FPackage:=FCreator.Packages[0]
+  else if (FCreator.Options.DefaultPackageName<>'') then
+    Fpackage:=FCreator.Packages.FindPackage(FCreator.Options.DefaultPackageName);
   If FCreator.Project.Packages.Count=0 then
   If FCreator.Project.Packages.Count=0 then
     begin // Add default package if none defined
     begin // Add default package if none defined
     FPackage:=FCreator.Packages.Add as TFPDocPackage;
     FPackage:=FCreator.Packages.Add as TFPDocPackage;
@@ -224,6 +229,11 @@ begin
       ParseOption(s);
       ParseOption(s);
     end;
     end;
   SelectedPackage; // Will print error if none available.
   SelectedPackage; // Will print error if none available.
+  // Set defaults
+  if FCreator.Options.BackEnd='' then
+    FCreator.Options.BackEnd:='html';
+  if SelectedPackage.Output='' then
+    SelectedPackage.Output:=SelectedPackage.Name;
 end;
 end;
 
 
 procedure TFPDocApplication.ParseOption(Const S : String);
 procedure TFPDocApplication.ParseOption(Const S : String);
@@ -369,11 +379,6 @@ begin
       FCreator.Options.BackendOptions.Add(Arg);
       FCreator.Options.BackendOptions.Add(Arg);
       end;
       end;
     end;
     end;
-  // Set defaults
-  if FCreator.Options.BackEnd='' then
-    FCreator.Options.BackEnd:='html';
-  if SelectedPackage.Output='' then
-    SelectedPackage.Output:=SelectedPackage.Name;
 end;
 end;
 
 
 Procedure TFPDocApplication.DoRun;
 Procedure TFPDocApplication.DoRun;