mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-09-30 03:50:43 +02:00
IDE: Use DirectoryEdit in Project FPDoc options. Issue #28198, patch from Alexey Torgashin
git-svn-id: trunk@49202 -
This commit is contained in:
parent
b49ef96e4c
commit
a1067c7d07
@ -13,9 +13,9 @@ object ProjectFPDocOptionsFrame: TProjectFPDocOptionsFrame
|
|||||||
AnchorSideTop.Control = FPDocPackageNameEdit
|
AnchorSideTop.Control = FPDocPackageNameEdit
|
||||||
AnchorSideTop.Side = asrCenter
|
AnchorSideTop.Side = asrCenter
|
||||||
Left = 6
|
Left = 6
|
||||||
Height = 14
|
Height = 15
|
||||||
Top = 9
|
Top = 10
|
||||||
Width = 123
|
Width = 138
|
||||||
BorderSpacing.Around = 6
|
BorderSpacing.Around = 6
|
||||||
Caption = 'FPDocPackageNameLabel'
|
Caption = 'FPDocPackageNameLabel'
|
||||||
ParentColor = False
|
ParentColor = False
|
||||||
@ -24,17 +24,14 @@ object ProjectFPDocOptionsFrame: TProjectFPDocOptionsFrame
|
|||||||
AnchorSideLeft.Control = FPDocPackageNameLabel
|
AnchorSideLeft.Control = FPDocPackageNameLabel
|
||||||
AnchorSideLeft.Side = asrBottom
|
AnchorSideLeft.Side = asrBottom
|
||||||
AnchorSideTop.Control = Owner
|
AnchorSideTop.Control = Owner
|
||||||
Left = 135
|
Left = 150
|
||||||
Height = 21
|
Height = 23
|
||||||
Top = 6
|
Top = 6
|
||||||
Width = 120
|
Width = 120
|
||||||
BorderSpacing.Around = 6
|
BorderSpacing.Around = 6
|
||||||
OnEnter = FPDocPackageNameEditEnter
|
|
||||||
OnExit = FPDocPackageNameEditExit
|
|
||||||
ParentShowHint = False
|
ParentShowHint = False
|
||||||
ShowHint = True
|
ShowHint = True
|
||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
Text = 'FPDocPackageNameEdit'
|
|
||||||
end
|
end
|
||||||
object SearchPathsGroupBox: TGroupBox
|
object SearchPathsGroupBox: TGroupBox
|
||||||
AnchorSideLeft.Control = Owner
|
AnchorSideLeft.Control = Owner
|
||||||
@ -45,12 +42,12 @@ object ProjectFPDocOptionsFrame: TProjectFPDocOptionsFrame
|
|||||||
AnchorSideBottom.Control = Owner
|
AnchorSideBottom.Control = Owner
|
||||||
AnchorSideBottom.Side = asrBottom
|
AnchorSideBottom.Side = asrBottom
|
||||||
Left = 0
|
Left = 0
|
||||||
Height = 236
|
Height = 234
|
||||||
Top = 33
|
Top = 35
|
||||||
Width = 478
|
Width = 478
|
||||||
Anchors = [akTop, akLeft, akRight, akBottom]
|
Anchors = [akTop, akLeft, akRight, akBottom]
|
||||||
Caption = 'SearchPathsGroupBox'
|
Caption = 'SearchPathsGroupBox'
|
||||||
ClientHeight = 218
|
ClientHeight = 214
|
||||||
ClientWidth = 474
|
ClientWidth = 474
|
||||||
TabOrder = 1
|
TabOrder = 1
|
||||||
object PathsListBox: TListBox
|
object PathsListBox: TListBox
|
||||||
@ -65,78 +62,56 @@ object ProjectFPDocOptionsFrame: TProjectFPDocOptionsFrame
|
|||||||
ScrollWidth = 472
|
ScrollWidth = 472
|
||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
end
|
end
|
||||||
object PathEdit: TEdit
|
|
||||||
AnchorSideLeft.Control = SearchPathsGroupBox
|
|
||||||
AnchorSideTop.Control = PathsListBox
|
|
||||||
AnchorSideTop.Side = asrBottom
|
|
||||||
AnchorSideRight.Control = BrowseButton
|
|
||||||
Left = 6
|
|
||||||
Height = 21
|
|
||||||
Top = 120
|
|
||||||
Width = 438
|
|
||||||
Anchors = [akTop, akLeft, akRight]
|
|
||||||
BorderSpacing.Left = 6
|
|
||||||
BorderSpacing.Top = 6
|
|
||||||
BorderSpacing.Bottom = 6
|
|
||||||
OnChange = PathEditChange
|
|
||||||
TabOrder = 1
|
|
||||||
Text = 'PathEdit'
|
|
||||||
end
|
|
||||||
object AddPathButton: TBitBtn
|
object AddPathButton: TBitBtn
|
||||||
AnchorSideLeft.Control = SearchPathsGroupBox
|
AnchorSideLeft.Control = SearchPathsGroupBox
|
||||||
AnchorSideTop.Control = PathEdit
|
|
||||||
AnchorSideTop.Side = asrBottom
|
AnchorSideTop.Side = asrBottom
|
||||||
Left = 6
|
Left = 6
|
||||||
Height = 23
|
Height = 25
|
||||||
Top = 147
|
Top = 147
|
||||||
Width = 99
|
Width = 108
|
||||||
AutoSize = True
|
AutoSize = True
|
||||||
BorderSpacing.Left = 6
|
BorderSpacing.Left = 6
|
||||||
BorderSpacing.Top = 6
|
BorderSpacing.Top = 6
|
||||||
Caption = 'AddPathButton'
|
Caption = 'AddPathButton'
|
||||||
Enabled = False
|
Enabled = False
|
||||||
NumGlyphs = 0
|
|
||||||
OnClick = AddPathButtonClick
|
OnClick = AddPathButtonClick
|
||||||
TabOrder = 2
|
TabOrder = 2
|
||||||
end
|
end
|
||||||
object DeletePathButton: TBitBtn
|
object DeletePathButton: TBitBtn
|
||||||
AnchorSideLeft.Control = AddPathButton
|
AnchorSideLeft.Control = AddPathButton
|
||||||
AnchorSideLeft.Side = asrBottom
|
AnchorSideLeft.Side = asrBottom
|
||||||
AnchorSideTop.Control = PathEdit
|
|
||||||
AnchorSideTop.Side = asrBottom
|
AnchorSideTop.Side = asrBottom
|
||||||
Left = 111
|
Left = 120
|
||||||
Height = 23
|
Height = 25
|
||||||
Top = 147
|
Top = 147
|
||||||
Width = 111
|
Width = 119
|
||||||
AutoSize = True
|
AutoSize = True
|
||||||
BorderSpacing.Around = 6
|
BorderSpacing.Around = 6
|
||||||
Caption = 'DeletePathButton'
|
Caption = 'DeletePathButton'
|
||||||
Enabled = False
|
Enabled = False
|
||||||
NumGlyphs = 0
|
|
||||||
OnClick = DeletePathButtonClick
|
OnClick = DeletePathButtonClick
|
||||||
TabOrder = 3
|
TabOrder = 3
|
||||||
end
|
end
|
||||||
object BrowseButton: TButton
|
object PathEdit: TDirectoryEdit
|
||||||
AnchorSideLeft.Control = PathEdit
|
AnchorSideLeft.Control = SearchPathsGroupBox
|
||||||
AnchorSideLeft.Side = asrBottom
|
AnchorSideTop.Control = PathsListBox
|
||||||
AnchorSideTop.Control = PathEdit
|
AnchorSideTop.Side = asrBottom
|
||||||
AnchorSideRight.Control = SearchPathsGroupBox
|
AnchorSideRight.Control = SearchPathsGroupBox
|
||||||
AnchorSideRight.Side = asrBottom
|
AnchorSideRight.Side = asrBottom
|
||||||
AnchorSideBottom.Control = PathEdit
|
Left = 6
|
||||||
AnchorSideBottom.Side = asrBottom
|
Height = 23
|
||||||
Left = 444
|
|
||||||
Height = 21
|
|
||||||
Top = 120
|
Top = 120
|
||||||
Width = 24
|
Width = 462
|
||||||
Anchors = [akTop, akRight, akBottom]
|
Directory = 'PathEdit'
|
||||||
BorderSpacing.Right = 6
|
ShowHidden = False
|
||||||
Caption = '...'
|
ButtonWidth = 45
|
||||||
OnClick = BrowseButtonClick
|
NumGlyphs = 1
|
||||||
TabOrder = 4
|
Anchors = [akTop, akLeft, akRight]
|
||||||
|
BorderSpacing.Around = 6
|
||||||
|
MaxLength = 0
|
||||||
|
TabOrder = 1
|
||||||
|
OnChange = PathEditChange
|
||||||
|
Text = 'PathEdit'
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
object SelectDirectoryDialog: TSelectDirectoryDialog
|
|
||||||
FilterIndex = 0
|
|
||||||
left = 370
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
@ -5,8 +5,8 @@ unit project_lazdoc_options;
|
|||||||
interface
|
interface
|
||||||
|
|
||||||
uses
|
uses
|
||||||
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs,
|
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls,
|
||||||
StdCtrls, Buttons, Project, IDEOptionsIntf, LazarusIDEStrConsts, IDEProcs,
|
Buttons, EditBtn, Project, IDEOptionsIntf, LazarusIDEStrConsts, IDEProcs,
|
||||||
CodeHelp;
|
CodeHelp;
|
||||||
|
|
||||||
type
|
type
|
||||||
@ -15,19 +15,14 @@ type
|
|||||||
|
|
||||||
TProjectFPDocOptionsFrame = class(TAbstractIDEOptionsEditor)
|
TProjectFPDocOptionsFrame = class(TAbstractIDEOptionsEditor)
|
||||||
AddPathButton: TBitBtn;
|
AddPathButton: TBitBtn;
|
||||||
BrowseButton: TButton;
|
|
||||||
DeletePathButton: TBitBtn;
|
DeletePathButton: TBitBtn;
|
||||||
FPDocPackageNameEdit: TEdit;
|
FPDocPackageNameEdit: TEdit;
|
||||||
FPDocPackageNameLabel: TLabel;
|
FPDocPackageNameLabel: TLabel;
|
||||||
|
PathEdit: TDirectoryEdit;
|
||||||
PathsListBox: TListBox;
|
PathsListBox: TListBox;
|
||||||
PathEdit: TEdit;
|
|
||||||
SearchPathsGroupBox: TGroupBox;
|
SearchPathsGroupBox: TGroupBox;
|
||||||
SelectDirectoryDialog: TSelectDirectoryDialog;
|
|
||||||
procedure AddPathButtonClick(Sender: TObject);
|
procedure AddPathButtonClick(Sender: TObject);
|
||||||
procedure BrowseButtonClick(Sender: TObject);
|
|
||||||
procedure DeletePathButtonClick(Sender: TObject);
|
procedure DeletePathButtonClick(Sender: TObject);
|
||||||
procedure FPDocPackageNameEditEnter(Sender: TObject);
|
|
||||||
procedure FPDocPackageNameEditExit(Sender: TObject);
|
|
||||||
procedure PathsListBoxSelectionChange(Sender: TObject; {%H-}User: boolean);
|
procedure PathsListBoxSelectionChange(Sender: TObject; {%H-}User: boolean);
|
||||||
procedure PathEditChange(Sender: TObject);
|
procedure PathEditChange(Sender: TObject);
|
||||||
private
|
private
|
||||||
@ -64,12 +59,6 @@ begin
|
|||||||
PathEdit.Clear;
|
PathEdit.Clear;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TProjectFPDocOptionsFrame.BrowseButtonClick(Sender: TObject);
|
|
||||||
begin
|
|
||||||
if SelectDirectoryDialog.Execute then
|
|
||||||
PathEdit.Text := SelectDirectoryDialog.FileName;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TProjectFPDocOptionsFrame.AddPathButtonClick(Sender: TObject);
|
procedure TProjectFPDocOptionsFrame.AddPathButtonClick(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
if PathEdit.Text <> '' then begin
|
if PathEdit.Text <> '' then begin
|
||||||
@ -86,20 +75,6 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TProjectFPDocOptionsFrame.FPDocPackageNameEditEnter(Sender: TObject);
|
|
||||||
begin
|
|
||||||
if FPDocPackageNameEdit.Text=lisDefaultPlaceholder then
|
|
||||||
FPDocPackageNameEdit.Text:='';
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TProjectFPDocOptionsFrame.FPDocPackageNameEditExit(Sender: TObject);
|
|
||||||
begin
|
|
||||||
if GetFPDocPkgNameEditValue='' then
|
|
||||||
FPDocPackageNameEdit.Text:=lisDefaultPlaceholder
|
|
||||||
else
|
|
||||||
FPDocPackageNameEdit.Text:=GetFPDocPkgNameEditValue;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TProjectFPDocOptionsFrame.PathsListBoxSelectionChange(Sender: TObject; User: boolean);
|
procedure TProjectFPDocOptionsFrame.PathsListBoxSelectionChange(Sender: TObject; User: boolean);
|
||||||
begin
|
begin
|
||||||
DeletePathButton.Enabled:=(Sender as TListBox).ItemIndex <> -1;
|
DeletePathButton.Enabled:=(Sender as TListBox).ItemIndex <> -1;
|
||||||
@ -107,14 +82,11 @@ end;
|
|||||||
|
|
||||||
procedure TProjectFPDocOptionsFrame.PathEditChange(Sender: TObject);
|
procedure TProjectFPDocOptionsFrame.PathEditChange(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
AddPathButton.Enabled:=(Sender as TEdit).Text <> '';
|
AddPathButton.Enabled:=PathEdit.Text<>'';
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function TProjectFPDocOptionsFrame.GetFPDocPkgNameEditValue: string;
|
function TProjectFPDocOptionsFrame.GetFPDocPkgNameEditValue: string;
|
||||||
begin
|
begin
|
||||||
if FPDocPackageNameEdit.Text=lisDefaultPlaceholder then
|
|
||||||
Result:=''
|
|
||||||
else
|
|
||||||
Result:=MakeValidFPDocPackageName(FPDocPackageNameEdit.Text);
|
Result:=MakeValidFPDocPackageName(FPDocPackageNameEdit.Text);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -122,9 +94,7 @@ procedure TProjectFPDocOptionsFrame.ReadSettings(AOptions: TAbstractIDEOptions);
|
|||||||
begin
|
begin
|
||||||
with (AOptions as TProjectIDEOptions).Project do begin
|
with (AOptions as TProjectIDEOptions).Project do begin
|
||||||
SplitString(FPDocPaths, ';', PathsListBox.Items, True);
|
SplitString(FPDocPaths, ';', PathsListBox.Items, True);
|
||||||
if FPDocPackageName='' then
|
FPDocPackageNameEdit.TextHint:=lisDefaultPlaceholder;
|
||||||
FPDocPackageNameEdit.Text:=lisDefaultPlaceholder
|
|
||||||
else
|
|
||||||
FPDocPackageNameEdit.Text:=FPDocPackageName;
|
FPDocPackageNameEdit.Text:=FPDocPackageName;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
Loading…
Reference in New Issue
Block a user