mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-18 17:59:22 +02:00
made package files more relative
git-svn-id: trunk@4542 -
This commit is contained in:
parent
40044dcf40
commit
3a6dd972da
@ -726,6 +726,7 @@ resourcestring
|
|||||||
dlgEdAdd = 'Add...';
|
dlgEdAdd = 'Add...';
|
||||||
dlgEdEdit = 'Edit...';
|
dlgEdEdit = 'Edit...';
|
||||||
dlgEdDelete = 'Delete';
|
dlgEdDelete = 'Delete';
|
||||||
|
lisA2PSwitchPaths = 'Switch Paths';
|
||||||
lisA2PAddFilesToPackage = 'Add files to package';
|
lisA2PAddFilesToPackage = 'Add files to package';
|
||||||
lisA2PAddToPackage = 'Add to package';
|
lisA2PAddToPackage = 'Add to package';
|
||||||
dlgIndentCodeTo = 'Indent code to';
|
dlgIndentCodeTo = 'Indent code to';
|
||||||
@ -1954,8 +1955,8 @@ resourcestring
|
|||||||
+'projects and packages.';
|
+'projects and packages.';
|
||||||
lisA2PTheMaximumVersionIsLowerThanTheMinimimVersion = 'The Maximum Version '
|
lisA2PTheMaximumVersionIsLowerThanTheMinimimVersion = 'The Maximum Version '
|
||||||
+'is lower than the Minimim Version.';
|
+'is lower than the Minimim Version.';
|
||||||
lisA2PThePackageNameIsInvalidPlaseChooseAnExisting = 'The package name %s%s%'
|
lisA2PThePackageNameIsInvalidPleaseChooseAnExisting = 'The package name %s%s%'
|
||||||
+'s is invalid.%sPlase choose an existing package.';
|
+'s is invalid.%sPlease choose an existing package.';
|
||||||
lisA2PThePackageHasAlreadyADependencyForThe = 'The package has already a '
|
lisA2PThePackageHasAlreadyADependencyForThe = 'The package has already a '
|
||||||
+'dependency for the package %s%s%s.';
|
+'dependency for the package %s%s%s.';
|
||||||
lisA2PNoPackageFoundForDependencyPleaseChooseAnExisting = 'No package found '
|
lisA2PNoPackageFoundForDependencyPleaseChooseAnExisting = 'No package found '
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
<CONFIG>
|
<CONFIG>
|
||||||
<Package>
|
<Package>
|
||||||
<Name Value="GTK2Interface"/>
|
<Name Value="GTK2Interface"/>
|
||||||
<Files Count="3">
|
<Files Count="20">
|
||||||
<Item1>
|
<Item1>
|
||||||
<Filename Value="interfaces.pas"/>
|
<Filename Value="interfaces.pas"/>
|
||||||
<UnitName Value="Interfaces"/>
|
<UnitName Value="Interfaces"/>
|
||||||
@ -15,6 +15,74 @@
|
|||||||
<Filename Value="../gtk/gtkglobals.pp"/>
|
<Filename Value="../gtk/gtkglobals.pp"/>
|
||||||
<UnitName Value="GTKGlobals"/>
|
<UnitName Value="GTKGlobals"/>
|
||||||
</Item3>
|
</Item3>
|
||||||
|
<Item4>
|
||||||
|
<Filename Value="../gtk/gtkmsgqueue.pp"/>
|
||||||
|
<UnitName Value="GtkMsgQueue"/>
|
||||||
|
</Item4>
|
||||||
|
<Item5>
|
||||||
|
<Filename Value="../gtk/gtkcallback.inc"/>
|
||||||
|
<Type Value="Include"/>
|
||||||
|
</Item5>
|
||||||
|
<Item6>
|
||||||
|
<Filename Value="../gtk/gtkcomboboxcallback.inc"/>
|
||||||
|
<Type Value="Include"/>
|
||||||
|
</Item6>
|
||||||
|
<Item7>
|
||||||
|
<Filename Value="../gtk/gtkdef.pp"/>
|
||||||
|
<UnitName Value="GTKDef"/>
|
||||||
|
</Item7>
|
||||||
|
<Item8>
|
||||||
|
<Filename Value="../gtk/gtkdragcallback.inc"/>
|
||||||
|
<Type Value="Include"/>
|
||||||
|
</Item8>
|
||||||
|
<Item9>
|
||||||
|
<Filename Value="../gtk/gtkimages.lrs"/>
|
||||||
|
<Type Value="LRS"/>
|
||||||
|
</Item9>
|
||||||
|
<Item10>
|
||||||
|
<Filename Value="../gtk/gtkint.pp"/>
|
||||||
|
<UnitName Value="GtkInt"/>
|
||||||
|
</Item10>
|
||||||
|
<Item11>
|
||||||
|
<Filename Value="../gtk/gtklistsl.inc"/>
|
||||||
|
<Type Value="Include"/>
|
||||||
|
</Item11>
|
||||||
|
<Item12>
|
||||||
|
<Filename Value="../gtk/gtklistslh.inc"/>
|
||||||
|
<Type Value="Include"/>
|
||||||
|
</Item12>
|
||||||
|
<Item13>
|
||||||
|
<Filename Value="../gtk/gtklistviewcallback.inc"/>
|
||||||
|
<Type Value="Include"/>
|
||||||
|
</Item13>
|
||||||
|
<Item14>
|
||||||
|
<Filename Value="../gtk/gtkobject.inc"/>
|
||||||
|
<Type Value="Include"/>
|
||||||
|
</Item14>
|
||||||
|
<Item15>
|
||||||
|
<Filename Value="../gtk/gtkproc.inc"/>
|
||||||
|
<Type Value="Include"/>
|
||||||
|
</Item15>
|
||||||
|
<Item16>
|
||||||
|
<Filename Value="../gtk/gtkproc.pp"/>
|
||||||
|
<UnitName Value="GTKProc"/>
|
||||||
|
</Item16>
|
||||||
|
<Item17>
|
||||||
|
<Filename Value="../gtk/gtkwinapi.inc"/>
|
||||||
|
<Type Value="Include"/>
|
||||||
|
</Item17>
|
||||||
|
<Item18>
|
||||||
|
<Filename Value="../gtk/gtkwinapih.inc"/>
|
||||||
|
<Type Value="Include"/>
|
||||||
|
</Item18>
|
||||||
|
<Item19>
|
||||||
|
<Filename Value="../gtk/gtkwinapiwindow.pp"/>
|
||||||
|
<UnitName Value="GTKWinapiWindow"/>
|
||||||
|
</Item19>
|
||||||
|
<Item20>
|
||||||
|
<Filename Value="../gtk/keymap.pp"/>
|
||||||
|
<UnitName Value="KeyMap"/>
|
||||||
|
</Item20>
|
||||||
</Files>
|
</Files>
|
||||||
<Type Value="RunAndDesignTime"/>
|
<Type Value="RunAndDesignTime"/>
|
||||||
<RequiredPkgs Count="2">
|
<RequiredPkgs Count="2">
|
||||||
@ -36,7 +104,7 @@
|
|||||||
</Package>
|
</Package>
|
||||||
<CompilerOptions>
|
<CompilerOptions>
|
||||||
<SearchPaths>
|
<SearchPaths>
|
||||||
<OtherUnitFiles Value="./;../gtk/;../../units/"/>
|
<OtherUnitFiles Value="../gtk/;../../units/"/>
|
||||||
<UnitOutputDirectory Value="../../units/gtk2"/>
|
<UnitOutputDirectory Value="../../units/gtk2"/>
|
||||||
<LCLWidgetType Value="gtk"/>
|
<LCLWidgetType Value="gtk"/>
|
||||||
</SearchPaths>
|
</SearchPaths>
|
||||||
|
@ -137,10 +137,12 @@ type
|
|||||||
procedure AddFileBrowseButtonClick(Sender: TObject);
|
procedure AddFileBrowseButtonClick(Sender: TObject);
|
||||||
procedure AddFileButtonClick(Sender: TObject);
|
procedure AddFileButtonClick(Sender: TObject);
|
||||||
procedure AddFilePageResize(Sender: TObject);
|
procedure AddFilePageResize(Sender: TObject);
|
||||||
|
procedure AddFileShortenButtonClick(Sender: TObject);
|
||||||
procedure AddFilesPageResize(Sender: TObject);
|
procedure AddFilesPageResize(Sender: TObject);
|
||||||
procedure AddToPackageDlgClose(Sender: TObject; var Action: TCloseAction);
|
procedure AddToPackageDlgClose(Sender: TObject; var Action: TCloseAction);
|
||||||
procedure AddUnitButtonClick(Sender: TObject);
|
procedure AddUnitButtonClick(Sender: TObject);
|
||||||
procedure AddUnitFileBrowseButtonClick(Sender: TObject);
|
procedure AddUnitFileBrowseButtonClick(Sender: TObject);
|
||||||
|
procedure AddUnitFileShortenButtonClick(Sender: TObject);
|
||||||
procedure AddUnitIsVirtualCheckBoxClick(Sender: TObject);
|
procedure AddUnitIsVirtualCheckBoxClick(Sender: TObject);
|
||||||
procedure AddUnitPageResize(Sender: TObject);
|
procedure AddUnitPageResize(Sender: TObject);
|
||||||
procedure AddUnitUpdateButtonClick(Sender: TObject);
|
procedure AddUnitUpdateButtonClick(Sender: TObject);
|
||||||
@ -151,9 +153,11 @@ type
|
|||||||
procedure CancelNewComponentButtonClick(Sender: TObject);
|
procedure CancelNewComponentButtonClick(Sender: TObject);
|
||||||
procedure ClassNameEditChange(Sender: TObject);
|
procedure ClassNameEditChange(Sender: TObject);
|
||||||
procedure ComponentUnitFileBrowseButtonClick(Sender: TObject);
|
procedure ComponentUnitFileBrowseButtonClick(Sender: TObject);
|
||||||
|
procedure ComponentUnitFileShortenButtonClick(Sender: TObject);
|
||||||
procedure FilesAddButtonClick(Sender: TObject);
|
procedure FilesAddButtonClick(Sender: TObject);
|
||||||
procedure FilesBrowseButtonClick(Sender: TObject);
|
procedure FilesBrowseButtonClick(Sender: TObject);
|
||||||
procedure FilesDeleteButtonClick(Sender: TObject);
|
procedure FilesDeleteButtonClick(Sender: TObject);
|
||||||
|
procedure FilesShortenButtonClick(Sender: TObject);
|
||||||
procedure NewComponentButtonClick(Sender: TObject);
|
procedure NewComponentButtonClick(Sender: TObject);
|
||||||
procedure NewComponentPageResize(Sender: TObject);
|
procedure NewComponentPageResize(Sender: TObject);
|
||||||
procedure NewDependButtonClick(Sender: TObject);
|
procedure NewDependButtonClick(Sender: TObject);
|
||||||
@ -180,6 +184,7 @@ type
|
|||||||
procedure UpdateAddUnitInfo;
|
procedure UpdateAddUnitInfo;
|
||||||
procedure UpdateAddFileInfo;
|
procedure UpdateAddFileInfo;
|
||||||
function FileNameToPkgFileType(const AFilename: string): TPkgFileType;
|
function FileNameToPkgFileType(const AFilename: string): TPkgFileType;
|
||||||
|
function SwitchRelativeAbsoluteFilename(const Filename: string): string;
|
||||||
public
|
public
|
||||||
Params: TAddToPkgResult;
|
Params: TAddToPkgResult;
|
||||||
constructor Create(TheOwner: TComponent); override;
|
constructor Create(TheOwner: TComponent); override;
|
||||||
@ -369,7 +374,7 @@ begin
|
|||||||
// check packagename
|
// check packagename
|
||||||
if (NewPkgName='') or (not IsValidIdent(NewPkgName)) then begin
|
if (NewPkgName='') or (not IsValidIdent(NewPkgName)) then begin
|
||||||
MessageDlg(lisProjAddInvalidPackagename,
|
MessageDlg(lisProjAddInvalidPackagename,
|
||||||
Format(lisA2PThePackageNameIsInvalidPlaseChooseAnExisting, ['"',
|
Format(lisA2PThePackageNameIsInvalidPleaseChooseAnExisting, ['"',
|
||||||
NewPkgName, '"', #13]),
|
NewPkgName, '"', #13]),
|
||||||
mtError,[mbCancel],0);
|
mtError,[mbCancel],0);
|
||||||
exit;
|
exit;
|
||||||
@ -426,6 +431,7 @@ begin
|
|||||||
Params.AutoAddLFMFile:=false;
|
Params.AutoAddLFMFile:=false;
|
||||||
Params.AutoAddLRSFile:=false;
|
Params.AutoAddLRSFile:=false;
|
||||||
end;
|
end;
|
||||||
|
LazPackage.LongenFilename(Params.UnitFilename);
|
||||||
|
|
||||||
// check filename
|
// check filename
|
||||||
if not CheckAddingUnitFilename(LazPackage,Params.AddType,
|
if not CheckAddingUnitFilename(LazPackage,Params.AddType,
|
||||||
@ -454,6 +460,7 @@ procedure TAddToPackageDlg.AddFilePageResize(Sender: TObject);
|
|||||||
var
|
var
|
||||||
x: Integer;
|
x: Integer;
|
||||||
y: Integer;
|
y: Integer;
|
||||||
|
w: Integer;
|
||||||
begin
|
begin
|
||||||
x:=5;
|
x:=5;
|
||||||
y:=5;
|
y:=5;
|
||||||
@ -461,12 +468,16 @@ begin
|
|||||||
SetBounds(x,y+2,100,Height);
|
SetBounds(x,y+2,100,Height);
|
||||||
inc(x,AddFilenameLabel.Width+5);
|
inc(x,AddFilenameLabel.Width+5);
|
||||||
|
|
||||||
|
w:=AddFilenameEdit.Height;
|
||||||
with AddFilenameEdit do
|
with AddFilenameEdit do
|
||||||
SetBounds(x,y,Parent.ClientWidth-x-30,Height);
|
SetBounds(x,y,Parent.ClientWidth-x-2-w-2-w-5,Height);
|
||||||
inc(x,AddFilenameEdit.Width+2);
|
inc(x,AddFilenameEdit.Width+2);
|
||||||
|
|
||||||
with AddFileBrowseButton do
|
with AddFileBrowseButton do
|
||||||
SetBounds(x,y,AddFilenameEdit.Height,AddFilenameEdit.Height);
|
SetBounds(x,y,w,w);
|
||||||
|
inc(x,w+2);
|
||||||
|
with AddFileShortenButton do
|
||||||
|
SetBounds(x,y,w,w);
|
||||||
x:=5;
|
x:=5;
|
||||||
y:=AddFilenameEdit.Top+AddFilenameEdit.Height+5;
|
y:=AddFilenameEdit.Top+AddFilenameEdit.Height+5;
|
||||||
|
|
||||||
@ -483,6 +494,13 @@ begin
|
|||||||
SetBounds(x,y,80,Height);
|
SetBounds(x,y,80,Height);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TAddToPackageDlg.AddFileShortenButtonClick(Sender: TObject);
|
||||||
|
begin
|
||||||
|
if lisA2PchooseAnExistingFile=AddFilenameEdit.Text then exit;
|
||||||
|
AddFilenameEdit.Text:=
|
||||||
|
SwitchRelativeAbsoluteFilename(AddFilenameEdit.Text);
|
||||||
|
end;
|
||||||
|
|
||||||
procedure TAddToPackageDlg.AddFilesPageResize(Sender: TObject);
|
procedure TAddToPackageDlg.AddFilesPageResize(Sender: TObject);
|
||||||
var
|
var
|
||||||
x: Integer;
|
x: Integer;
|
||||||
@ -493,21 +511,27 @@ begin
|
|||||||
with FilesListView do
|
with FilesListView do
|
||||||
SetBounds(0,0,Parent.ClientWidth,Parent.ClientHeight-45);
|
SetBounds(0,0,Parent.ClientWidth,Parent.ClientHeight-45);
|
||||||
|
|
||||||
x:=10;
|
x:=5;
|
||||||
y:=FilesListView.Height+10;
|
y:=FilesListView.Height+10;
|
||||||
w:=80;
|
w:=100;
|
||||||
h:=25;
|
h:=25;
|
||||||
|
|
||||||
with FilesBrowseButton do
|
with FilesBrowseButton do
|
||||||
SetBounds(x,y,w,h);
|
SetBounds(x,y,w,h);
|
||||||
|
inc(x,w+3);
|
||||||
|
|
||||||
|
with FilesShortenButton do
|
||||||
|
SetBounds(x,y,w,h);
|
||||||
|
inc(x,w+3);
|
||||||
|
|
||||||
inc(x,w+10);
|
|
||||||
with FilesDeleteButton do
|
with FilesDeleteButton do
|
||||||
SetBounds(x,y,w,h);
|
SetBounds(x,y,w,h);
|
||||||
|
inc(x,w+3);
|
||||||
|
|
||||||
inc(x,w+10);
|
w:=FilesAddButton.Parent.ClientWidth-x-5;
|
||||||
|
if w<20 then w:=20;
|
||||||
with FilesAddButton do
|
with FilesAddButton do
|
||||||
SetBounds(x,y,Parent.ClientWidth-x-10,h);
|
SetBounds(x,y,w,h);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TAddToPackageDlg.AddFileBrowseButtonClick(Sender: TObject);
|
procedure TAddToPackageDlg.AddFileBrowseButtonClick(Sender: TObject);
|
||||||
@ -525,7 +549,7 @@ begin
|
|||||||
if OpenDialog.Execute then begin
|
if OpenDialog.Execute then begin
|
||||||
AFilename:=CleanAndExpandFilename(OpenDialog.Filename);
|
AFilename:=CleanAndExpandFilename(OpenDialog.Filename);
|
||||||
if FileExists(AFilename) then begin
|
if FileExists(AFilename) then begin
|
||||||
LazPackage.ShortenFilename(AFilename);
|
LazPackage.ShortenFilename(AFilename,true);
|
||||||
AddFilenameEdit.Text:=AFilename;
|
AddFilenameEdit.Text:=AFilename;
|
||||||
UpdateAddFileInfo;
|
UpdateAddFileInfo;
|
||||||
end;
|
end;
|
||||||
@ -594,7 +618,7 @@ begin
|
|||||||
if OpenDialog.Execute then begin
|
if OpenDialog.Execute then begin
|
||||||
AFilename:=CleanAndExpandFilename(OpenDialog.Filename);
|
AFilename:=CleanAndExpandFilename(OpenDialog.Filename);
|
||||||
if FileExists(AFilename) then begin
|
if FileExists(AFilename) then begin
|
||||||
LazPackage.ShortenFilename(AFilename);
|
LazPackage.ShortenFilename(AFilename,true);
|
||||||
AddUnitFilenameEdit.Text:=AFilename;
|
AddUnitFilenameEdit.Text:=AFilename;
|
||||||
UpdateAddUnitInfo;
|
UpdateAddUnitInfo;
|
||||||
end;
|
end;
|
||||||
@ -605,12 +629,20 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TAddToPackageDlg.AddUnitFileShortenButtonClick(Sender: TObject);
|
||||||
|
begin
|
||||||
|
if lisA2PchooseAnExistingFile=AddUnitFilenameEdit.Text then exit;
|
||||||
|
AddUnitFilenameEdit.Text:=
|
||||||
|
SwitchRelativeAbsoluteFilename(AddUnitFilenameEdit.Text);
|
||||||
|
end;
|
||||||
|
|
||||||
procedure TAddToPackageDlg.AddUnitIsVirtualCheckBoxClick(Sender: TObject);
|
procedure TAddToPackageDlg.AddUnitIsVirtualCheckBoxClick(Sender: TObject);
|
||||||
var
|
var
|
||||||
VirtualFile: Boolean;
|
VirtualFile: Boolean;
|
||||||
begin
|
begin
|
||||||
VirtualFile:=AddUnitIsVirtualCheckBox.Checked;
|
VirtualFile:=AddUnitIsVirtualCheckBox.Checked;
|
||||||
AddUnitFileBrowseButton.Enabled:=not VirtualFile;
|
AddUnitFileBrowseButton.Enabled:=not VirtualFile;
|
||||||
|
AddUnitFileShortenButton.Enabled:=not VirtualFile;
|
||||||
AddUnitHasRegisterCheckBox.Enabled:=not VirtualFile;
|
AddUnitHasRegisterCheckBox.Enabled:=not VirtualFile;
|
||||||
AddUnitUpdateButton.Enabled:=not VirtualFile;
|
AddUnitUpdateButton.Enabled:=not VirtualFile;
|
||||||
AddSecondaryFilesCheckBox.Enabled:=not VirtualFile;
|
AddSecondaryFilesCheckBox.Enabled:=not VirtualFile;
|
||||||
@ -620,6 +652,7 @@ procedure TAddToPackageDlg.AddUnitPageResize(Sender: TObject);
|
|||||||
var
|
var
|
||||||
x: Integer;
|
x: Integer;
|
||||||
y: Integer;
|
y: Integer;
|
||||||
|
w: Integer;
|
||||||
begin
|
begin
|
||||||
x:=5;
|
x:=5;
|
||||||
y:=5;
|
y:=5;
|
||||||
@ -627,12 +660,17 @@ begin
|
|||||||
SetBounds(x,y+2,100,Height);
|
SetBounds(x,y+2,100,Height);
|
||||||
inc(x,AddUnitFilenameLabel.Width+5);
|
inc(x,AddUnitFilenameLabel.Width+5);
|
||||||
|
|
||||||
|
w:=AddUnitFilenameEdit.Height;
|
||||||
with AddUnitFilenameEdit do
|
with AddUnitFilenameEdit do
|
||||||
SetBounds(x,y,Parent.ClientWidth-x-30,Height);
|
SetBounds(x,y,Parent.ClientWidth-x-2*w-2-2-5,Height);
|
||||||
inc(x,AddUnitFilenameEdit.Width+2);
|
inc(x,AddUnitFilenameEdit.Width+2);
|
||||||
|
|
||||||
with AddUnitFileBrowseButton do
|
with AddUnitFileBrowseButton do
|
||||||
SetBounds(x,y,AddUnitFilenameEdit.Height,AddUnitFilenameEdit.Height);
|
SetBounds(x,y,w,w);
|
||||||
|
inc(x,w+2);
|
||||||
|
with AddUnitFileShortenButton do
|
||||||
|
SetBounds(x,y,w,w);
|
||||||
|
|
||||||
x:=5;
|
x:=5;
|
||||||
y:=AddUnitFilenameEdit.Top+AddUnitFilenameEdit.Height+5;
|
y:=AddUnitFilenameEdit.Top+AddUnitFilenameEdit.Height+5;
|
||||||
|
|
||||||
@ -720,7 +758,7 @@ begin
|
|||||||
if OpenDialog.Execute then begin
|
if OpenDialog.Execute then begin
|
||||||
AFilename:=CleanAndExpandFilename(OpenDialog.Filename);
|
AFilename:=CleanAndExpandFilename(OpenDialog.Filename);
|
||||||
if FilenameIsPascalUnit(AFilename) then begin
|
if FilenameIsPascalUnit(AFilename) then begin
|
||||||
LazPackage.ShortenFilename(AFilename);
|
LazPackage.ShortenFilename(AFilename,true);
|
||||||
ComponentUnitFileEdit.Text:=AFilename;
|
ComponentUnitFileEdit.Text:=AFilename;
|
||||||
end else begin
|
end else begin
|
||||||
MessageDlg(lisA2PInvalidFile,
|
MessageDlg(lisA2PInvalidFile,
|
||||||
@ -734,6 +772,13 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TAddToPackageDlg.ComponentUnitFileShortenButtonClick(Sender: TObject);
|
||||||
|
begin
|
||||||
|
if ''=ComponentUnitFileEdit.Text then exit;
|
||||||
|
ComponentUnitFileEdit.Text:=
|
||||||
|
SwitchRelativeAbsoluteFilename(ComponentUnitFileEdit.Text);
|
||||||
|
end;
|
||||||
|
|
||||||
procedure TAddToPackageDlg.FilesAddButtonClick(Sender: TObject);
|
procedure TAddToPackageDlg.FilesAddButtonClick(Sender: TObject);
|
||||||
var
|
var
|
||||||
i: Integer;
|
i: Integer;
|
||||||
@ -830,7 +875,7 @@ begin
|
|||||||
for i:=0 to OpenDialog.Files.COunt-1 do begin
|
for i:=0 to OpenDialog.Files.COunt-1 do begin
|
||||||
AFilename:=CleanAndExpandFilename(OpenDialog.Files[i]);
|
AFilename:=CleanAndExpandFilename(OpenDialog.Files[i]);
|
||||||
if FileExists(AFilename) then begin
|
if FileExists(AFilename) then begin
|
||||||
LazPackage.ShortenFilename(AFilename);
|
LazPackage.ShortenFilename(AFilename,true);
|
||||||
NewListItem:=FilesListView.Items.Add;
|
NewListItem:=FilesListView.Items.Add;
|
||||||
NewListItem.Caption:=AFilename;
|
NewListItem.Caption:=AFilename;
|
||||||
NewPgkFileType:=FileNameToPkgFileType(AFilename);
|
NewPgkFileType:=FileNameToPkgFileType(AFilename);
|
||||||
@ -853,6 +898,26 @@ begin
|
|||||||
FilesListView.Items.Delete(i);
|
FilesListView.Items.Delete(i);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TAddToPackageDlg.FilesShortenButtonClick(Sender: TObject);
|
||||||
|
var
|
||||||
|
SwitchToAbsolute: Boolean;
|
||||||
|
i: Integer;
|
||||||
|
Filename: String;
|
||||||
|
begin
|
||||||
|
if FilesListView.Items.Count=0 then exit;
|
||||||
|
if (not LazPackage.HasDirectory)
|
||||||
|
or (not FilenameIsAbsolute(LazPackage.Directory)) then exit;
|
||||||
|
SwitchToAbsolute:=not FilenameIsAbsolute(FilesListView.Items[0].Caption);
|
||||||
|
for i:=0 to FilesListView.Items.Count-1 do begin
|
||||||
|
Filename:=FilesListView.Items[i].Caption;
|
||||||
|
if SwitchToAbsolute then
|
||||||
|
Filename:=CreateAbsolutePath(Filename,LazPackage.Directory)
|
||||||
|
else
|
||||||
|
Filename:=CreateRelativePath(Filename,LazPackage.Directory);
|
||||||
|
FilesListView.Items[i].Caption:=Filename;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
procedure TAddToPackageDlg.NewComponentButtonClick(Sender: TObject);
|
procedure TAddToPackageDlg.NewComponentButtonClick(Sender: TObject);
|
||||||
var
|
var
|
||||||
PkgFile: TPkgFile;
|
PkgFile: TPkgFile;
|
||||||
@ -974,6 +1039,7 @@ procedure TAddToPackageDlg.NewComponentPageResize(Sender: TObject);
|
|||||||
var
|
var
|
||||||
x: Integer;
|
x: Integer;
|
||||||
y: Integer;
|
y: Integer;
|
||||||
|
w: Integer;
|
||||||
begin
|
begin
|
||||||
x:=5;
|
x:=5;
|
||||||
y:=5;
|
y:=5;
|
||||||
@ -1013,12 +1079,16 @@ begin
|
|||||||
SetBounds(x,y+2,100,Height);
|
SetBounds(x,y+2,100,Height);
|
||||||
inc(x,ComponentUnitFileLabel.Width+5);
|
inc(x,ComponentUnitFileLabel.Width+5);
|
||||||
|
|
||||||
|
w:=ComponentUnitFileEdit.Height;
|
||||||
with ComponentUnitFileEdit do
|
with ComponentUnitFileEdit do
|
||||||
SetBounds(x,y,Parent.ClientWidth-x-Height-5,Height);
|
SetBounds(x,y,Parent.ClientWidth-x-2-w-2-w-5,Height);
|
||||||
inc(x,ComponentUnitFileEdit.Width+2);
|
inc(x,ComponentUnitFileEdit.Width+2);
|
||||||
|
|
||||||
with ComponentUnitFileBrowseButton do
|
with ComponentUnitFileBrowseButton do
|
||||||
SetBounds(x,y,ComponentUnitFileEdit.Height,ComponentUnitFileEdit.Height);
|
SetBounds(x,y,w,w);
|
||||||
|
inc(x,w+2);
|
||||||
|
with ComponentUnitFileShortenButton do
|
||||||
|
SetBounds(x,y,w,w);
|
||||||
x:=5;
|
x:=5;
|
||||||
inc(y,ComponentUnitFileEdit.Height+5);
|
inc(y,ComponentUnitFileEdit.Height+5);
|
||||||
|
|
||||||
@ -1189,6 +1259,14 @@ begin
|
|||||||
OnClick:=@AddUnitFileBrowseButtonClick;
|
OnClick:=@AddUnitFileBrowseButtonClick;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
AddUnitFileShortenButton:=TButton.Create(Self);
|
||||||
|
with AddUnitFileShortenButton do begin
|
||||||
|
Name:='AddUnitFileShortenButton';
|
||||||
|
Parent:=AddUnitPage;
|
||||||
|
Caption:='<>';
|
||||||
|
OnClick:=@AddUnitFileShortenButtonClick;
|
||||||
|
end;
|
||||||
|
|
||||||
AddUnitSrcNameLabel:=TLabel.Create(Self);
|
AddUnitSrcNameLabel:=TLabel.Create(Self);
|
||||||
with AddUnitSrcNameLabel do begin
|
with AddUnitSrcNameLabel do begin
|
||||||
Name:='AddUnitSrcNameLabel';
|
Name:='AddUnitSrcNameLabel';
|
||||||
@ -1328,6 +1406,14 @@ begin
|
|||||||
OnClick:=@ComponentUnitFileBrowseButtonClick;
|
OnClick:=@ComponentUnitFileBrowseButtonClick;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
ComponentUnitFileShortenButton:=TButton.Create(Self);
|
||||||
|
with ComponentUnitFileShortenButton do begin
|
||||||
|
Name:='ComponentUnitFileShortenButton';
|
||||||
|
Parent:=NewComponentPage;
|
||||||
|
Caption:='<>';
|
||||||
|
OnClick:=@ComponentUnitFileShortenButtonClick;
|
||||||
|
end;
|
||||||
|
|
||||||
ComponentUnitNameLabel:=TLabel.Create(Self);
|
ComponentUnitNameLabel:=TLabel.Create(Self);
|
||||||
with ComponentUnitNameLabel do begin
|
with ComponentUnitNameLabel do begin
|
||||||
Name:='ComponentUnitNameLabel';
|
Name:='ComponentUnitNameLabel';
|
||||||
@ -1446,6 +1532,14 @@ begin
|
|||||||
OnClick:=@AddFileBrowseButtonClick;
|
OnClick:=@AddFileBrowseButtonClick;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
AddFileShortenButton:=TButton.Create(Self);
|
||||||
|
with AddFileShortenButton do begin
|
||||||
|
Name:='AddFileShortenButton';
|
||||||
|
Parent:=AddFilePage;
|
||||||
|
Caption:='<>';
|
||||||
|
OnClick:=@AddFileShortenButtonClick;
|
||||||
|
end;
|
||||||
|
|
||||||
AddFileTypeRadioGroup:=TRadioGroup.Create(Self);
|
AddFileTypeRadioGroup:=TRadioGroup.Create(Self);
|
||||||
with AddFileTypeRadioGroup do begin
|
with AddFileTypeRadioGroup do begin
|
||||||
Name:='AddFileTypeRadioGroup';
|
Name:='AddFileTypeRadioGroup';
|
||||||
@ -1503,6 +1597,14 @@ begin
|
|||||||
OnClick:=@FilesBrowseButtonClick;
|
OnClick:=@FilesBrowseButtonClick;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
FilesShortenButton:=TButton.Create(Self);
|
||||||
|
with FilesShortenButton do begin
|
||||||
|
Name:='FilesShortenButton';
|
||||||
|
Parent:=AddFilesPage;
|
||||||
|
Caption:=lisA2PSwitchPaths;
|
||||||
|
OnClick:=@FilesShortenButtonClick;
|
||||||
|
end;
|
||||||
|
|
||||||
FilesDeleteButton:=TButton.Create(Self);
|
FilesDeleteButton:=TButton.Create(Self);
|
||||||
with FilesDeleteButton do begin
|
with FilesDeleteButton do begin
|
||||||
Name:='FilesDeleteButton';
|
Name:='FilesDeleteButton';
|
||||||
@ -1640,6 +1742,18 @@ begin
|
|||||||
Result:=pftBinary;
|
Result:=pftBinary;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
function TAddToPackageDlg.SwitchRelativeAbsoluteFilename(const Filename: string
|
||||||
|
): string;
|
||||||
|
begin
|
||||||
|
Result:=Filename;
|
||||||
|
if (not LazPackage.HasDirectory)
|
||||||
|
or (not FilenameIsAbsolute(LazPackage.Directory)) then exit;
|
||||||
|
if FilenameIsAbsolute(Filename) then
|
||||||
|
Result:=TrimFilename(CreateRelativePath(Filename,LazPackage.Directory))
|
||||||
|
else
|
||||||
|
Result:=TrimFilename(CreateAbsolutePath(Filename,LazPackage.Directory));
|
||||||
|
end;
|
||||||
|
|
||||||
constructor TAddToPackageDlg.Create(TheOwner: TComponent);
|
constructor TAddToPackageDlg.Create(TheOwner: TComponent);
|
||||||
begin
|
begin
|
||||||
inherited Create(TheOwner);
|
inherited Create(TheOwner);
|
||||||
|
@ -159,12 +159,13 @@ type
|
|||||||
procedure SaveToXMLConfig(XMLConfig: TXMLConfig; const Path: string);
|
procedure SaveToXMLConfig(XMLConfig: TXMLConfig; const Path: string);
|
||||||
procedure ConsistencyCheck;
|
procedure ConsistencyCheck;
|
||||||
function IsVirtual: boolean;
|
function IsVirtual: boolean;
|
||||||
function GetShortFilename(RelativePaths: boolean): string;
|
function GetShortFilename(UseUp: boolean): string;
|
||||||
function ComponentCount: integer;
|
function ComponentCount: integer;
|
||||||
procedure AddPkgComponent(APkgComponent: TPkgComponent);
|
procedure AddPkgComponent(APkgComponent: TPkgComponent);
|
||||||
procedure RemovePkgComponent(APkgComponent: TPkgComponent);
|
procedure RemovePkgComponent(APkgComponent: TPkgComponent);
|
||||||
function GetResolvedFilename: string;
|
function GetResolvedFilename: string;
|
||||||
function HasRegisteredPlugins: boolean;
|
function HasRegisteredPlugins: boolean;
|
||||||
|
function MakeSense: boolean;
|
||||||
public
|
public
|
||||||
property Removed: boolean read FRemoved write SetRemoved;
|
property Removed: boolean read FRemoved write SetRemoved;
|
||||||
property Directory: string read FDirectory;
|
property Directory: string read FDirectory;
|
||||||
@ -461,6 +462,8 @@ type
|
|||||||
FFirstRequiredDependency: TPkgDependency;
|
FFirstRequiredDependency: TPkgDependency;
|
||||||
FFirstUsedByDependency: TPkgDependency;
|
FFirstUsedByDependency: TPkgDependency;
|
||||||
FFlags: TLazPackageFlags;
|
FFlags: TLazPackageFlags;
|
||||||
|
FHasDirectory: boolean;
|
||||||
|
FHasStaticDirectory: boolean;
|
||||||
FHoldPackageCount: integer;
|
FHoldPackageCount: integer;
|
||||||
FIconFile: string;
|
FIconFile: string;
|
||||||
FInstalled: TPackageInstallType;
|
FInstalled: TPackageInstallType;
|
||||||
@ -535,6 +538,7 @@ type
|
|||||||
// paths, define templates
|
// paths, define templates
|
||||||
function IsVirtual: boolean;
|
function IsVirtual: boolean;
|
||||||
function HasDirectory: boolean;
|
function HasDirectory: boolean;
|
||||||
|
function HasStaticDirectory: boolean;
|
||||||
function GetResolvedFilename: string;
|
function GetResolvedFilename: string;
|
||||||
function GetSourceDirs(WithPkgDir, WithoutOutputDir: boolean): string;
|
function GetSourceDirs(WithPkgDir, WithoutOutputDir: boolean): string;
|
||||||
procedure GetInheritedCompilerOptions(var OptionsList: TList);
|
procedure GetInheritedCompilerOptions(var OptionsList: TList);
|
||||||
@ -547,7 +551,7 @@ type
|
|||||||
function GetIncludePath(RelativeToBaseDir: boolean): string;
|
function GetIncludePath(RelativeToBaseDir: boolean): string;
|
||||||
function NeedsDefineTemplates: boolean;
|
function NeedsDefineTemplates: boolean;
|
||||||
// files
|
// files
|
||||||
procedure ShortenFilename(var ExpandedFilename: string);
|
procedure ShortenFilename(var ExpandedFilename: string; UseUp: boolean);
|
||||||
procedure LongenFilename(var AFilename: string);
|
procedure LongenFilename(var AFilename: string);
|
||||||
function FindPkgFile(const AFilename: string;
|
function FindPkgFile(const AFilename: string;
|
||||||
ResolveLinks, IgnoreRemoved: boolean): TPkgFile;
|
ResolveLinks, IgnoreRemoved: boolean): TPkgFile;
|
||||||
@ -1112,6 +1116,11 @@ begin
|
|||||||
Result:=ComponentCount>0;
|
Result:=ComponentCount>0;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
function TPkgFile.MakeSense: boolean;
|
||||||
|
begin
|
||||||
|
Result:=Filename<>'';
|
||||||
|
end;
|
||||||
|
|
||||||
constructor TPkgFile.Create(ThePackage: TLazPackage);
|
constructor TPkgFile.Create(ThePackage: TLazPackage);
|
||||||
begin
|
begin
|
||||||
Clear;
|
Clear;
|
||||||
@ -1155,7 +1164,7 @@ var
|
|||||||
TmpFilename: String;
|
TmpFilename: String;
|
||||||
begin
|
begin
|
||||||
TmpFilename:=Filename;
|
TmpFilename:=Filename;
|
||||||
FPackage.ShortenFilename(TmpFilename);
|
FPackage.ShortenFilename(TmpFilename,true);
|
||||||
XMLConfig.SetDeleteValue(Path+'Filename/Value',TmpFilename,'');
|
XMLConfig.SetDeleteValue(Path+'Filename/Value',TmpFilename,'');
|
||||||
XMLConfig.SetDeleteValue(Path+'HasRegisterProc/Value',HasRegisterProc,
|
XMLConfig.SetDeleteValue(Path+'HasRegisterProc/Value',HasRegisterProc,
|
||||||
false);
|
false);
|
||||||
@ -1177,13 +1186,10 @@ begin
|
|||||||
Result:=FilenameIsAbsolute(FFilename);
|
Result:=FilenameIsAbsolute(FFilename);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function TPkgFile.GetShortFilename(RelativePaths: boolean): string;
|
function TPkgFile.GetShortFilename(UseUp: boolean): string;
|
||||||
begin
|
begin
|
||||||
Result:=FFilename;
|
Result:=FFilename;
|
||||||
LazPackage.ShortenFilename(Result);
|
LazPackage.ShortenFilename(Result,UseUp);
|
||||||
if RelativePaths and FilenameIsAbsolute(Result)
|
|
||||||
and LazPackage.HasDirectory then
|
|
||||||
Result:=CreateRelativePath(Result,LazPackage.Directory);
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function TPkgFile.ComponentCount: integer;
|
function TPkgFile.ComponentCount: integer;
|
||||||
@ -1729,6 +1735,8 @@ begin
|
|||||||
FDirectory:=FFilename
|
FDirectory:=FFilename
|
||||||
else
|
else
|
||||||
FDirectory:=ExtractFilePath(FFilename);
|
FDirectory:=ExtractFilePath(FFilename);
|
||||||
|
FHasDirectory:=(FDirectory<>'') and (FDirectory[length(FDirectory)]=PathDelim);
|
||||||
|
FHasStaticDirectory:=FHasDirectory and FilenameIsAbsolute(FDirectory);
|
||||||
FUsageOptions.BaseDirectory:=FDirectory;
|
FUsageOptions.BaseDirectory:=FDirectory;
|
||||||
FCompilerOptions.BaseDirectory:=FDirectory;
|
FCompilerOptions.BaseDirectory:=FDirectory;
|
||||||
Modified:=true;
|
Modified:=true;
|
||||||
@ -1887,6 +1895,8 @@ begin
|
|||||||
FCompilerOptions.Clear;
|
FCompilerOptions.Clear;
|
||||||
FDescription:='';
|
FDescription:='';
|
||||||
FDirectory:='';
|
FDirectory:='';
|
||||||
|
FHasDirectory:=false;
|
||||||
|
FHasStaticDirectory:=false;
|
||||||
FVersion.Clear;
|
FVersion.Clear;
|
||||||
FFilename:='';
|
FFilename:='';
|
||||||
for i:=FRemovedFiles.Count-1 downto 0 do RemovedFiles[i].Free;
|
for i:=FRemovedFiles.Count-1 downto 0 do RemovedFiles[i].Free;
|
||||||
@ -1970,7 +1980,10 @@ var
|
|||||||
PkgFile:=TPkgFile.Create(Self);
|
PkgFile:=TPkgFile.Create(Self);
|
||||||
PkgFile.LoadFromXMLConfig(XMLConfig,ThePath+'Item'+IntToStr(i+1)+'/',
|
PkgFile.LoadFromXMLConfig(XMLConfig,ThePath+'Item'+IntToStr(i+1)+'/',
|
||||||
FileVersion,PathDelimChanged);
|
FileVersion,PathDelimChanged);
|
||||||
List.Add(PkgFile);
|
if PkgFile.MakeSense then
|
||||||
|
List.Add(PkgFile)
|
||||||
|
else
|
||||||
|
PkgFile.Free;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -2073,7 +2086,12 @@ end;
|
|||||||
|
|
||||||
function TLazPackage.HasDirectory: boolean;
|
function TLazPackage.HasDirectory: boolean;
|
||||||
begin
|
begin
|
||||||
Result:=(FDirectory<>'') and (FDirectory[length(FDirectory)]=PathDelim);
|
Result:=FHasDirectory;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TLazPackage.HasStaticDirectory: boolean;
|
||||||
|
begin
|
||||||
|
Result:=FHasStaticDirectory;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TLazPackage.CheckInnerDependencies;
|
procedure TLazPackage.CheckInnerDependencies;
|
||||||
@ -2085,21 +2103,25 @@ function TLazPackage.MakeSense: boolean;
|
|||||||
begin
|
begin
|
||||||
Result:=false;
|
Result:=false;
|
||||||
if (Name='') or (not IsValidIdent(Name)) then exit;
|
if (Name='') or (not IsValidIdent(Name)) then exit;
|
||||||
|
|
||||||
Result:=true;
|
Result:=true;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TLazPackage.ShortenFilename(var ExpandedFilename: string);
|
procedure TLazPackage.ShortenFilename(var ExpandedFilename: string;
|
||||||
|
UseUp: boolean);
|
||||||
var
|
var
|
||||||
PkgDir: String;
|
PkgDir: String;
|
||||||
CurPath: String;
|
CurPath: String;
|
||||||
begin
|
begin
|
||||||
if not HasDirectory then exit;
|
if (not HasDirectory) then exit;
|
||||||
PkgDir:=FDirectory;
|
PkgDir:=FDirectory;
|
||||||
CurPath:=copy(ExtractFilePath(ExpandedFilename),1,length(PkgDir));
|
if HasStaticDirectory and UseUp then
|
||||||
if CompareFilenames(PkgDir,CurPath)=0 then begin
|
ExpandedFilename:=CreateRelativePath(ExpandedFilename,PkgDir)
|
||||||
ExpandedFilename:=copy(ExpandedFilename,length(CurPath)+1,
|
else begin
|
||||||
length(ExpandedFilename)-length(CurPath));
|
CurPath:=copy(ExtractFilePath(ExpandedFilename),1,length(PkgDir));
|
||||||
|
if CompareFilenames(PkgDir,CurPath)=0 then begin
|
||||||
|
ExpandedFilename:=copy(ExpandedFilename,length(CurPath)+1,
|
||||||
|
length(ExpandedFilename)-length(CurPath));
|
||||||
|
end;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
@ -1707,18 +1707,18 @@ begin
|
|||||||
// check if directory is already in the unit path of the package
|
// check if directory is already in the unit path of the package
|
||||||
NewDirectory:=ExtractFilePath(AnUnitFilename);
|
NewDirectory:=ExtractFilePath(AnUnitFilename);
|
||||||
ShortDirectory:=NewDirectory;
|
ShortDirectory:=NewDirectory;
|
||||||
LazPackage.ShortenFilename(ShortDirectory);
|
LazPackage.ShortenFilename(ShortDirectory,false);
|
||||||
if ShortDirectory='' then exit;
|
if ShortDirectory='' then exit;
|
||||||
UnitPath:=LazPackage.GetUnitPath(false);
|
UnitPath:=LazPackage.GetUnitPath(true);
|
||||||
UnitPathPos:=SearchDirectoryInSearchPath(UnitPath,NewDirectory,1);
|
UnitPathPos:=SearchDirectoryInSearchPath(UnitPath,ShortDirectory,1);
|
||||||
IncPathPos:=1;
|
IncPathPos:=1;
|
||||||
if AnIncludeFile<>'' then begin
|
if AnIncludeFile<>'' then begin
|
||||||
NewIncDirectory:=ExtractFilePath(AnIncludeFile);
|
NewIncDirectory:=ExtractFilePath(AnIncludeFile);
|
||||||
ShortIncDirectory:=NewIncDirectory;
|
ShortIncDirectory:=NewIncDirectory;
|
||||||
LazPackage.ShortenFilename(ShortIncDirectory);
|
LazPackage.ShortenFilename(ShortIncDirectory,false);
|
||||||
if ShortIncDirectory<>'' then begin
|
if ShortIncDirectory<>'' then begin
|
||||||
IncPath:=LazPackage.GetIncludePath(false);
|
IncPath:=LazPackage.GetIncludePath(true);
|
||||||
IncPathPos:=SearchDirectoryInSearchPath(IncPath,NewIncDirectory,1);
|
IncPathPos:=SearchDirectoryInSearchPath(IncPath,ShortIncDirectory,1);
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
if UnitPathPos<1 then begin
|
if UnitPathPos<1 then begin
|
||||||
|
Loading…
Reference in New Issue
Block a user