mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-17 15:59:13 +02:00
IDE: fpdoc link editor: other packages
git-svn-id: trunk@21056 -
This commit is contained in:
parent
6556dda2b3
commit
ca8e1d861d
@ -76,6 +76,7 @@ object FPDocLinkEditorDlg: TFPDocLinkEditorDlg
|
|||||||
BorderSpacing.Around = 6
|
BorderSpacing.Around = 6
|
||||||
OnChange = LinkEditChange
|
OnChange = LinkEditChange
|
||||||
OnKeyDown = LinkEditKeyDown
|
OnKeyDown = LinkEditKeyDown
|
||||||
|
OnUTF8KeyPress = LinkEditUTF8KeyPress
|
||||||
ParentShowHint = False
|
ParentShowHint = False
|
||||||
ShowHint = True
|
ShowHint = True
|
||||||
TabOrder = 1
|
TabOrder = 1
|
||||||
|
@ -27,11 +27,12 @@ LazarusResources.Add('TFPDocLinkEditorDlg','FORMDATA',[
|
|||||||
+'om'#23'AnchorSideRight.Control'#7#5'Owner'#20'AnchorSideRight.Side'#7#9'asr'
|
+'om'#23'AnchorSideRight.Control'#7#5'Owner'#20'AnchorSideRight.Side'#7#9'asr'
|
||||||
+'Bottom'#4'Left'#2#6#6'Height'#2#27#3'Top'#2']'#5'Width'#3#140#1#7'Anchors'
|
+'Bottom'#4'Left'#2#6#6'Height'#2#27#3'Top'#2']'#5'Width'#3#140#1#7'Anchors'
|
||||||
+#11#5'akTop'#6'akLeft'#7'akRight'#0#20'BorderSpacing.Around'#2#6#8'OnChange'
|
+#11#5'akTop'#6'akLeft'#7'akRight'#0#20'BorderSpacing.Around'#2#6#8'OnChange'
|
||||||
+#7#14'LinkEditChange'#9'OnKeyDown'#7#15'LinkEditKeyDown'#14'ParentShowHint'#8
|
+#7#14'LinkEditChange'#9'OnKeyDown'#7#15'LinkEditKeyDown'#14'OnUTF8KeyPress'#7
|
||||||
+#8'ShowHint'#9#8'TabOrder'#2#1#4'Text'#6#8'LinkEdit'#0#0#5'TEdit'#9'TitleEdi'
|
+#20'LinkEditUTF8KeyPress'#14'ParentShowHint'#8#8'ShowHint'#9#8'TabOrder'#2#1
|
||||||
+'t'#21'AnchorSideTop.Control'#7#10'TitleLabel'#18'AnchorSideTop.Side'#7#9'as'
|
+#4'Text'#6#8'LinkEdit'#0#0#5'TEdit'#9'TitleEdit'#21'AnchorSideTop.Control'#7
|
||||||
+'rBottom'#23'AnchorSideRight.Control'#7#5'Owner'#20'AnchorSideRight.Side'#7#9
|
+#10'TitleLabel'#18'AnchorSideTop.Side'#7#9'asrBottom'#23'AnchorSideRight.Con'
|
||||||
+'asrBottom'#4'Left'#2#6#6'Height'#2#27#3'Top'#2#30#5'Width'#3#140#1#7'Anchor'
|
+'trol'#7#5'Owner'#20'AnchorSideRight.Side'#7#9'asrBottom'#4'Left'#2#6#6'Heig'
|
||||||
+'s'#11#5'akTop'#6'akLeft'#7'akRight'#0#17'BorderSpacing.Top'#2#6#19'BorderSp'
|
+'ht'#2#27#3'Top'#2#30#5'Width'#3#140#1#7'Anchors'#11#5'akTop'#6'akLeft'#7'ak'
|
||||||
+'acing.Right'#2#6#8'TabOrder'#2#2#4'Text'#6#9'TitleEdit'#0#0#0
|
+'Right'#0#17'BorderSpacing.Top'#2#6#19'BorderSpacing.Right'#2#6#8'TabOrder'#2
|
||||||
|
+#2#4'Text'#6#9'TitleEdit'#0#0#0
|
||||||
]);
|
]);
|
||||||
|
@ -69,8 +69,7 @@ type
|
|||||||
destructor Destroy; override;
|
destructor Destroy; override;
|
||||||
procedure Clear;
|
procedure Clear;
|
||||||
procedure AddPackage(Pkg: TLazPackage);
|
procedure AddPackage(Pkg: TLazPackage);
|
||||||
procedure AddProjectFile(AFile: TLazProjectFile);
|
procedure Add(Identifier, Description: string);
|
||||||
procedure AddPackageFile(AFile: TPkgFile);
|
|
||||||
procedure AddIdentifier(Identifier: string);
|
procedure AddIdentifier(Identifier: string);
|
||||||
procedure Draw(Canvas: TCanvas; Width, Height: integer);
|
procedure Draw(Canvas: TCanvas; Width, Height: integer);
|
||||||
property Count: integer read GetCount;
|
property Count: integer read GetCount;
|
||||||
@ -101,6 +100,7 @@ type
|
|||||||
procedure LinkEditChange(Sender: TObject);
|
procedure LinkEditChange(Sender: TObject);
|
||||||
procedure LinkEditKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState
|
procedure LinkEditKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState
|
||||||
);
|
);
|
||||||
|
procedure LinkEditUTF8KeyPress(Sender: TObject; var UTF8Key: TUTF8Char);
|
||||||
private
|
private
|
||||||
FStartFPDocFile: TLazFPDocFile;
|
FStartFPDocFile: TLazFPDocFile;
|
||||||
fItems: TFPDocLinkCompletionList;
|
fItems: TFPDocLinkCompletionList;
|
||||||
@ -223,8 +223,10 @@ begin
|
|||||||
CompletionBox.Invalidate;
|
CompletionBox.Invalidate;
|
||||||
end;
|
end;
|
||||||
VK_RETURN:
|
VK_RETURN:
|
||||||
if (FItems.Selected>=0) and (FItems.Selected<fItems.Count) then
|
if (FItems.Selected>=0) and (FItems.Selected<fItems.Count) then begin
|
||||||
Link:=FItems.Items[fItems.Selected].Text;
|
Link:=FItems.Items[fItems.Selected].Text;
|
||||||
|
LinkEdit.SelStart:=length(LinkEdit.Text);
|
||||||
|
end;
|
||||||
else
|
else
|
||||||
Handled:=false;
|
Handled:=false;
|
||||||
end;
|
end;
|
||||||
@ -232,6 +234,18 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TFPDocLinkEditorDlg.LinkEditUTF8KeyPress(Sender: TObject;
|
||||||
|
var UTF8Key: TUTF8Char);
|
||||||
|
begin
|
||||||
|
if UTF8Key='.' then begin
|
||||||
|
if (FItems.Selected>=0) and (FItems.Selected<fItems.Count) then begin
|
||||||
|
Link:=FItems.Items[fItems.Selected].Text+'.';
|
||||||
|
LinkEdit.SelStart:=length(LinkEdit.Text);
|
||||||
|
end;
|
||||||
|
UTF8Key:='';
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
procedure TFPDocLinkEditorDlg.SetSourceFilename(const AValue: string);
|
procedure TFPDocLinkEditorDlg.SetSourceFilename(const AValue: string);
|
||||||
var
|
var
|
||||||
Owners: TFPList;
|
Owners: TFPList;
|
||||||
@ -323,6 +337,7 @@ var
|
|||||||
i: Integer;
|
i: Integer;
|
||||||
Filename: String;
|
Filename: String;
|
||||||
ProjFile: TLazProjectFile;
|
ProjFile: TLazProjectFile;
|
||||||
|
Identifier: String;
|
||||||
begin
|
begin
|
||||||
for i:=0 to AProject.FileCount-1 do begin
|
for i:=0 to AProject.FileCount-1 do begin
|
||||||
ProjFile:=AProject.Files[i];
|
ProjFile:=AProject.Files[i];
|
||||||
@ -331,7 +346,12 @@ begin
|
|||||||
if FilenameIsPascalUnit(Filename) then begin
|
if FilenameIsPascalUnit(Filename) then begin
|
||||||
Filename:=ExtractFileNameOnly(Filename);
|
Filename:=ExtractFileNameOnly(Filename);
|
||||||
if (CompareFilenames(Prefix,copy(Filename,1,length(Prefix)))=0) then
|
if (CompareFilenames(Prefix,copy(Filename,1,length(Prefix)))=0) then
|
||||||
fItems.AddProjectFile(ProjFile);
|
begin
|
||||||
|
Identifier:=ExtractFileNameOnly(ProjFile.Filename);
|
||||||
|
if AProject<>StartModuleOwner then
|
||||||
|
Identifier:='#'+ExtractFileNameOnly(AProject.ProjectInfoFile)+'.'+Identifier;
|
||||||
|
fItems.Add(Identifier,'project unit');
|
||||||
|
end;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
@ -343,6 +363,7 @@ var
|
|||||||
i: Integer;
|
i: Integer;
|
||||||
PkgFile: TPkgFile;
|
PkgFile: TPkgFile;
|
||||||
Filename: String;
|
Filename: String;
|
||||||
|
Identifier: String;
|
||||||
begin
|
begin
|
||||||
for i:=0 to APackage.FileCount-1 do begin
|
for i:=0 to APackage.FileCount-1 do begin
|
||||||
PkgFile:=APackage.Files[i];
|
PkgFile:=APackage.Files[i];
|
||||||
@ -351,7 +372,12 @@ begin
|
|||||||
if FilenameIsPascalUnit(Filename) then begin
|
if FilenameIsPascalUnit(Filename) then begin
|
||||||
Filename:=ExtractFileNameOnly(Filename);
|
Filename:=ExtractFileNameOnly(Filename);
|
||||||
if (CompareFilenames(Prefix,copy(Filename,1,length(Prefix)))=0) then
|
if (CompareFilenames(Prefix,copy(Filename,1,length(Prefix)))=0) then
|
||||||
fItems.AddPackageFile(PkgFile);
|
begin
|
||||||
|
Identifier:=ExtractFileNameOnly(Filename);
|
||||||
|
if APackage<>StartModuleOwner then
|
||||||
|
Identifier:='#'+APackage.Name+'.'+Identifier;
|
||||||
|
fItems.Add(Identifier,'package unit');
|
||||||
|
end;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
@ -540,16 +566,9 @@ begin
|
|||||||
FItems.Add(TFPDocLinkCompletionItem.Create('#'+Pkg.Name,'package '+Pkg.IDAsString));
|
FItems.Add(TFPDocLinkCompletionItem.Create('#'+Pkg.Name,'package '+Pkg.IDAsString));
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TFPDocLinkCompletionList.AddProjectFile(AFile: TLazProjectFile);
|
procedure TFPDocLinkCompletionList.Add(Identifier, Description: string);
|
||||||
begin
|
begin
|
||||||
FItems.Add(TFPDocLinkCompletionItem.Create(
|
FItems.Add(TFPDocLinkCompletionItem.Create(Identifier,Description));
|
||||||
ExtractFileNameOnly(AFile.Filename),'project unit'));
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TFPDocLinkCompletionList.AddPackageFile(AFile: TPkgFile);
|
|
||||||
begin
|
|
||||||
FItems.Add(TFPDocLinkCompletionItem.Create(
|
|
||||||
ExtractFileNameOnly(AFile.Filename),'package unit'));
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TFPDocLinkCompletionList.AddIdentifier(Identifier: string);
|
procedure TFPDocLinkCompletionList.AddIdentifier(Identifier: string);
|
||||||
|
Loading…
Reference in New Issue
Block a user