IDE: Calculate height of run parameters dialog, issue #39751.

This commit is contained in:
wp_xyz 2022-05-15 19:58:00 +02:00
parent d7ab429d95
commit d2d30348ae
2 changed files with 119 additions and 114 deletions

View File

@ -1,21 +1,22 @@
object RunParamsOptsDlg: TRunParamsOptsDlg
Left = 443
Height = 516
Height = 465
Top = 176
Width = 500
Width = 531
BorderIcons = [biSystemMenu]
Caption = 'RunParamsOptsDlg'
ClientHeight = 516
ClientWidth = 500
ClientHeight = 465
ClientWidth = 531
OnActivate = FormActivate
OnClose = FormClose
OnCreate = FormCreate
Position = poScreenCenter
LCLVersion = '2.1.0.0'
LCLVersion = '2.3.0.0'
object Notebook: TPageControl
Left = 0
Height = 396
Top = 80
Width = 500
Height = 355
Top = 72
Width = 531
ActivePage = GeneralPage
Align = alClient
BorderSpacing.Bottom = 6
@ -24,25 +25,25 @@ object RunParamsOptsDlg: TRunParamsOptsDlg
OnChange = NotebookChange
object GeneralPage: TTabSheet
Caption = 'GeneralPage'
ClientHeight = 367
ClientWidth = 496
ClientHeight = 327
ClientWidth = 523
object DisplayGroupBox: TGroupBox
Left = 6
Height = 84
Top = 220
Width = 484
Height = 80
Top = 214
Width = 511
Align = alTop
AutoSize = True
BorderSpacing.Around = 6
Caption = 'DisplayGroupBox'
ClientHeight = 67
ClientWidth = 480
ClientHeight = 60
ClientWidth = 507
TabOrder = 3
object DisplayEdit: TEdit
Left = 6
Height = 25
Top = 36
Width = 468
Height = 23
Top = 31
Width = 495
Align = alTop
BorderSpacing.Around = 6
TabOrder = 1
@ -50,9 +51,9 @@ object RunParamsOptsDlg: TRunParamsOptsDlg
end
object UseDisplayCheckBox: TCheckBox
Left = 6
Height = 24
Height = 19
Top = 6
Width = 468
Width = 495
Align = alTop
BorderSpacing.Left = 6
BorderSpacing.Top = 6
@ -64,45 +65,45 @@ object RunParamsOptsDlg: TRunParamsOptsDlg
end
object CmdLineParametersGroupBox: TGroupBox
Left = 6
Height = 56
Top = 66
Width = 484
Height = 55
Top = 67
Width = 511
Align = alTop
AutoSize = True
BorderSpacing.Around = 6
Caption = 'CmdLineParametersGroupBox'
ClientHeight = 39
ClientWidth = 480
ClientHeight = 35
ClientWidth = 507
TabOrder = 1
object CmdLineParametersComboBox: TComboBox
Left = 6
Height = 27
Height = 23
Top = 6
Width = 468
Width = 495
Align = alTop
BorderSpacing.Around = 6
ItemHeight = 0
ItemHeight = 15
TabOrder = 0
Text = 'CmdLineParametersComboBox'
end
end
object UseLaunchingApplicationGroupBox: TGroupBox
Left = 6
Height = 86
Height = 80
Top = 128
Width = 484
Width = 511
Align = alTop
AutoSize = True
BorderSpacing.Around = 6
Caption = 'UseLaunchingApplicationGroupBox'
ClientHeight = 69
ClientWidth = 480
ClientHeight = 60
ClientWidth = 507
TabOrder = 2
object UseLaunchingApplicationCheckBox: TCheckBox
Left = 6
Height = 24
Height = 19
Top = 6
Width = 468
Width = 495
Align = alTop
BorderSpacing.Left = 6
BorderSpacing.Top = 6
@ -114,27 +115,27 @@ object RunParamsOptsDlg: TRunParamsOptsDlg
end
object UseLaunchingApplicationComboBox: TComboBox
Left = 6
Height = 27
Top = 36
Width = 468
Height = 23
Top = 31
Width = 495
Align = alTop
BorderSpacing.Around = 6
ItemHeight = 0
ItemHeight = 15
TabOrder = 1
Text = 'UseLaunchingApplicationComboBox'
end
end
object HostApplicationGroupBox: TGroupBox
Left = 6
Height = 54
Height = 55
Top = 6
Width = 484
Width = 511
Align = alTop
AutoSize = True
BorderSpacing.Around = 6
Caption = 'HostApplicationGroupBox'
ClientHeight = 37
ClientWidth = 480
ClientHeight = 35
ClientWidth = 507
TabOrder = 0
object HostApplicationBrowseBtn: TButton
AnchorSideTop.Control = HostApplicationGroupBox
@ -142,10 +143,10 @@ object RunParamsOptsDlg: TRunParamsOptsDlg
AnchorSideRight.Side = asrBottom
AnchorSideBottom.Control = HostApplicationEdit
AnchorSideBottom.Side = asrBottom
Left = 314
Height = 25
Left = 333
Height = 23
Top = 6
Width = 160
Width = 168
Anchors = [akTop, akRight, akBottom]
AutoSize = True
BorderSpacing.Left = 6
@ -160,9 +161,9 @@ object RunParamsOptsDlg: TRunParamsOptsDlg
AnchorSideTop.Control = HostApplicationGroupBox
AnchorSideRight.Control = HostApplicationBrowseBtn
Left = 6
Height = 25
Height = 23
Top = 6
Width = 302
Width = 321
Anchors = [akTop, akLeft, akRight]
BorderSpacing.Around = 6
TabOrder = 0
@ -171,15 +172,15 @@ object RunParamsOptsDlg: TRunParamsOptsDlg
end
object WorkingDirectoryGroupBox: TGroupBox
Left = 6
Height = 56
Top = 310
Width = 484
Height = 55
Top = 300
Width = 511
Align = alTop
AutoSize = True
BorderSpacing.Around = 6
Caption = 'WorkingDirectoryGroupBox'
ClientHeight = 39
ClientWidth = 480
ClientHeight = 35
ClientWidth = 507
TabOrder = 4
object WorkingDirectoryBtn: TButton
AnchorSideTop.Control = WorkingDirectoryGroupBox
@ -187,10 +188,10 @@ object RunParamsOptsDlg: TRunParamsOptsDlg
AnchorSideRight.Side = asrBottom
AnchorSideBottom.Control = WorkingDirectoryComboBox
AnchorSideBottom.Side = asrBottom
Left = 343
Height = 27
Left = 364
Height = 23
Top = 6
Width = 131
Width = 137
Anchors = [akTop, akRight, akBottom]
AutoSize = True
BorderSpacing.Top = 6
@ -204,12 +205,12 @@ object RunParamsOptsDlg: TRunParamsOptsDlg
AnchorSideTop.Control = WorkingDirectoryGroupBox
AnchorSideRight.Control = WorkingDirectoryBtn
Left = 6
Height = 27
Height = 23
Top = 6
Width = 331
Width = 352
Anchors = [akTop, akLeft, akRight]
BorderSpacing.Around = 6
ItemHeight = 0
ItemHeight = 15
TabOrder = 0
Text = 'WorkingDirectoryComboBox'
end
@ -217,16 +218,14 @@ object RunParamsOptsDlg: TRunParamsOptsDlg
end
object EnvVarsPage: TTabSheet
Caption = 'EnvVarsPage'
ClientHeight = 367
ClientWidth = 496
ClientHeight = 327
ClientWidth = 523
OnResize = EnvVarsPageResize
object IncludeSystemVariablesCheckBox: TCheckBox
AnchorSideLeft.Control = EnvVarsPage
AnchorSideBottom.Control = EnvVarsPage
Left = 6
Height = 19
Top = 339
Width = 480
Top = 302
Width = 511
Align = alBottom
BorderSpacing.Around = 6
Caption = 'IncludeSystemVariablesCheckBox'
@ -240,24 +239,21 @@ object RunParamsOptsDlg: TRunParamsOptsDlg
AnchorSideRight.Side = asrBottom
AnchorSideBottom.Control = IncludeSystemVariablesCheckBox
Left = 6
Height = 104
Height = 67
Top = 229
Width = 480
Width = 511
Anchors = [akTop, akLeft, akRight, akBottom]
BorderSpacing.Around = 6
Caption = 'UserOverridesGroupBox'
ClientHeight = 87
ClientWidth = 476
ClientHeight = 47
ClientWidth = 507
TabOrder = 1
object UserOverridesListView: TListView
AnchorSideLeft.Control = UserOverridesGroupBox
AnchorSideTop.Control = UserOverridesGroupBox
AnchorSideRight.Control = UserOverridesGroupBox
AnchorSideBottom.Control = UserOverridesAddButton
Left = 6
Height = 41
Height = 4
Top = 6
Width = 464
Width = 495
Align = alTop
Anchors = [akTop, akLeft, akRight, akBottom]
BorderSpacing.Around = 6
@ -265,12 +261,12 @@ object RunParamsOptsDlg: TRunParamsOptsDlg
item
AutoSize = True
Caption = 'Caption'
Width = 1
Width = 57
end
item
AutoSize = True
Caption = 'Caption'
Width = 457
Width = 57
end>
RowSelect = True
SortType = stText
@ -284,7 +280,7 @@ object RunParamsOptsDlg: TRunParamsOptsDlg
AnchorSideBottom.Side = asrBottom
Left = 6
Height = 25
Top = 53
Top = 16
Width = 157
Anchors = [akLeft, akBottom]
AutoSize = True
@ -300,7 +296,7 @@ object RunParamsOptsDlg: TRunParamsOptsDlg
AnchorSideBottom.Side = asrBottom
Left = 343
Height = 25
Top = 53
Top = 16
Width = 155
Anchors = [akLeft, akBottom]
AutoSize = True
@ -316,7 +312,7 @@ object RunParamsOptsDlg: TRunParamsOptsDlg
AnchorSideBottom.Side = asrBottom
Left = 169
Height = 25
Top = 53
Top = 16
Width = 168
Anchors = [akLeft, akBottom]
AutoSize = True
@ -331,35 +327,31 @@ object RunParamsOptsDlg: TRunParamsOptsDlg
Left = 6
Height = 217
Top = 6
Width = 480
Width = 511
Align = alTop
Anchors = [akTop, akLeft, akRight, akBottom]
BorderSpacing.Around = 6
Caption = 'SystemVariablesGroupBox'
ClientHeight = 200
ClientWidth = 476
ClientHeight = 197
ClientWidth = 507
TabOrder = 0
object SystemVariablesListView: TListView
AnchorSideLeft.Control = SystemVariablesGroupBox
AnchorSideTop.Control = SystemVariablesGroupBox
AnchorSideRight.Control = SystemVariablesGroupBox
AnchorSideBottom.Control = SystemVariablesGroupBox
Left = 6
Height = 185
Top = 6
Width = 464
Width = 495
Align = alClient
BorderSpacing.Around = 6
Columns = <
item
AutoSize = True
Caption = 'Caption'
Width = 1
Width = 57
end
item
AutoSize = True
Caption = 'Caption'
Width = 457
Width = 57
end>
ReadOnly = True
RowSelect = True
@ -371,13 +363,13 @@ object RunParamsOptsDlg: TRunParamsOptsDlg
end
object PreviewPage: TTabSheet
Caption = 'PreviewPage'
ClientHeight = 367
ClientWidth = 496
ClientHeight = 327
ClientWidth = 523
object PreviewMemo: TMemo
Left = 0
Height = 343
Height = 308
Top = 0
Width = 496
Width = 523
Align = alClient
Lines.Strings = (
'PreviewMemo'
@ -386,9 +378,9 @@ object RunParamsOptsDlg: TRunParamsOptsDlg
end
object PreviewMultilineCheckBox: TCheckBox
Left = 0
Height = 24
Top = 343
Width = 496
Height = 19
Top = 308
Width = 523
Align = alBottom
Caption = 'PreviewMultilineCheckBox'
OnChange = PreviewMultilineCheckBoxChange
@ -398,9 +390,9 @@ object RunParamsOptsDlg: TRunParamsOptsDlg
end
object ButtonPanel: TButtonPanel
Left = 6
Height = 28
Top = 482
Width = 488
Height = 26
Top = 433
Width = 519
OKButton.Name = 'OKButton'
OKButton.DefaultCaption = True
OKButton.OnClick = OkButtonClick
@ -418,33 +410,34 @@ object RunParamsOptsDlg: TRunParamsOptsDlg
end
object Panel1: TPanel
Left = 10
Height = 60
Height = 52
Top = 10
Width = 480
Width = 511
Align = alTop
AutoSize = True
BorderSpacing.Around = 10
BevelOuter = bvNone
ClientHeight = 60
ClientWidth = 480
ClientHeight = 52
ClientWidth = 511
TabOrder = 0
object ModesLabel: TLabel
Left = 0
Height = 15
Top = 2
Width = 65
Width = 64
Caption = 'ModesLabel'
Color = clDefault
ParentColor = False
end
object ModesComboBox: TComboBox
AnchorSideLeft.Control = ModesLabel
AnchorSideLeft.Side = asrBottom
Left = 74
Height = 29
Left = 73
Height = 23
Top = 0
Width = 217
BorderSpacing.Left = 9
ItemHeight = 0
ItemHeight = 15
OnChange = ModesComboBoxChange
Style = csDropDownList
TabOrder = 0
@ -454,9 +447,9 @@ object RunParamsOptsDlg: TRunParamsOptsDlg
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = ModesComboBox
AnchorSideTop.Side = asrCenter
Left = 297
Left = 296
Height = 22
Top = 3
Top = 0
Width = 47
Align = alNone
AutoSize = True
@ -488,13 +481,13 @@ object RunParamsOptsDlg: TRunParamsOptsDlg
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = ModesComboBox
AnchorSideTop.Side = asrBottom
Left = 73
Height = 25
Top = 35
Left = 71
Height = 23
Top = 29
Width = 169
BorderSpacing.Left = 9
BorderSpacing.Top = 6
ItemHeight = 0
ItemHeight = 15
ItemIndex = 0
Items.Strings = (
'LPS'
@ -508,10 +501,11 @@ object RunParamsOptsDlg: TRunParamsOptsDlg
AnchorSideTop.Control = SaveInComboBox
Left = 0
Height = 15
Top = 38
Width = 64
Top = 32
Width = 62
BorderSpacing.Top = 3
Caption = 'SaveInLabel'
Color = clDefault
ParentColor = False
end
end

View File

@ -160,6 +160,7 @@ type
WorkingDirectoryGroupBox: TGroupBox;
procedure DeleteModeButtonClick(Sender: TObject);
procedure EnvVarsPageResize(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure FormClose(Sender: TObject; var {%H-}CloseAction: TCloseAction);
procedure FormCreate(Sender: TObject);
procedure HelpButtonClick(Sender: TObject);
@ -931,6 +932,16 @@ begin
UserOverridesListView.Column[1].Width := UserOverridesListView.Column[0].Width;
end;
procedure TRunParamsOptsDlg.FormActivate(Sender: TObject);
var
delta: Integer;
begin
delta := WorkingDirectoryGroupbox.Top + WorkingDirectoryGroupbox.Height +
WorkingDirectoryGroupbox.BorderSpacing.Around - Notebook.ClientHeight;
ClientHeight := Notebook.Top + Notebook.Height + delta +
2*ButtonPanel.BorderSpacing.Around + ButtonPanel.Height;
end;
procedure TRunParamsOptsDlg.FormClose(Sender: TObject;
var CloseAction: TCloseAction);
begin