ide: make ellipsis button in debugger options frame square again (issue #32924). Based on patch by FTurtle and idea by Ondrej.

git-svn-id: trunk@56949 -
This commit is contained in:
wp 2018-01-04 08:20:24 +00:00
parent 6e9a07b58b
commit 20bc34c5fe
2 changed files with 36 additions and 25 deletions

View File

@ -15,13 +15,13 @@ object DebuggerGeneralOptionsFrame: TDebuggerGeneralOptionsFrame
AnchorSideRight.Control = Owner AnchorSideRight.Control = Owner
AnchorSideRight.Side = asrBottom AnchorSideRight.Side = asrBottom
Left = 0 Left = 0
Height = 97 Height = 84
Top = 0 Top = 0
Width = 519 Width = 519
Anchors = [akTop, akLeft, akRight] Anchors = [akTop, akLeft, akRight]
AutoSize = True AutoSize = True
Caption = 'Debugger type and path' Caption = 'Debugger type and path'
ClientHeight = 78 ClientHeight = 64
ClientWidth = 515 ClientWidth = 515
TabOrder = 0 TabOrder = 0
object cmdOpenDebuggerPath: TSpeedButton object cmdOpenDebuggerPath: TSpeedButton
@ -30,14 +30,16 @@ object DebuggerGeneralOptionsFrame: TDebuggerGeneralOptionsFrame
AnchorSideRight.Side = asrBottom AnchorSideRight.Side = asrBottom
AnchorSideBottom.Control = cmbDebuggerPath AnchorSideBottom.Control = cmbDebuggerPath
AnchorSideBottom.Side = asrBottom AnchorSideBottom.Side = asrBottom
Left = 459 Left = 496
Height = 29 Height = 23
Top = 43 Top = 35
Width = 50 Width = 13
Anchors = [akTop, akRight, akBottom] Anchors = [akTop, akRight, akBottom]
AutoSize = True
BorderSpacing.Right = 6 BorderSpacing.Right = 6
Caption = '...' Caption = ''
OnClick = cmdOpenDebuggerPathClick OnClick = cmdOpenDebuggerPathClick
OnResize = ResizeSquare
end end
object cmbDebuggerType: TComboBox object cmbDebuggerType: TComboBox
AnchorSideLeft.Control = gbDebuggerType AnchorSideLeft.Control = gbDebuggerType
@ -45,12 +47,12 @@ object DebuggerGeneralOptionsFrame: TDebuggerGeneralOptionsFrame
AnchorSideRight.Control = gbDebuggerType AnchorSideRight.Control = gbDebuggerType
AnchorSideRight.Side = asrBottom AnchorSideRight.Side = asrBottom
Left = 6 Left = 6
Height = 31 Height = 23
Top = 6 Top = 6
Width = 503 Width = 503
Anchors = [akTop, akLeft, akRight] Anchors = [akTop, akLeft, akRight]
BorderSpacing.Around = 6 BorderSpacing.Around = 6
ItemHeight = 0 ItemHeight = 15
OnEditingDone = cmbDebuggerTypeEditingDone OnEditingDone = cmbDebuggerTypeEditingDone
OnSelect = cmbDebuggerTypeEditingDone OnSelect = cmbDebuggerTypeEditingDone
Style = csDropDownList Style = csDropDownList
@ -62,14 +64,14 @@ object DebuggerGeneralOptionsFrame: TDebuggerGeneralOptionsFrame
AnchorSideTop.Side = asrBottom AnchorSideTop.Side = asrBottom
AnchorSideRight.Control = cmdOpenDebuggerPath AnchorSideRight.Control = cmdOpenDebuggerPath
Left = 6 Left = 6
Height = 29 Height = 23
Top = 43 Top = 35
Width = 453 Width = 490
Anchors = [akTop, akLeft, akRight] Anchors = [akTop, akLeft, akRight]
BorderSpacing.Left = 6 BorderSpacing.Left = 6
BorderSpacing.Top = 6 BorderSpacing.Top = 6
BorderSpacing.Bottom = 6 BorderSpacing.Bottom = 6
ItemHeight = 0 ItemHeight = 15
TabOrder = 1 TabOrder = 1
end end
end end
@ -80,14 +82,14 @@ object DebuggerGeneralOptionsFrame: TDebuggerGeneralOptionsFrame
AnchorSideRight.Control = Owner AnchorSideRight.Control = Owner
AnchorSideRight.Side = asrBottom AnchorSideRight.Side = asrBottom
Left = 0 Left = 0
Height = 58 Height = 55
Top = 103 Top = 90
Width = 519 Width = 519
Anchors = [akTop, akLeft, akRight] Anchors = [akTop, akLeft, akRight]
AutoSize = True AutoSize = True
BorderSpacing.Top = 6 BorderSpacing.Top = 6
Caption = 'Additional search path' Caption = 'Additional search path'
ClientHeight = 39 ClientHeight = 35
ClientWidth = 515 ClientWidth = 515
TabOrder = 1 TabOrder = 1
object cmdOpenAdditionalPath: TSpeedButton object cmdOpenAdditionalPath: TSpeedButton
@ -96,23 +98,25 @@ object DebuggerGeneralOptionsFrame: TDebuggerGeneralOptionsFrame
AnchorSideRight.Side = asrBottom AnchorSideRight.Side = asrBottom
AnchorSideBottom.Control = txtAdditionalPath AnchorSideBottom.Control = txtAdditionalPath
AnchorSideBottom.Side = asrBottom AnchorSideBottom.Side = asrBottom
Left = 459 Left = 496
Height = 27 Height = 23
Top = 6 Top = 6
Width = 50 Width = 13
Anchors = [akTop, akRight, akBottom] Anchors = [akTop, akRight, akBottom]
AutoSize = True
BorderSpacing.Right = 6 BorderSpacing.Right = 6
Caption = '...' Caption = ''
OnClick = cmdOpenAdditionalPathClick OnClick = cmdOpenAdditionalPathClick
OnResize = ResizeSquare
end end
object txtAdditionalPath: TEdit object txtAdditionalPath: TEdit
AnchorSideLeft.Control = gbAdditionalSearchPath AnchorSideLeft.Control = gbAdditionalSearchPath
AnchorSideTop.Control = gbAdditionalSearchPath AnchorSideTop.Control = gbAdditionalSearchPath
AnchorSideRight.Control = cmdOpenAdditionalPath AnchorSideRight.Control = cmdOpenAdditionalPath
Left = 6 Left = 6
Height = 27 Height = 23
Top = 6 Top = 6
Width = 453 Width = 490
Anchors = [akTop, akLeft, akRight] Anchors = [akTop, akLeft, akRight]
BorderSpacing.Left = 6 BorderSpacing.Left = 6
BorderSpacing.Top = 6 BorderSpacing.Top = 6
@ -128,7 +132,7 @@ object DebuggerGeneralOptionsFrame: TDebuggerGeneralOptionsFrame
AnchorSideRight.Side = asrBottom AnchorSideRight.Side = asrBottom
Left = 0 Left = 0
Height = 19 Height = 19
Top = 167 Top = 151
Width = 519 Width = 519
Anchors = [akTop, akLeft, akRight] Anchors = [akTop, akLeft, akRight]
AutoFill = True AutoFill = True
@ -154,8 +158,8 @@ object DebuggerGeneralOptionsFrame: TDebuggerGeneralOptionsFrame
AnchorSideBottom.Control = Owner AnchorSideBottom.Control = Owner
AnchorSideBottom.Side = asrBottom AnchorSideBottom.Side = asrBottom
Left = 0 Left = 0
Height = 235 Height = 251
Top = 192 Top = 176
Width = 519 Width = 519
Anchors = [akTop, akLeft, akRight, akBottom] Anchors = [akTop, akLeft, akRight, akBottom]
BorderSpacing.Top = 6 BorderSpacing.Top = 6

View File

@ -48,6 +48,7 @@ type
procedure cmbDebuggerTypeEditingDone(Sender: TObject); procedure cmbDebuggerTypeEditingDone(Sender: TObject);
procedure cmdOpenAdditionalPathClick(Sender: TObject); procedure cmdOpenAdditionalPathClick(Sender: TObject);
procedure cmdOpenDebuggerPathClick(Sender: TObject); procedure cmdOpenDebuggerPathClick(Sender: TObject);
procedure ResizeSquare(Sender: TObject);
private private
PropertyGrid: TOIPropertyGrid; PropertyGrid: TOIPropertyGrid;
FCurDebuggerClass: TDebuggerClass; // currently shown debugger class FCurDebuggerClass: TDebuggerClass; // currently shown debugger class
@ -124,6 +125,12 @@ begin
end; end;
end; end;
procedure TDebuggerGeneralOptionsFrame.ResizeSquare(Sender: TObject);
begin
with Sender as TControl do
Constraints.MinWidth := Height;
end;
procedure TDebuggerGeneralOptionsFrame.FetchDebuggerClass; procedure TDebuggerGeneralOptionsFrame.FetchDebuggerClass;
var var
n: PtrInt; n: PtrInt;