mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-06-03 08:58:15 +02:00
IDE: Improve 'Build Macro' toolbar layout and fix copying the description field. Issue #19927, patch from Samuel Herzog
git-svn-id: trunk@33332 -
This commit is contained in:
parent
667e54c77f
commit
822a4db073
@ -5,8 +5,8 @@ inherited CompOptBuildMacrosFrame: TCompOptBuildMacrosFrame
|
||||
ClientWidth = 514
|
||||
TabOrder = 0
|
||||
Visible = False
|
||||
DesignLeft = 308
|
||||
DesignTop = 268
|
||||
DesignLeft = 304
|
||||
DesignTop = 213
|
||||
object MacrosGroupBox: TGroupBox[0]
|
||||
Left = 0
|
||||
Height = 243
|
||||
@ -14,8 +14,8 @@ inherited CompOptBuildMacrosFrame: TCompOptBuildMacrosFrame
|
||||
Width = 514
|
||||
Align = alTop
|
||||
Caption = 'MacrosGroupBox'
|
||||
ClientHeight = 221
|
||||
ClientWidth = 506
|
||||
ClientHeight = 223
|
||||
ClientWidth = 508
|
||||
TabOrder = 0
|
||||
object BuildMacrosTreeView: TTreeView
|
||||
AnchorSideLeft.Control = MacrosGroupBox
|
||||
@ -25,7 +25,7 @@ inherited CompOptBuildMacrosFrame: TCompOptBuildMacrosFrame
|
||||
AnchorSideBottom.Control = MacrosGroupBox
|
||||
AnchorSideBottom.Side = asrBottom
|
||||
Left = 0
|
||||
Height = 199
|
||||
Height = 201
|
||||
Top = 22
|
||||
Width = 227
|
||||
Anchors = [akTop, akLeft, akBottom]
|
||||
@ -43,7 +43,7 @@ inherited CompOptBuildMacrosFrame: TCompOptBuildMacrosFrame
|
||||
AnchorSideBottom.Control = MacrosGroupBox
|
||||
AnchorSideBottom.Side = asrBottom
|
||||
Left = 233
|
||||
Height = 221
|
||||
Height = 223
|
||||
Top = 0
|
||||
Width = 5
|
||||
Align = alNone
|
||||
@ -53,22 +53,22 @@ inherited CompOptBuildMacrosFrame: TCompOptBuildMacrosFrame
|
||||
AnchorSideLeft.Control = Splitter1
|
||||
AnchorSideLeft.Side = asrBottom
|
||||
Left = 244
|
||||
Height = 221
|
||||
Height = 223
|
||||
Top = 0
|
||||
Width = 262
|
||||
Width = 264
|
||||
Align = alRight
|
||||
Anchors = [akTop, akLeft, akRight, akBottom]
|
||||
BorderSpacing.Left = 6
|
||||
Caption = 'BuildMacroSelectedGroupBox'
|
||||
ClientHeight = 199
|
||||
ClientWidth = 254
|
||||
ClientHeight = 203
|
||||
ClientWidth = 258
|
||||
TabOrder = 2
|
||||
object BuildMacroDefaultLabel: TLabel
|
||||
Left = 6
|
||||
Height = 127
|
||||
Top = 66
|
||||
Width = 242
|
||||
Align = alClient
|
||||
Height = 129
|
||||
Top = 68
|
||||
Width = 246
|
||||
Align = alBottom
|
||||
AutoSize = False
|
||||
BorderSpacing.Top = 15
|
||||
BorderSpacing.Around = 6
|
||||
@ -78,9 +78,9 @@ inherited CompOptBuildMacrosFrame: TCompOptBuildMacrosFrame
|
||||
end
|
||||
object BuildMacroDescriptionLabel: TLabel
|
||||
Left = 6
|
||||
Height = 17
|
||||
Height = 16
|
||||
Top = 6
|
||||
Width = 242
|
||||
Width = 246
|
||||
Align = alTop
|
||||
BorderSpacing.Left = 6
|
||||
BorderSpacing.Top = 6
|
||||
@ -90,15 +90,27 @@ inherited CompOptBuildMacrosFrame: TCompOptBuildMacrosFrame
|
||||
end
|
||||
object BuildMacroDescriptionEdit: TEdit
|
||||
Left = 6
|
||||
Height = 22
|
||||
Top = 23
|
||||
Width = 242
|
||||
Height = 23
|
||||
Top = 22
|
||||
Width = 246
|
||||
Align = alTop
|
||||
BorderSpacing.Left = 6
|
||||
BorderSpacing.Right = 6
|
||||
OnExit = BuildMacroDescriptionEditExit
|
||||
TabOrder = 0
|
||||
Text = 'BuildMacroDescriptionEdit'
|
||||
end
|
||||
object BMAddMacroValueSpeedButton: TSpeedButton
|
||||
Left = 6
|
||||
Height = 22
|
||||
Top = 48
|
||||
Width = 23
|
||||
BorderSpacing.Left = 6
|
||||
NumGlyphs = 0
|
||||
OnClick = BMAddMacroValueSpeedButtonClick
|
||||
ShowHint = True
|
||||
ParentShowHint = False
|
||||
end
|
||||
end
|
||||
object BMAddMacroSpeedButton: TSpeedButton
|
||||
AnchorSideLeft.Control = MacrosGroupBox
|
||||
@ -112,31 +124,16 @@ inherited CompOptBuildMacrosFrame: TCompOptBuildMacrosFrame
|
||||
ShowHint = True
|
||||
ParentShowHint = False
|
||||
end
|
||||
object BMAddMacroValueSpeedButton: TSpeedButton
|
||||
AnchorSideLeft.Control = BMAddMacroSpeedButton
|
||||
object BMDeleteMacroSpeedButton: TSpeedButton
|
||||
AnchorSideLeft.Side = asrBottom
|
||||
AnchorSideTop.Control = MacrosGroupBox
|
||||
Left = 29
|
||||
Left = 22
|
||||
Height = 22
|
||||
Top = 0
|
||||
Width = 23
|
||||
BorderSpacing.Left = 6
|
||||
NumGlyphs = 0
|
||||
OnClick = BMAddMacroValueSpeedButtonClick
|
||||
ShowHint = True
|
||||
ParentShowHint = False
|
||||
end
|
||||
object BMDeleteSpeedButton: TSpeedButton
|
||||
AnchorSideLeft.Control = BMAddMacroValueSpeedButton
|
||||
AnchorSideLeft.Side = asrBottom
|
||||
AnchorSideTop.Control = MacrosGroupBox
|
||||
Left = 58
|
||||
Height = 22
|
||||
Top = 0
|
||||
Width = 23
|
||||
BorderSpacing.Left = 6
|
||||
NumGlyphs = 0
|
||||
OnClick = BMDeleteSpeedButtonClick
|
||||
OnClick = BMDeleteMacroSpeedButtonClick
|
||||
ShowHint = True
|
||||
ParentShowHint = False
|
||||
end
|
||||
@ -157,14 +154,14 @@ inherited CompOptBuildMacrosFrame: TCompOptBuildMacrosFrame
|
||||
Width = 514
|
||||
Align = alClient
|
||||
Caption = 'ConditionalsGroupBox'
|
||||
ClientHeight = 174
|
||||
ClientWidth = 506
|
||||
ClientHeight = 176
|
||||
ClientWidth = 508
|
||||
TabOrder = 2
|
||||
inline CondSynEdit: TSynEdit
|
||||
Left = 0
|
||||
Height = 159
|
||||
Height = 156
|
||||
Top = 0
|
||||
Width = 506
|
||||
Width = 508
|
||||
Align = alClient
|
||||
Font.Height = 9
|
||||
Font.Name = '-misc-dejavu sans mono-*-*-*-*-*-*-*-*-*-*-iso10646-1'
|
||||
@ -175,7 +172,7 @@ inherited CompOptBuildMacrosFrame: TCompOptBuildMacrosFrame
|
||||
TabOrder = 0
|
||||
OnKeyDown = CondSynEditKeyDown
|
||||
OnKeyPress = CondSynEditKeyPress
|
||||
Gutter.Width = 59
|
||||
Gutter.Width = 51
|
||||
Gutter.MouseActions = <
|
||||
item
|
||||
Shift = []
|
||||
@ -770,6 +767,7 @@ inherited CompOptBuildMacrosFrame: TCompOptBuildMacrosFrame
|
||||
Lines.Strings = (
|
||||
'CondSynEdit'
|
||||
)
|
||||
VisibleSpecialChars = [vscSpace, vscTabAtLast]
|
||||
BracketHighlightStyle = sbhsBoth
|
||||
OnChange = CondSynEditChange
|
||||
OnProcessCommand = CondSynEditProcessCommand
|
||||
@ -779,7 +777,7 @@ inherited CompOptBuildMacrosFrame: TCompOptBuildMacrosFrame
|
||||
Width = 24
|
||||
end
|
||||
object SynGutterLineNumber1: TSynGutterLineNumber
|
||||
Width = 19
|
||||
Width = 11
|
||||
MouseActions = <>
|
||||
MarkupInfo.Background = clBtnFace
|
||||
MarkupInfo.Foreground = clNone
|
||||
@ -884,9 +882,9 @@ inherited CompOptBuildMacrosFrame: TCompOptBuildMacrosFrame
|
||||
end
|
||||
object CondStatusbar: TStatusBar
|
||||
Left = 0
|
||||
Height = 15
|
||||
Top = 159
|
||||
Width = 506
|
||||
Height = 20
|
||||
Top = 156
|
||||
Width = 508
|
||||
Panels = <
|
||||
item
|
||||
Width = 80
|
||||
|
@ -53,7 +53,7 @@ type
|
||||
TCompOptBuildMacrosFrame = class(TAbstractIDEOptionsEditor)
|
||||
BMAddMacroSpeedButton: TSpeedButton;
|
||||
BMAddMacroValueSpeedButton: TSpeedButton;
|
||||
BMDeleteSpeedButton: TSpeedButton;
|
||||
BMDeleteMacroSpeedButton: TSpeedButton;
|
||||
BuildMacroDescriptionEdit: TEdit;
|
||||
BuildMacroSelectedGroupBox: TGroupBox;
|
||||
BuildMacrosTreeView: TTreeView;
|
||||
@ -67,7 +67,8 @@ type
|
||||
Splitter1: TSplitter;
|
||||
procedure BMAddMacroSpeedButtonClick(Sender: TObject);
|
||||
procedure BMAddMacroValueSpeedButtonClick(Sender: TObject);
|
||||
procedure BMDeleteSpeedButtonClick(Sender: TObject);
|
||||
procedure BMDeleteMacroSpeedButtonClick(Sender: TObject);
|
||||
procedure BuildMacroDescriptionEditExit(Sender: TObject);
|
||||
procedure BuildMacrosTreeViewEdited(Sender: TObject; Node: TTreeNode;
|
||||
var S: string);
|
||||
procedure BuildMacrosTreeViewEditing(Sender: TObject; Node: TTreeNode;
|
||||
@ -111,7 +112,6 @@ type
|
||||
fDefValueImgID: LongInt;
|
||||
fEngine: TCTConfigScriptEngine;
|
||||
fSynCompletion: TSynCompletion;
|
||||
procedure SaveItemProperties;
|
||||
procedure SetBuildMacros(const AValue: TIDEBuildMacros);
|
||||
procedure RebuildTreeView;
|
||||
procedure SetIdleConnected(const AValue: Boolean);
|
||||
@ -348,8 +348,7 @@ begin
|
||||
AllowEdit:=NodeType in [cbmntBuildMacro,cbmntValue];
|
||||
end;
|
||||
|
||||
procedure TCompOptBuildMacrosFrame.BuildMacrosTreeViewSelectionChanged(
|
||||
Sender: TObject);
|
||||
procedure TCompOptBuildMacrosFrame.BuildMacrosTreeViewSelectionChanged(Sender: TObject);
|
||||
begin
|
||||
UpdateItemPropertyControls;
|
||||
end;
|
||||
@ -520,7 +519,7 @@ begin
|
||||
BuildMacrosTreeView.EndUpdate;
|
||||
end;
|
||||
|
||||
procedure TCompOptBuildMacrosFrame.BMDeleteSpeedButtonClick(Sender: TObject);
|
||||
procedure TCompOptBuildMacrosFrame.BMDeleteMacroSpeedButtonClick(Sender: TObject);
|
||||
var
|
||||
aBuildMacro: TIDEBuildMacro;
|
||||
SelTVNode: TTreeNode;
|
||||
@ -552,6 +551,16 @@ begin
|
||||
BuildMacrosTreeView.EndUpdate;
|
||||
end;
|
||||
|
||||
procedure TCompOptBuildMacrosFrame.BuildMacroDescriptionEditExit(Sender: TObject);
|
||||
var
|
||||
BuildMacro: TLazBuildMacro;
|
||||
NodeType: TCBMNodeType;
|
||||
begin
|
||||
GetSelectedNode(BuildMacro,NodeType);
|
||||
if BuildMacro<>nil then
|
||||
BuildMacro.Description:=BuildMacroDescriptionEdit.Text;
|
||||
end;
|
||||
|
||||
procedure TCompOptBuildMacrosFrame.SetBuildMacros(
|
||||
const AValue: TIDEBuildMacros);
|
||||
begin
|
||||
@ -697,17 +706,15 @@ var
|
||||
begin
|
||||
GetSelectedNode(aBuildMacro,NodeType);
|
||||
if aBuildMacro<>nil then begin
|
||||
BuildMacroSelectedGroupBox.Caption:=Format(lisMacro, [aBuildMacro.Identifier
|
||||
]);
|
||||
BuildMacroSelectedGroupBox.Caption:=Format(lisMacro, [aBuildMacro.Identifier]);
|
||||
BuildMacroSelectedGroupBox.Enabled:=true;
|
||||
BuildMacroDescriptionEdit.Enabled:=true;
|
||||
BuildMacroDescriptionEdit.Text:=aBuildMacro.Description;
|
||||
BMAddMacroValueSpeedButton.Hint:=Format(lisAddValueToMacro, [
|
||||
aBuildMacro.Identifier]);
|
||||
BMAddMacroValueSpeedButton.Hint:=Format(lisAddValueToMacro, [aBuildMacro.Identifier]);
|
||||
if NodeType=cbmntBuildMacro then
|
||||
BMDeleteSpeedButton.Hint:=Format(lisDeleteMacro, [aBuildMacro.Identifier])
|
||||
BMDeleteMacroSpeedButton.Hint:=Format(lisDeleteMacro, [aBuildMacro.Identifier])
|
||||
else
|
||||
BMDeleteSpeedButton.Hint:=Format(lisDeleteValue2, [BuildMacrosTreeView.
|
||||
BMDeleteMacroSpeedButton.Hint:=Format(lisDeleteValue2, [BuildMacrosTreeView.
|
||||
Selected.Text]);
|
||||
end else begin
|
||||
BuildMacroSelectedGroupBox.Caption:=lisNoMacroSelected;
|
||||
@ -715,11 +722,11 @@ begin
|
||||
BuildMacroDescriptionEdit.Enabled:=false;
|
||||
BuildMacroDescriptionEdit.Text:='';
|
||||
BMAddMacroValueSpeedButton.Hint:='';
|
||||
BMDeleteSpeedButton.Hint:='';
|
||||
BMDeleteMacroSpeedButton.Hint:='';
|
||||
end;
|
||||
BMAddMacroSpeedButton.Hint:=lisAddNewMacro;
|
||||
BMAddMacroValueSpeedButton.Enabled:=NodeType in [cbmntBuildMacro,cbmntValue];
|
||||
BMDeleteSpeedButton.Enabled:=NodeType in [cbmntBuildMacro,cbmntValue];
|
||||
BMDeleteMacroSpeedButton.Enabled:=NodeType in [cbmntBuildMacro,cbmntValue];
|
||||
end;
|
||||
|
||||
procedure TCompOptBuildMacrosFrame.UpdateMessages;
|
||||
@ -947,16 +954,6 @@ begin
|
||||
//debugln(['TCompOptBuildMacrosFrame.GetCondCursorWord "',Result,'"']);
|
||||
end;
|
||||
|
||||
procedure TCompOptBuildMacrosFrame.SaveItemProperties;
|
||||
var
|
||||
BuildMacro: TLazBuildMacro;
|
||||
NodeType: TCBMNodeType;
|
||||
begin
|
||||
GetSelectedNode(BuildMacro,NodeType);
|
||||
if BuildMacro=nil then exit;
|
||||
BuildMacro.Description:=BuildMacroDescriptionEdit.Text;
|
||||
end;
|
||||
|
||||
constructor TCompOptBuildMacrosFrame.Create(TheOwner: TComponent);
|
||||
begin
|
||||
inherited Create(TheOwner);
|
||||
@ -983,7 +980,7 @@ begin
|
||||
|
||||
BMAddMacroSpeedButton.LoadGlyphFromLazarusResource('laz_add');
|
||||
BMAddMacroValueSpeedButton.LoadGlyphFromLazarusResource('laz_add');
|
||||
BMDeleteSpeedButton.LoadGlyphFromLazarusResource('laz_delete');
|
||||
BMDeleteMacroSpeedButton.LoadGlyphFromLazarusResource('laz_delete');
|
||||
|
||||
fSynCompletion:=TSynCompletion.Create(Self);
|
||||
fSynCompletion.TheForm.Parent:=Self;
|
||||
@ -1061,7 +1058,6 @@ end;
|
||||
|
||||
procedure TCompOptBuildMacrosFrame.SaveToOptions(Options: TBaseCompilerOptions);
|
||||
begin
|
||||
SaveItemProperties;
|
||||
(Options.BuildMacros as TIDEBuildMacros).Assign(BuildMacros);
|
||||
Options.Conditionals:=CondSynEdit.Lines.Text;
|
||||
end;
|
||||
|
Loading…
Reference in New Issue
Block a user