mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-18 18:19:08 +02:00
ide: remove debugger option dialog and menu item
git-svn-id: trunk@17691 -
This commit is contained in:
parent
dbb79626c8
commit
8f93dfa528
3
.gitattributes
vendored
3
.gitattributes
vendored
@ -1590,9 +1590,6 @@ debugger/dbgoutputform.pp svneol=native#text/pascal
|
|||||||
debugger/dbgutils.pp svneol=native#text/pascal
|
debugger/dbgutils.pp svneol=native#text/pascal
|
||||||
debugger/debugger.pp svneol=native#text/pascal
|
debugger/debugger.pp svneol=native#text/pascal
|
||||||
debugger/debuggerdlg.pp svneol=native#text/pascal
|
debugger/debuggerdlg.pp svneol=native#text/pascal
|
||||||
debugger/debugoptionsfrm.lfm svneol=native#text/plain
|
|
||||||
debugger/debugoptionsfrm.lrs svneol=native#text/pascal
|
|
||||||
debugger/debugoptionsfrm.pas svneol=native#text/pascal
|
|
||||||
debugger/evaluatedlg.lfm svneol=native#text/plain
|
debugger/evaluatedlg.lfm svneol=native#text/plain
|
||||||
debugger/evaluatedlg.lrs svneol=native#text/pascal
|
debugger/evaluatedlg.lrs svneol=native#text/pascal
|
||||||
debugger/evaluatedlg.pp svneol=native#text/pascal
|
debugger/evaluatedlg.pp svneol=native#text/pascal
|
||||||
|
@ -1,550 +0,0 @@
|
|||||||
object DebuggerOptionsForm: TDebuggerOptionsForm
|
|
||||||
Left = 410
|
|
||||||
Height = 443
|
|
||||||
Top = 196
|
|
||||||
Width = 482
|
|
||||||
ActiveControl = cmbDebuggerType
|
|
||||||
BorderIcons = [biSystemMenu]
|
|
||||||
Caption = 'Debugger Options'
|
|
||||||
ClientHeight = 443
|
|
||||||
ClientWidth = 482
|
|
||||||
OnCreate = DebuggerOptionsFormCREATE
|
|
||||||
OnDestroy = DebuggerOptionsFormDESTROY
|
|
||||||
ParentFont = False
|
|
||||||
Position = poScreenCenter
|
|
||||||
LCLVersion = '0.9.25'
|
|
||||||
object nbDebugOptions: TNotebook
|
|
||||||
AnchorSideBottom.Control = BtnPanel
|
|
||||||
Height = 408
|
|
||||||
Width = 482
|
|
||||||
Align = alTop
|
|
||||||
Anchors = [akTop, akLeft, akRight, akBottom]
|
|
||||||
PageIndex = 3
|
|
||||||
TabOrder = 0
|
|
||||||
object pgGeneral: TPage
|
|
||||||
Caption = 'pgGeneral'
|
|
||||||
ClientWidth = 474
|
|
||||||
ClientHeight = 382
|
|
||||||
object gbDebuggerType: TGroupBox
|
|
||||||
Left = 6
|
|
||||||
Height = 80
|
|
||||||
Top = 6
|
|
||||||
Width = 462
|
|
||||||
Align = alTop
|
|
||||||
AutoSize = True
|
|
||||||
BorderSpacing.Around = 6
|
|
||||||
Caption = 'Debugger type and path'
|
|
||||||
ClientHeight = 80
|
|
||||||
ClientWidth = 462
|
|
||||||
ParentCtl3D = False
|
|
||||||
TabOrder = 0
|
|
||||||
object cmbDebuggerType: TComboBox
|
|
||||||
AnchorSideLeft.Control = gbDebuggerType
|
|
||||||
AnchorSideTop.Control = gbDebuggerType
|
|
||||||
AnchorSideRight.Control = gbDebuggerType
|
|
||||||
AnchorSideRight.Side = asrBottom
|
|
||||||
Left = 6
|
|
||||||
Height = 21
|
|
||||||
Top = 6
|
|
||||||
Width = 446
|
|
||||||
Anchors = [akTop, akLeft, akRight]
|
|
||||||
BorderSpacing.Around = 6
|
|
||||||
ItemHeight = 13
|
|
||||||
OnEditingDone = cmbDebuggerTypeCHANGE
|
|
||||||
OnSelect = cmbDebuggerTypeCHANGE
|
|
||||||
ParentCtl3D = False
|
|
||||||
TabOrder = 0
|
|
||||||
end
|
|
||||||
object cmbDebuggerPath: TComboBox
|
|
||||||
AnchorSideLeft.Control = gbDebuggerType
|
|
||||||
AnchorSideTop.Control = cmbDebuggerType
|
|
||||||
AnchorSideTop.Side = asrBottom
|
|
||||||
AnchorSideRight.Control = cmdOpenDebuggerPath
|
|
||||||
Left = 6
|
|
||||||
Height = 21
|
|
||||||
Top = 33
|
|
||||||
Width = 417
|
|
||||||
Anchors = [akTop, akLeft, akRight]
|
|
||||||
BorderSpacing.Around = 6
|
|
||||||
ItemHeight = 13
|
|
||||||
ParentCtl3D = False
|
|
||||||
TabOrder = 1
|
|
||||||
end
|
|
||||||
object cmdOpenDebuggerPath: TButton
|
|
||||||
AnchorSideTop.Control = cmbDebuggerPath
|
|
||||||
AnchorSideRight.Control = gbDebuggerType
|
|
||||||
AnchorSideRight.Side = asrBottom
|
|
||||||
AnchorSideBottom.Control = cmbDebuggerPath
|
|
||||||
AnchorSideBottom.Side = asrBottom
|
|
||||||
Left = 429
|
|
||||||
Height = 21
|
|
||||||
Top = 33
|
|
||||||
Width = 23
|
|
||||||
Anchors = [akTop, akRight, akBottom]
|
|
||||||
BorderSpacing.Right = 6
|
|
||||||
Caption = '...'
|
|
||||||
OnClick = cmdOpenDebuggerPathCLICK
|
|
||||||
TabOrder = 2
|
|
||||||
end
|
|
||||||
end
|
|
||||||
object gbAdditionalSearchPath: TGroupBox
|
|
||||||
AnchorSideLeft.Control = pgGeneral
|
|
||||||
AnchorSideTop.Control = gbDebuggerType
|
|
||||||
AnchorSideTop.Side = asrBottom
|
|
||||||
AnchorSideRight.Control = pgGeneral
|
|
||||||
AnchorSideRight.Side = asrBottom
|
|
||||||
Left = 6
|
|
||||||
Height = 55
|
|
||||||
Top = 92
|
|
||||||
Width = 462
|
|
||||||
Align = alTop
|
|
||||||
AutoSize = True
|
|
||||||
BorderSpacing.Around = 6
|
|
||||||
Caption = 'Additional search path'
|
|
||||||
ClientHeight = 55
|
|
||||||
ClientWidth = 462
|
|
||||||
ParentCtl3D = False
|
|
||||||
TabOrder = 1
|
|
||||||
object txtAdditionalPath: TEdit
|
|
||||||
AnchorSideLeft.Control = gbAdditionalSearchPath
|
|
||||||
AnchorSideTop.Control = gbAdditionalSearchPath
|
|
||||||
AnchorSideRight.Control = cmdOpenAdditionalPath
|
|
||||||
Left = 6
|
|
||||||
Height = 25
|
|
||||||
Top = 6
|
|
||||||
Width = 417
|
|
||||||
Anchors = [akTop, akLeft, akRight]
|
|
||||||
BorderSpacing.Around = 6
|
|
||||||
TabOrder = 0
|
|
||||||
end
|
|
||||||
object cmdOpenAdditionalPath: TButton
|
|
||||||
AnchorSideTop.Control = txtAdditionalPath
|
|
||||||
AnchorSideRight.Control = gbAdditionalSearchPath
|
|
||||||
AnchorSideRight.Side = asrBottom
|
|
||||||
AnchorSideBottom.Control = txtAdditionalPath
|
|
||||||
AnchorSideBottom.Side = asrBottom
|
|
||||||
Left = 429
|
|
||||||
Height = 25
|
|
||||||
Top = 6
|
|
||||||
Width = 23
|
|
||||||
Anchors = [akTop, akRight, akBottom]
|
|
||||||
BorderSpacing.Right = 6
|
|
||||||
Caption = '...'
|
|
||||||
OnClick = cmdOpenAdditionalPathClick
|
|
||||||
TabOrder = 1
|
|
||||||
end
|
|
||||||
end
|
|
||||||
object gbDebuggerSpecific: TGroupBox
|
|
||||||
AnchorSideLeft.Control = pgGeneral
|
|
||||||
AnchorSideTop.Control = gcbDebuggerGeneralOptions
|
|
||||||
AnchorSideTop.Side = asrBottom
|
|
||||||
AnchorSideRight.Control = pgGeneral
|
|
||||||
AnchorSideRight.Side = asrBottom
|
|
||||||
AnchorSideBottom.Control = pgGeneral
|
|
||||||
AnchorSideBottom.Side = asrBottom
|
|
||||||
Left = 6
|
|
||||||
Height = 161
|
|
||||||
Top = 215
|
|
||||||
Width = 462
|
|
||||||
Align = alClient
|
|
||||||
BorderSpacing.Around = 6
|
|
||||||
Caption = 'Debugger specific options (depends on type of debugger)'
|
|
||||||
ClientHeight = 161
|
|
||||||
ClientWidth = 462
|
|
||||||
ParentCtl3D = False
|
|
||||||
TabOrder = 2
|
|
||||||
object pnlDebugSpecific: TPanel
|
|
||||||
Left = 6
|
|
||||||
Height = 131
|
|
||||||
Top = 6
|
|
||||||
Width = 446
|
|
||||||
Align = alClient
|
|
||||||
BorderSpacing.Around = 6
|
|
||||||
BevelOuter = bvNone
|
|
||||||
BorderWidth = 4
|
|
||||||
FullRepaint = False
|
|
||||||
TabOrder = 0
|
|
||||||
TabStop = True
|
|
||||||
end
|
|
||||||
end
|
|
||||||
object gcbDebuggerGeneralOptions: TCheckGroup
|
|
||||||
AnchorSideLeft.Control = pgGeneral
|
|
||||||
AnchorSideTop.Control = gbAdditionalSearchPath
|
|
||||||
AnchorSideTop.Side = asrBottom
|
|
||||||
AnchorSideRight.Control = pgGeneral
|
|
||||||
AnchorSideRight.Side = asrBottom
|
|
||||||
Left = 6
|
|
||||||
Height = 56
|
|
||||||
Top = 153
|
|
||||||
Width = 462
|
|
||||||
Align = alTop
|
|
||||||
AutoFill = True
|
|
||||||
BorderSpacing.Around = 6
|
|
||||||
Caption = 'Debugger general options'
|
|
||||||
ChildSizing.LeftRightSpacing = 6
|
|
||||||
ChildSizing.TopBottomSpacing = 6
|
|
||||||
ChildSizing.EnlargeHorizontal = crsHomogenousChildResize
|
|
||||||
ChildSizing.EnlargeVertical = crsHomogenousChildResize
|
|
||||||
ChildSizing.ShrinkHorizontal = crsScaleChilds
|
|
||||||
ChildSizing.ShrinkVertical = crsScaleChilds
|
|
||||||
ChildSizing.Layout = cclLeftToRightThenTopToBottom
|
|
||||||
ChildSizing.ControlsPerLine = 1
|
|
||||||
TabOrder = 3
|
|
||||||
end
|
|
||||||
end
|
|
||||||
object pgEventLog: TPage
|
|
||||||
Caption = 'pgEventLog'
|
|
||||||
ClientWidth = 474
|
|
||||||
ClientHeight = 382
|
|
||||||
object gbGeneral: TGroupBox
|
|
||||||
Left = 6
|
|
||||||
Height = 132
|
|
||||||
Top = 6
|
|
||||||
Width = 462
|
|
||||||
Align = alTop
|
|
||||||
BorderSpacing.Around = 6
|
|
||||||
Caption = 'General'
|
|
||||||
ClientHeight = 132
|
|
||||||
ClientWidth = 462
|
|
||||||
ParentCtl3D = False
|
|
||||||
TabOrder = 0
|
|
||||||
object chkClearLogOnRun: TCheckBox
|
|
||||||
Left = 4
|
|
||||||
Height = 19
|
|
||||||
Top = 5
|
|
||||||
Width = 102
|
|
||||||
Caption = 'Clear log on run'
|
|
||||||
TabOrder = 0
|
|
||||||
end
|
|
||||||
object chkLimitLinecount: TCheckBox
|
|
||||||
Left = 4
|
|
||||||
Height = 19
|
|
||||||
Top = 29
|
|
||||||
Width = 106
|
|
||||||
Caption = 'Limit linecount to'
|
|
||||||
TabOrder = 1
|
|
||||||
end
|
|
||||||
object seLimitLinecount: TSpinEdit
|
|
||||||
Left = 46
|
|
||||||
Height = 20
|
|
||||||
Top = 54
|
|
||||||
Width = 82
|
|
||||||
Enabled = False
|
|
||||||
TabOrder = 2
|
|
||||||
end
|
|
||||||
end
|
|
||||||
object gbMessages: TGroupBox
|
|
||||||
Left = 6
|
|
||||||
Height = 232
|
|
||||||
Top = 144
|
|
||||||
Width = 462
|
|
||||||
Align = alClient
|
|
||||||
BorderSpacing.Around = 6
|
|
||||||
Caption = 'Messages'
|
|
||||||
ClientHeight = 232
|
|
||||||
ClientWidth = 462
|
|
||||||
Enabled = False
|
|
||||||
ParentCtl3D = False
|
|
||||||
TabOrder = 1
|
|
||||||
object chkMessagesBreakpoint: TCheckBox
|
|
||||||
Left = 4
|
|
||||||
Height = 19
|
|
||||||
Top = 5
|
|
||||||
Width = 77
|
|
||||||
AllowGrayed = True
|
|
||||||
Caption = 'Breakpoint'
|
|
||||||
TabOrder = 0
|
|
||||||
end
|
|
||||||
object chkMessagesProcess: TCheckBox
|
|
||||||
Left = 4
|
|
||||||
Height = 19
|
|
||||||
Top = 29
|
|
||||||
Width = 63
|
|
||||||
AllowGrayed = True
|
|
||||||
Caption = 'Process'
|
|
||||||
TabOrder = 1
|
|
||||||
end
|
|
||||||
object chkMessagesThread: TCheckBox
|
|
||||||
Left = 4
|
|
||||||
Height = 19
|
|
||||||
Top = 53
|
|
||||||
Width = 60
|
|
||||||
AllowGrayed = True
|
|
||||||
Caption = 'Thread'
|
|
||||||
TabOrder = 2
|
|
||||||
end
|
|
||||||
object chkMessagesModule: TCheckBox
|
|
||||||
Left = 4
|
|
||||||
Height = 19
|
|
||||||
Top = 77
|
|
||||||
Width = 60
|
|
||||||
AllowGrayed = True
|
|
||||||
Caption = 'Module'
|
|
||||||
TabOrder = 3
|
|
||||||
end
|
|
||||||
object chkMessagesOutput: TCheckBox
|
|
||||||
Left = 4
|
|
||||||
Height = 19
|
|
||||||
Top = 101
|
|
||||||
Width = 60
|
|
||||||
AllowGrayed = True
|
|
||||||
Caption = 'Output'
|
|
||||||
TabOrder = 4
|
|
||||||
end
|
|
||||||
object chkMessagesWindow: TCheckBox
|
|
||||||
Left = 4
|
|
||||||
Height = 19
|
|
||||||
Top = 125
|
|
||||||
Width = 64
|
|
||||||
AllowGrayed = True
|
|
||||||
Caption = 'Window'
|
|
||||||
TabOrder = 5
|
|
||||||
end
|
|
||||||
object chkMessagesInterface: TCheckBox
|
|
||||||
Left = 4
|
|
||||||
Height = 19
|
|
||||||
Top = 149
|
|
||||||
Width = 71
|
|
||||||
AllowGrayed = True
|
|
||||||
Caption = 'Interface'
|
|
||||||
TabOrder = 6
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
object pgExceptions: TPage
|
|
||||||
Caption = 'pgExceptions'
|
|
||||||
ClientWidth = 474
|
|
||||||
ClientHeight = 382
|
|
||||||
object bgIgnoreExceptions: TGroupBox
|
|
||||||
Left = 6
|
|
||||||
Height = 345
|
|
||||||
Top = 6
|
|
||||||
Width = 462
|
|
||||||
Align = alClient
|
|
||||||
BorderSpacing.Around = 6
|
|
||||||
Caption = 'Ignore these exceptions'
|
|
||||||
ClientHeight = 345
|
|
||||||
ClientWidth = 462
|
|
||||||
ParentCtl3D = False
|
|
||||||
TabOrder = 0
|
|
||||||
object clbExceptions: TCheckListBox
|
|
||||||
AnchorSideRight.Side = asrBottom
|
|
||||||
Left = 6
|
|
||||||
Height = 256
|
|
||||||
Top = 6
|
|
||||||
Width = 446
|
|
||||||
Align = alTop
|
|
||||||
Anchors = [akTop, akLeft, akRight, akBottom]
|
|
||||||
BorderSpacing.Around = 6
|
|
||||||
OnClick = clbExceptionsCLICK
|
|
||||||
TabOrder = 0
|
|
||||||
end
|
|
||||||
object cmdExceptionAdd: TBitBtn
|
|
||||||
AnchorSideRight.Control = cmdExceptionRemove
|
|
||||||
AnchorSideBottom.Control = bgIgnoreExceptions
|
|
||||||
AnchorSideBottom.Side = asrBottom
|
|
||||||
Left = 296
|
|
||||||
Height = 23
|
|
||||||
Top = 298
|
|
||||||
Width = 75
|
|
||||||
Anchors = [akRight, akBottom]
|
|
||||||
AutoSize = True
|
|
||||||
BorderSpacing.Around = 6
|
|
||||||
Caption = 'Add'
|
|
||||||
Constraints.MinWidth = 75
|
|
||||||
NumGlyphs = 0
|
|
||||||
OnClick = cmdExceptionAddCLICK
|
|
||||||
TabOrder = 1
|
|
||||||
end
|
|
||||||
object cmdExceptionRemove: TBitBtn
|
|
||||||
AnchorSideRight.Control = bgIgnoreExceptions
|
|
||||||
AnchorSideRight.Side = asrBottom
|
|
||||||
AnchorSideBottom.Control = bgIgnoreExceptions
|
|
||||||
AnchorSideBottom.Side = asrBottom
|
|
||||||
Left = 377
|
|
||||||
Height = 23
|
|
||||||
Top = 298
|
|
||||||
Width = 75
|
|
||||||
Anchors = [akRight, akBottom]
|
|
||||||
AutoSize = True
|
|
||||||
BorderSpacing.Around = 6
|
|
||||||
Caption = 'Remove'
|
|
||||||
Constraints.MinWidth = 75
|
|
||||||
Enabled = False
|
|
||||||
NumGlyphs = 0
|
|
||||||
OnClick = cmdExceptionRemoveCLICK
|
|
||||||
TabOrder = 2
|
|
||||||
end
|
|
||||||
end
|
|
||||||
object chkBreakOnException: TCheckBox
|
|
||||||
Left = 6
|
|
||||||
Height = 19
|
|
||||||
Top = 357
|
|
||||||
Width = 462
|
|
||||||
Align = alBottom
|
|
||||||
AllowGrayed = True
|
|
||||||
Anchors = [akLeft, akBottom]
|
|
||||||
BorderSpacing.Around = 6
|
|
||||||
Caption = 'Break on Lazarus Exceptions'
|
|
||||||
TabOrder = 1
|
|
||||||
end
|
|
||||||
end
|
|
||||||
object pgSignals: TPage
|
|
||||||
Caption = 'pgSignals'
|
|
||||||
ClientWidth = 474
|
|
||||||
ClientHeight = 382
|
|
||||||
object gbSignals: TGroupBox
|
|
||||||
Left = 6
|
|
||||||
Height = 370
|
|
||||||
Top = 6
|
|
||||||
Width = 462
|
|
||||||
Align = alClient
|
|
||||||
BorderSpacing.Around = 6
|
|
||||||
Caption = 'Signals'
|
|
||||||
ClientHeight = 352
|
|
||||||
ClientWidth = 458
|
|
||||||
ParentCtl3D = False
|
|
||||||
TabOrder = 0
|
|
||||||
object lvSignals: TListView
|
|
||||||
Left = 6
|
|
||||||
Height = 292
|
|
||||||
Top = 6
|
|
||||||
Width = 446
|
|
||||||
Align = alTop
|
|
||||||
Anchors = [akTop, akLeft, akRight, akBottom]
|
|
||||||
BorderSpacing.Around = 6
|
|
||||||
Columns = <
|
|
||||||
item
|
|
||||||
Caption = 'Name'
|
|
||||||
Width = 200
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Caption = 'ID'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Caption = 'Handled by'
|
|
||||||
Width = 75
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Caption = 'Resume'
|
|
||||||
Width = 107
|
|
||||||
end>
|
|
||||||
PopupMenu = popSignal
|
|
||||||
TabOrder = 0
|
|
||||||
ViewStyle = vsReport
|
|
||||||
end
|
|
||||||
object cmdSignalRemove: TBitBtn
|
|
||||||
AnchorSideRight.Control = gbSignals
|
|
||||||
AnchorSideRight.Side = asrBottom
|
|
||||||
AnchorSideBottom.Control = gbSignals
|
|
||||||
AnchorSideBottom.Side = asrBottom
|
|
||||||
Left = 377
|
|
||||||
Height = 23
|
|
||||||
Top = 323
|
|
||||||
Width = 75
|
|
||||||
Anchors = [akRight, akBottom]
|
|
||||||
AutoSize = True
|
|
||||||
BorderSpacing.Around = 6
|
|
||||||
Caption = 'Remove'
|
|
||||||
Constraints.MinWidth = 75
|
|
||||||
Enabled = False
|
|
||||||
NumGlyphs = 0
|
|
||||||
TabOrder = 1
|
|
||||||
end
|
|
||||||
object cmdSignalAdd: TBitBtn
|
|
||||||
AnchorSideRight.Control = cmdSignalRemove
|
|
||||||
AnchorSideBottom.Control = gbSignals
|
|
||||||
AnchorSideBottom.Side = asrBottom
|
|
||||||
Left = 296
|
|
||||||
Height = 23
|
|
||||||
Top = 323
|
|
||||||
Width = 75
|
|
||||||
Anchors = [akRight, akBottom]
|
|
||||||
AutoSize = True
|
|
||||||
BorderSpacing.Around = 6
|
|
||||||
Caption = 'Add'
|
|
||||||
Constraints.MinWidth = 75
|
|
||||||
NumGlyphs = 0
|
|
||||||
TabOrder = 2
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
object BtnPanel: TPanel
|
|
||||||
Height = 35
|
|
||||||
Top = 408
|
|
||||||
Width = 482
|
|
||||||
Align = alBottom
|
|
||||||
AutoSize = True
|
|
||||||
BevelOuter = bvNone
|
|
||||||
ClientHeight = 35
|
|
||||||
ClientWidth = 482
|
|
||||||
TabOrder = 1
|
|
||||||
object cmdOK: TBitBtn
|
|
||||||
AnchorSideBottom.Side = asrBottom
|
|
||||||
Left = 320
|
|
||||||
Height = 23
|
|
||||||
Top = 6
|
|
||||||
Width = 75
|
|
||||||
Align = alRight
|
|
||||||
AutoSize = True
|
|
||||||
BorderSpacing.Around = 6
|
|
||||||
Caption = '&OK'
|
|
||||||
Constraints.MinWidth = 75
|
|
||||||
Default = True
|
|
||||||
Kind = bkOK
|
|
||||||
NumGlyphs = 0
|
|
||||||
OnClick = cmdOKCLICK
|
|
||||||
TabOrder = 0
|
|
||||||
end
|
|
||||||
object cmdCancel: TBitBtn
|
|
||||||
AnchorSideRight.Side = asrBottom
|
|
||||||
AnchorSideBottom.Side = asrBottom
|
|
||||||
Left = 401
|
|
||||||
Height = 23
|
|
||||||
Top = 6
|
|
||||||
Width = 75
|
|
||||||
Align = alRight
|
|
||||||
AutoSize = True
|
|
||||||
BorderSpacing.Around = 6
|
|
||||||
Cancel = True
|
|
||||||
Caption = 'Cancel'
|
|
||||||
Constraints.MinWidth = 75
|
|
||||||
Kind = bkCancel
|
|
||||||
ModalResult = 2
|
|
||||||
NumGlyphs = 0
|
|
||||||
TabOrder = 1
|
|
||||||
end
|
|
||||||
end
|
|
||||||
object popSignal: TPopupMenu
|
|
||||||
left = 8
|
|
||||||
top = 448
|
|
||||||
object mnuHandledByProgram: TMenuItem
|
|
||||||
AutoCheck = True
|
|
||||||
Caption = 'Handled by Program'
|
|
||||||
GroupIndex = 1
|
|
||||||
RadioItem = True
|
|
||||||
end
|
|
||||||
object mnuiHandledByDebugger: TMenuItem
|
|
||||||
AutoCheck = True
|
|
||||||
Caption = 'Handled by Debugger'
|
|
||||||
GroupIndex = 1
|
|
||||||
RadioItem = True
|
|
||||||
end
|
|
||||||
object N1: TMenuItem
|
|
||||||
Caption = '-'
|
|
||||||
end
|
|
||||||
object mnuResumeHandled: TMenuItem
|
|
||||||
AutoCheck = True
|
|
||||||
Caption = 'Resume Handled'
|
|
||||||
GroupIndex = 2
|
|
||||||
RadioItem = True
|
|
||||||
end
|
|
||||||
object mnuResumeUnhandled: TMenuItem
|
|
||||||
AutoCheck = True
|
|
||||||
Caption = 'Resume Unhandled'
|
|
||||||
GroupIndex = 2
|
|
||||||
RadioItem = True
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
@ -1,171 +0,0 @@
|
|||||||
{ This is an automatically generated lazarus resource file }
|
|
||||||
|
|
||||||
LazarusResources.Add('TDebuggerOptionsForm','FORMDATA',[
|
|
||||||
'TPF0'#20'TDebuggerOptionsForm'#19'DebuggerOptionsForm'#4'Left'#3#154#1#6'Hei'
|
|
||||||
+'ght'#3#187#1#3'Top'#3#196#0#5'Width'#3#226#1#13'ActiveControl'#7#15'cmbDebu'
|
|
||||||
+'ggerType'#11'BorderIcons'#11#12'biSystemMenu'#0#7'Caption'#6#16'Debugger Op'
|
|
||||||
+'tions'#12'ClientHeight'#3#187#1#11'ClientWidth'#3#226#1#8'OnCreate'#7#25'De'
|
|
||||||
+'buggerOptionsFormCREATE'#9'OnDestroy'#7#26'DebuggerOptionsFormDESTROY'#10'P'
|
|
||||||
+'arentFont'#8#8'Position'#7#14'poScreenCenter'#10'LCLVersion'#6#6'0.9.25'#0#9
|
|
||||||
+'TNotebook'#14'nbDebugOptions'#24'AnchorSideBottom.Control'#7#8'BtnPanel'#6
|
|
||||||
+'Height'#3#152#1#5'Width'#3#226#1#5'Align'#7#5'alTop'#7'Anchors'#11#5'akTop'
|
|
||||||
+#6'akLeft'#7'akRight'#8'akBottom'#0#9'PageIndex'#2#3#8'TabOrder'#2#0#0#5'TPa'
|
|
||||||
+'ge'#9'pgGeneral'#7'Caption'#6#9'pgGeneral'#11'ClientWidth'#3#218#1#12'Clien'
|
|
||||||
+'tHeight'#3'~'#1#0#9'TGroupBox'#14'gbDebuggerType'#4'Left'#2#6#6'Height'#2'P'
|
|
||||||
+#3'Top'#2#6#5'Width'#3#206#1#5'Align'#7#5'alTop'#8'AutoSize'#9#20'BorderSpac'
|
|
||||||
+'ing.Around'#2#6#7'Caption'#6#22'Debugger type and path'#12'ClientHeight'#2
|
|
||||||
+'P'#11'ClientWidth'#3#206#1#11'ParentCtl3D'#8#8'TabOrder'#2#0#0#9'TComboBox'
|
|
||||||
+#15'cmbDebuggerType'#22'AnchorSideLeft.Control'#7#14'gbDebuggerType'#21'Anch'
|
|
||||||
+'orSideTop.Control'#7#14'gbDebuggerType'#23'AnchorSideRight.Control'#7#14'gb'
|
|
||||||
+'DebuggerType'#20'AnchorSideRight.Side'#7#9'asrBottom'#4'Left'#2#6#6'Height'
|
|
||||||
+#2#21#3'Top'#2#6#5'Width'#3#190#1#7'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'
|
|
||||||
+#0#20'BorderSpacing.Around'#2#6#10'ItemHeight'#2#13#13'OnEditingDone'#7#21'c'
|
|
||||||
+'mbDebuggerTypeCHANGE'#8'OnSelect'#7#21'cmbDebuggerTypeCHANGE'#11'ParentCtl3'
|
|
||||||
+'D'#8#8'TabOrder'#2#0#0#0#9'TComboBox'#15'cmbDebuggerPath'#22'AnchorSideLeft'
|
|
||||||
+'.Control'#7#14'gbDebuggerType'#21'AnchorSideTop.Control'#7#15'cmbDebuggerTy'
|
|
||||||
+'pe'#18'AnchorSideTop.Side'#7#9'asrBottom'#23'AnchorSideRight.Control'#7#19
|
|
||||||
+'cmdOpenDebuggerPath'#4'Left'#2#6#6'Height'#2#21#3'Top'#2'!'#5'Width'#3#161#1
|
|
||||||
+#7'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#0#20'BorderSpacing.Around'#2#6
|
|
||||||
+#10'ItemHeight'#2#13#11'ParentCtl3D'#8#8'TabOrder'#2#1#0#0#7'TButton'#19'cmd'
|
|
||||||
+'OpenDebuggerPath'#21'AnchorSideTop.Control'#7#15'cmbDebuggerPath'#23'Anchor'
|
|
||||||
+'SideRight.Control'#7#14'gbDebuggerType'#20'AnchorSideRight.Side'#7#9'asrBot'
|
|
||||||
+'tom'#24'AnchorSideBottom.Control'#7#15'cmbDebuggerPath'#21'AnchorSideBottom'
|
|
||||||
+'.Side'#7#9'asrBottom'#4'Left'#3#173#1#6'Height'#2#21#3'Top'#2'!'#5'Width'#2
|
|
||||||
+#23#7'Anchors'#11#5'akTop'#7'akRight'#8'akBottom'#0#19'BorderSpacing.Right'#2
|
|
||||||
+#6#7'Caption'#6#3'...'#7'OnClick'#7#24'cmdOpenDebuggerPathCLICK'#8'TabOrder'
|
|
||||||
+#2#2#0#0#0#9'TGroupBox'#22'gbAdditionalSearchPath'#22'AnchorSideLeft.Control'
|
|
||||||
+#7#9'pgGeneral'#21'AnchorSideTop.Control'#7#14'gbDebuggerType'#18'AnchorSide'
|
|
||||||
+'Top.Side'#7#9'asrBottom'#23'AnchorSideRight.Control'#7#9'pgGeneral'#20'Anch'
|
|
||||||
+'orSideRight.Side'#7#9'asrBottom'#4'Left'#2#6#6'Height'#2'7'#3'Top'#2'\'#5'W'
|
|
||||||
+'idth'#3#206#1#5'Align'#7#5'alTop'#8'AutoSize'#9#20'BorderSpacing.Around'#2#6
|
|
||||||
+#7'Caption'#6#22'Additional search path'#12'ClientHeight'#2'7'#11'ClientWidt'
|
|
||||||
+'h'#3#206#1#11'ParentCtl3D'#8#8'TabOrder'#2#1#0#5'TEdit'#17'txtAdditionalPat'
|
|
||||||
+'h'#22'AnchorSideLeft.Control'#7#22'gbAdditionalSearchPath'#21'AnchorSideTop'
|
|
||||||
+'.Control'#7#22'gbAdditionalSearchPath'#23'AnchorSideRight.Control'#7#21'cmd'
|
|
||||||
+'OpenAdditionalPath'#4'Left'#2#6#6'Height'#2#25#3'Top'#2#6#5'Width'#3#161#1#7
|
|
||||||
+'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#0#20'BorderSpacing.Around'#2#6#8
|
|
||||||
+'TabOrder'#2#0#0#0#7'TButton'#21'cmdOpenAdditionalPath'#21'AnchorSideTop.Con'
|
|
||||||
+'trol'#7#17'txtAdditionalPath'#23'AnchorSideRight.Control'#7#22'gbAdditional'
|
|
||||||
+'SearchPath'#20'AnchorSideRight.Side'#7#9'asrBottom'#24'AnchorSideBottom.Con'
|
|
||||||
+'trol'#7#17'txtAdditionalPath'#21'AnchorSideBottom.Side'#7#9'asrBottom'#4'Le'
|
|
||||||
+'ft'#3#173#1#6'Height'#2#25#3'Top'#2#6#5'Width'#2#23#7'Anchors'#11#5'akTop'#7
|
|
||||||
+'akRight'#8'akBottom'#0#19'BorderSpacing.Right'#2#6#7'Caption'#6#3'...'#7'On'
|
|
||||||
+'Click'#7#26'cmdOpenAdditionalPathClick'#8'TabOrder'#2#1#0#0#0#9'TGroupBox'
|
|
||||||
+#18'gbDebuggerSpecific'#22'AnchorSideLeft.Control'#7#9'pgGeneral'#21'AnchorS'
|
|
||||||
+'ideTop.Control'#7#25'gcbDebuggerGeneralOptions'#18'AnchorSideTop.Side'#7#9
|
|
||||||
+'asrBottom'#23'AnchorSideRight.Control'#7#9'pgGeneral'#20'AnchorSideRight.Si'
|
|
||||||
+'de'#7#9'asrBottom'#24'AnchorSideBottom.Control'#7#9'pgGeneral'#21'AnchorSid'
|
|
||||||
+'eBottom.Side'#7#9'asrBottom'#4'Left'#2#6#6'Height'#3#161#0#3'Top'#3#215#0#5
|
|
||||||
+'Width'#3#206#1#5'Align'#7#8'alClient'#20'BorderSpacing.Around'#2#6#7'Captio'
|
|
||||||
+'n'#6'7Debugger specific options (depends on type of debugger)'#12'ClientHei'
|
|
||||||
+'ght'#3#161#0#11'ClientWidth'#3#206#1#11'ParentCtl3D'#8#8'TabOrder'#2#2#0#6
|
|
||||||
+'TPanel'#16'pnlDebugSpecific'#4'Left'#2#6#6'Height'#3#131#0#3'Top'#2#6#5'Wid'
|
|
||||||
+'th'#3#190#1#5'Align'#7#8'alClient'#20'BorderSpacing.Around'#2#6#10'BevelOut'
|
|
||||||
+'er'#7#6'bvNone'#11'BorderWidth'#2#4#11'FullRepaint'#8#8'TabOrder'#2#0#7'Tab'
|
|
||||||
+'Stop'#9#0#0#0#11'TCheckGroup'#25'gcbDebuggerGeneralOptions'#22'AnchorSideLe'
|
|
||||||
+'ft.Control'#7#9'pgGeneral'#21'AnchorSideTop.Control'#7#22'gbAdditionalSearc'
|
|
||||||
+'hPath'#18'AnchorSideTop.Side'#7#9'asrBottom'#23'AnchorSideRight.Control'#7#9
|
|
||||||
,'pgGeneral'#20'AnchorSideRight.Side'#7#9'asrBottom'#4'Left'#2#6#6'Height'#2
|
|
||||||
+'8'#3'Top'#3#153#0#5'Width'#3#206#1#5'Align'#7#5'alTop'#8'AutoFill'#9#20'Bor'
|
|
||||||
+'derSpacing.Around'#2#6#7'Caption'#6#24'Debugger general options'#28'ChildSi'
|
|
||||||
+'zing.LeftRightSpacing'#2#6#28'ChildSizing.TopBottomSpacing'#2#6#29'ChildSiz'
|
|
||||||
+'ing.EnlargeHorizontal'#7#24'crsHomogenousChildResize'#27'ChildSizing.Enlarg'
|
|
||||||
+'eVertical'#7#24'crsHomogenousChildResize'#28'ChildSizing.ShrinkHorizontal'#7
|
|
||||||
+#14'crsScaleChilds'#26'ChildSizing.ShrinkVertical'#7#14'crsScaleChilds'#18'C'
|
|
||||||
+'hildSizing.Layout'#7#29'cclLeftToRightThenTopToBottom'#27'ChildSizing.Contr'
|
|
||||||
+'olsPerLine'#2#1#8'TabOrder'#2#3#0#0#0#5'TPage'#10'pgEventLog'#7'Caption'#6
|
|
||||||
+#10'pgEventLog'#11'ClientWidth'#3#218#1#12'ClientHeight'#3'~'#1#0#9'TGroupBo'
|
|
||||||
+'x'#9'gbGeneral'#4'Left'#2#6#6'Height'#3#132#0#3'Top'#2#6#5'Width'#3#206#1#5
|
|
||||||
+'Align'#7#5'alTop'#20'BorderSpacing.Around'#2#6#7'Caption'#6#7'General'#12'C'
|
|
||||||
+'lientHeight'#3#132#0#11'ClientWidth'#3#206#1#11'ParentCtl3D'#8#8'TabOrder'#2
|
|
||||||
+#0#0#9'TCheckBox'#16'chkClearLogOnRun'#4'Left'#2#4#6'Height'#2#19#3'Top'#2#5
|
|
||||||
+#5'Width'#2'f'#7'Caption'#6#16'Clear log on run'#8'TabOrder'#2#0#0#0#9'TChec'
|
|
||||||
+'kBox'#17'chkLimitLinecount'#4'Left'#2#4#6'Height'#2#19#3'Top'#2#29#5'Width'
|
|
||||||
+#2'j'#7'Caption'#6#18'Limit linecount to'#8'TabOrder'#2#1#0#0#9'TSpinEdit'#16
|
|
||||||
+'seLimitLinecount'#4'Left'#2'.'#6'Height'#2#20#3'Top'#2'6'#5'Width'#2'R'#7'E'
|
|
||||||
+'nabled'#8#8'TabOrder'#2#2#0#0#0#9'TGroupBox'#10'gbMessages'#4'Left'#2#6#6'H'
|
|
||||||
+'eight'#3#232#0#3'Top'#3#144#0#5'Width'#3#206#1#5'Align'#7#8'alClient'#20'Bo'
|
|
||||||
+'rderSpacing.Around'#2#6#7'Caption'#6#8'Messages'#12'ClientHeight'#3#232#0#11
|
|
||||||
+'ClientWidth'#3#206#1#7'Enabled'#8#11'ParentCtl3D'#8#8'TabOrder'#2#1#0#9'TCh'
|
|
||||||
+'eckBox'#21'chkMessagesBreakpoint'#4'Left'#2#4#6'Height'#2#19#3'Top'#2#5#5'W'
|
|
||||||
+'idth'#2'M'#11'AllowGrayed'#9#7'Caption'#6#10'Breakpoint'#8'TabOrder'#2#0#0#0
|
|
||||||
+#9'TCheckBox'#18'chkMessagesProcess'#4'Left'#2#4#6'Height'#2#19#3'Top'#2#29#5
|
|
||||||
+'Width'#2'?'#11'AllowGrayed'#9#7'Caption'#6#7'Process'#8'TabOrder'#2#1#0#0#9
|
|
||||||
+'TCheckBox'#17'chkMessagesThread'#4'Left'#2#4#6'Height'#2#19#3'Top'#2'5'#5'W'
|
|
||||||
+'idth'#2'<'#11'AllowGrayed'#9#7'Caption'#6#6'Thread'#8'TabOrder'#2#2#0#0#9'T'
|
|
||||||
+'CheckBox'#17'chkMessagesModule'#4'Left'#2#4#6'Height'#2#19#3'Top'#2'M'#5'Wi'
|
|
||||||
+'dth'#2'<'#11'AllowGrayed'#9#7'Caption'#6#6'Module'#8'TabOrder'#2#3#0#0#9'TC'
|
|
||||||
+'heckBox'#17'chkMessagesOutput'#4'Left'#2#4#6'Height'#2#19#3'Top'#2'e'#5'Wid'
|
|
||||||
+'th'#2'<'#11'AllowGrayed'#9#7'Caption'#6#6'Output'#8'TabOrder'#2#4#0#0#9'TCh'
|
|
||||||
+'eckBox'#17'chkMessagesWindow'#4'Left'#2#4#6'Height'#2#19#3'Top'#2'}'#5'Widt'
|
|
||||||
+'h'#2'@'#11'AllowGrayed'#9#7'Caption'#6#6'Window'#8'TabOrder'#2#5#0#0#9'TChe'
|
|
||||||
+'ckBox'#20'chkMessagesInterface'#4'Left'#2#4#6'Height'#2#19#3'Top'#3#149#0#5
|
|
||||||
+'Width'#2'G'#11'AllowGrayed'#9#7'Caption'#6#9'Interface'#8'TabOrder'#2#6#0#0
|
|
||||||
+#0#0#5'TPage'#12'pgExceptions'#7'Caption'#6#12'pgExceptions'#11'ClientWidth'
|
|
||||||
+#3#218#1#12'ClientHeight'#3'~'#1#0#9'TGroupBox'#18'bgIgnoreExceptions'#4'Lef'
|
|
||||||
+'t'#2#6#6'Height'#3'Y'#1#3'Top'#2#6#5'Width'#3#206#1#5'Align'#7#8'alClient'
|
|
||||||
+#20'BorderSpacing.Around'#2#6#7'Caption'#6#23'Ignore these exceptions'#12'Cl'
|
|
||||||
+'ientHeight'#3'Y'#1#11'ClientWidth'#3#206#1#11'ParentCtl3D'#8#8'TabOrder'#2#0
|
|
||||||
+#0#13'TCheckListBox'#13'clbExceptions'#20'AnchorSideRight.Side'#7#9'asrBotto'
|
|
||||||
+'m'#4'Left'#2#6#6'Height'#3#0#1#3'Top'#2#6#5'Width'#3#190#1#5'Align'#7#5'alT'
|
|
||||||
+'op'#7'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#8'akBottom'#0#20'BorderSpac'
|
|
||||||
+'ing.Around'#2#6#7'OnClick'#7#18'clbExceptionsCLICK'#8'TabOrder'#2#0#0#0#7'T'
|
|
||||||
+'BitBtn'#15'cmdExceptionAdd'#23'AnchorSideRight.Control'#7#18'cmdExceptionRe'
|
|
||||||
+'move'#24'AnchorSideBottom.Control'#7#18'bgIgnoreExceptions'#21'AnchorSideBo'
|
|
||||||
+'ttom.Side'#7#9'asrBottom'#4'Left'#3'('#1#6'Height'#2#23#3'Top'#3'*'#1#5'Wid'
|
|
||||||
+'th'#2'K'#7'Anchors'#11#7'akRight'#8'akBottom'#0#8'AutoSize'#9#20'BorderSpac'
|
|
||||||
+'ing.Around'#2#6#7'Caption'#6#3'Add'#20'Constraints.MinWidth'#2'K'#9'NumGlyp'
|
|
||||||
+'hs'#2#0#7'OnClick'#7#20'cmdExceptionAddCLICK'#8'TabOrder'#2#1#0#0#7'TBitBtn'
|
|
||||||
+#18'cmdExceptionRemove'#23'AnchorSideRight.Control'#7#18'bgIgnoreExceptions'
|
|
||||||
+#20'AnchorSideRight.Side'#7#9'asrBottom'#24'AnchorSideBottom.Control'#7#18'b'
|
|
||||||
+'gIgnoreExceptions'#21'AnchorSideBottom.Side'#7#9'asrBottom'#4'Left'#3'y'#1#6
|
|
||||||
+'Height'#2#23#3'Top'#3'*'#1#5'Width'#2'K'#7'Anchors'#11#7'akRight'#8'akBotto'
|
|
||||||
+'m'#0#8'AutoSize'#9#20'BorderSpacing.Around'#2#6#7'Caption'#6#6'Remove'#20'C'
|
|
||||||
+'onstraints.MinWidth'#2'K'#7'Enabled'#8#9'NumGlyphs'#2#0#7'OnClick'#7#23'cmd'
|
|
||||||
+'ExceptionRemoveCLICK'#8'TabOrder'#2#2#0#0#0#9'TCheckBox'#19'chkBreakOnExcep'
|
|
||||||
+'tion'#4'Left'#2#6#6'Height'#2#19#3'Top'#3'e'#1#5'Width'#3#206#1#5'Align'#7#8
|
|
||||||
+'alBottom'#11'AllowGrayed'#9#7'Anchors'#11#6'akLeft'#8'akBottom'#0#20'Border'
|
|
||||||
+'Spacing.Around'#2#6#7'Caption'#6#27'Break on Lazarus Exceptions'#8'TabOrder'
|
|
||||||
+#2#1#0#0#0#5'TPage'#9'pgSignals'#7'Caption'#6#9'pgSignals'#11'ClientWidth'#3
|
|
||||||
+#218#1#12'ClientHeight'#3'~'#1#0#9'TGroupBox'#9'gbSignals'#4'Left'#2#6#6'Hei'
|
|
||||||
+'ght'#3'r'#1#3'Top'#2#6#5'Width'#3#206#1#5'Align'#7#8'alClient'#20'BorderSpa'
|
|
||||||
,'cing.Around'#2#6#7'Caption'#6#7'Signals'#12'ClientHeight'#3'`'#1#11'ClientW'
|
|
||||||
+'idth'#3#202#1#11'ParentCtl3D'#8#8'TabOrder'#2#0#0#9'TListView'#9'lvSignals'
|
|
||||||
+#4'Left'#2#6#6'Height'#3'$'#1#3'Top'#2#6#5'Width'#3#190#1#5'Align'#7#5'alTop'
|
|
||||||
+#7'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#8'akBottom'#0#20'BorderSpacing.'
|
|
||||||
+'Around'#2#6#7'Columns'#14#1#7'Caption'#6#4'Name'#5'Width'#3#200#0#0#1#7'Cap'
|
|
||||||
+'tion'#6#2'ID'#0#1#7'Caption'#6#10'Handled by'#5'Width'#2'K'#0#1#7'Caption'#6
|
|
||||||
+#6'Resume'#5'Width'#2'k'#0#0#9'PopupMenu'#7#9'popSignal'#8'TabOrder'#2#0#9'V'
|
|
||||||
+'iewStyle'#7#8'vsReport'#0#0#7'TBitBtn'#15'cmdSignalRemove'#23'AnchorSideRig'
|
|
||||||
+'ht.Control'#7#9'gbSignals'#20'AnchorSideRight.Side'#7#9'asrBottom'#24'Ancho'
|
|
||||||
+'rSideBottom.Control'#7#9'gbSignals'#21'AnchorSideBottom.Side'#7#9'asrBottom'
|
|
||||||
+#4'Left'#3'y'#1#6'Height'#2#23#3'Top'#3'C'#1#5'Width'#2'K'#7'Anchors'#11#7'a'
|
|
||||||
+'kRight'#8'akBottom'#0#8'AutoSize'#9#20'BorderSpacing.Around'#2#6#7'Caption'
|
|
||||||
+#6#6'Remove'#20'Constraints.MinWidth'#2'K'#7'Enabled'#8#9'NumGlyphs'#2#0#8'T'
|
|
||||||
+'abOrder'#2#1#0#0#7'TBitBtn'#12'cmdSignalAdd'#23'AnchorSideRight.Control'#7
|
|
||||||
+#15'cmdSignalRemove'#24'AnchorSideBottom.Control'#7#9'gbSignals'#21'AnchorSi'
|
|
||||||
+'deBottom.Side'#7#9'asrBottom'#4'Left'#3'('#1#6'Height'#2#23#3'Top'#3'C'#1#5
|
|
||||||
+'Width'#2'K'#7'Anchors'#11#7'akRight'#8'akBottom'#0#8'AutoSize'#9#20'BorderS'
|
|
||||||
+'pacing.Around'#2#6#7'Caption'#6#3'Add'#20'Constraints.MinWidth'#2'K'#9'NumG'
|
|
||||||
+'lyphs'#2#0#8'TabOrder'#2#2#0#0#0#0#0#6'TPanel'#8'BtnPanel'#6'Height'#2'#'#3
|
|
||||||
+'Top'#3#152#1#5'Width'#3#226#1#5'Align'#7#8'alBottom'#8'AutoSize'#9#10'Bevel'
|
|
||||||
+'Outer'#7#6'bvNone'#12'ClientHeight'#2'#'#11'ClientWidth'#3#226#1#8'TabOrder'
|
|
||||||
+#2#1#0#7'TBitBtn'#5'cmdOK'#21'AnchorSideBottom.Side'#7#9'asrBottom'#4'Left'#3
|
|
||||||
+'@'#1#6'Height'#2#23#3'Top'#2#6#5'Width'#2'K'#5'Align'#7#7'alRight'#8'AutoSi'
|
|
||||||
+'ze'#9#20'BorderSpacing.Around'#2#6#7'Caption'#6#3'&OK'#20'Constraints.MinWi'
|
|
||||||
+'dth'#2'K'#7'Default'#9#4'Kind'#7#4'bkOK'#9'NumGlyphs'#2#0#7'OnClick'#7#10'c'
|
|
||||||
+'mdOKCLICK'#8'TabOrder'#2#0#0#0#7'TBitBtn'#9'cmdCancel'#20'AnchorSideRight.S'
|
|
||||||
+'ide'#7#9'asrBottom'#21'AnchorSideBottom.Side'#7#9'asrBottom'#4'Left'#3#145#1
|
|
||||||
+#6'Height'#2#23#3'Top'#2#6#5'Width'#2'K'#5'Align'#7#7'alRight'#8'AutoSize'#9
|
|
||||||
+#20'BorderSpacing.Around'#2#6#6'Cancel'#9#7'Caption'#6#6'Cancel'#20'Constrai'
|
|
||||||
+'nts.MinWidth'#2'K'#4'Kind'#7#8'bkCancel'#11'ModalResult'#2#2#9'NumGlyphs'#2
|
|
||||||
+#0#8'TabOrder'#2#1#0#0#0#10'TPopupMenu'#9'popSignal'#4'left'#2#8#3'top'#3#192
|
|
||||||
+#1#0#9'TMenuItem'#19'mnuHandledByProgram'#9'AutoCheck'#9#7'Caption'#6#18'Han'
|
|
||||||
+'dled by Program'#10'GroupIndex'#2#1#9'RadioItem'#9#0#0#9'TMenuItem'#21'mnui'
|
|
||||||
+'HandledByDebugger'#9'AutoCheck'#9#7'Caption'#6#19'Handled by Debugger'#10'G'
|
|
||||||
+'roupIndex'#2#1#9'RadioItem'#9#0#0#9'TMenuItem'#2'N1'#7'Caption'#6#1'-'#0#0#9
|
|
||||||
+'TMenuItem'#16'mnuResumeHandled'#9'AutoCheck'#9#7'Caption'#6#14'Resume Handl'
|
|
||||||
+'ed'#10'GroupIndex'#2#2#9'RadioItem'#9#0#0#9'TMenuItem'#18'mnuResumeUnhandle'
|
|
||||||
+'d'#9'AutoCheck'#9#7'Caption'#6#16'Resume Unhandled'#10'GroupIndex'#2#2#9'Ra'
|
|
||||||
+'dioItem'#9#0#0#0#0
|
|
||||||
]);
|
|
@ -1,507 +0,0 @@
|
|||||||
{
|
|
||||||
/***************************************************************************
|
|
||||||
DebugOptionsFrm.pas
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
***************************************************************************/
|
|
||||||
|
|
||||||
***************************************************************************
|
|
||||||
* *
|
|
||||||
* This source is free software; you can redistribute it and/or modify *
|
|
||||||
* it under the terms of the GNU General Public License as published by *
|
|
||||||
* the Free Software Foundation; either version 2 of the License, or *
|
|
||||||
* (at your option) any later version. *
|
|
||||||
* *
|
|
||||||
* This code is distributed in the hope that it will be useful, but *
|
|
||||||
* WITHOUT ANY WARRANTY; without even the implied warranty of *
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
|
|
||||||
* General Public License for more details. *
|
|
||||||
* *
|
|
||||||
* A copy of the GNU General Public License is available on the World *
|
|
||||||
* Wide Web at <http://www.gnu.org/copyleft/gpl.html>. You can also *
|
|
||||||
* obtain it by writing to the Free Software Foundation, *
|
|
||||||
* Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
|
|
||||||
* *
|
|
||||||
***************************************************************************
|
|
||||||
}
|
|
||||||
unit DebugOptionsFrm;
|
|
||||||
|
|
||||||
{$mode objfpc} {$H+}
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
uses
|
|
||||||
Classes, SysUtils, TypInfo, LResources, Forms, Controls, Graphics, Dialogs,
|
|
||||||
ExtCtrls, StdCtrls, Buttons, ComCtrls, Menus, Spin, CheckLst, FileUtil,
|
|
||||||
PropEdits, ObjectInspector,
|
|
||||||
LazarusIDEStrConsts, InputHistory, IDEProcs, LCLProc,
|
|
||||||
PathEditorDlg, EnvironmentOpts, BaseDebugManager, Debugger, DBGUtils;
|
|
||||||
|
|
||||||
type
|
|
||||||
|
|
||||||
{ TDebuggerOptionsForm }
|
|
||||||
|
|
||||||
TDebuggerOptionsForm = class (TForm)
|
|
||||||
cmdExceptionAdd: TBitBtn;
|
|
||||||
cmdExceptionRemove: TBitBtn;
|
|
||||||
cmdOK: TBitBtn;
|
|
||||||
cmdCancel: TBitBtn;
|
|
||||||
cmdSignalAdd: TBitBtn;
|
|
||||||
cmdSignalRemove: TBitBtn;
|
|
||||||
gcbDebuggerGeneralOptions: TCheckGroup;
|
|
||||||
clbExceptions: TCHECKLISTBOX;
|
|
||||||
chkMessagesInterface: TCHECKBOX;
|
|
||||||
chkClearLogOnRun: TCHECKBOX;
|
|
||||||
chkLimitLineCount: TCHECKBOX;
|
|
||||||
chkMessagesBreakpoint: TCHECKBOX;
|
|
||||||
chkMessagesProcess: TCHECKBOX;
|
|
||||||
chkMessagesThread: TCHECKBOX;
|
|
||||||
chkMessagesModule: TCHECKBOX;
|
|
||||||
chkMessagesOutput: TCHECKBOX;
|
|
||||||
chkMessagesWindow: TCHECKBOX;
|
|
||||||
cmdOpenDebuggerPath: TBUTTON;
|
|
||||||
cmdOpenAdditionalPath: TBUTTON;
|
|
||||||
chkBreakOnException: TCHECKBOX;
|
|
||||||
cmbDebuggerType: TCOMBOBOX;
|
|
||||||
cmbDebuggerPath: TCOMBOBOX;
|
|
||||||
N1: TMENUITEM;
|
|
||||||
BtnPanel: TPanel;
|
|
||||||
pnlDebugSpecific: TPanel;
|
|
||||||
seLimitLinecount: TSPINEDIT;
|
|
||||||
txtAdditionalPath: TEDIT;
|
|
||||||
gbDebuggerType: TGROUPBOX;
|
|
||||||
gbAdditionalSearchPath: TGROUPBOX;
|
|
||||||
gbDebuggerSpecific: TGROUPBOX;
|
|
||||||
gbGeneral: TGROUPBOX;
|
|
||||||
gbMessages: TGROUPBOX;
|
|
||||||
bgIgnoreExceptions: TGROUPBOX;
|
|
||||||
gbSignals: TGROUPBOX;
|
|
||||||
lvSignals: TLISTVIEW;
|
|
||||||
mnuResumeUnhandled: TMENUITEM;
|
|
||||||
mnuHandledByProgram: TMENUITEM;
|
|
||||||
mnuiHandledByDebugger: TMENUITEM;
|
|
||||||
mnuResumeHandled: TMENUITEM;
|
|
||||||
nbDebugOptions: TNOTEBOOK;
|
|
||||||
pgSignals: TPAGE;
|
|
||||||
pgExceptions: TPAGE;
|
|
||||||
pgEventLog: TPAGE;
|
|
||||||
pgGeneral: TPAGE;
|
|
||||||
popSignal: TPOPUPMENU;
|
|
||||||
PropertyGrid: TOIPropertyGrid;
|
|
||||||
procedure DebuggerOptionsFormCREATE(Sender: TObject);
|
|
||||||
procedure DebuggerOptionsFormDESTROY(Sender: TObject);
|
|
||||||
procedure clbExceptionsCLICK (Sender: TObject );
|
|
||||||
procedure cmbDebuggerTypeCHANGE(Sender: TObject);
|
|
||||||
procedure cmdExceptionAddCLICK (Sender: TObject );
|
|
||||||
procedure cmdExceptionRemoveCLICK (Sender: TObject );
|
|
||||||
procedure cmdOKCLICK (Sender: TObject );
|
|
||||||
procedure cmdOpenAdditionalPathClick(Sender: TObject);
|
|
||||||
procedure cmdOpenDebuggerPathCLICK(Sender: TObject);
|
|
||||||
private
|
|
||||||
FPropertyEditorHook: TPropertyEditorHook;
|
|
||||||
FExceptionDeleteList: TStringList;
|
|
||||||
FOldDebuggerPathAndParams: string;
|
|
||||||
FCurDebuggerClass: TDebuggerClass; // currently shown debugger class
|
|
||||||
procedure AddExceptionLine(const AException: TIDEException; AName: String);
|
|
||||||
procedure AddSignalLine(const ASignal: TIDESignal);
|
|
||||||
function CheckValues: boolean;
|
|
||||||
procedure FetchDebuggerClass;
|
|
||||||
procedure FetchDebuggerGeneralOptions;
|
|
||||||
procedure FetchDebuggerSpecificOptions;
|
|
||||||
function GetDebuggerClass: TDebuggerClass;
|
|
||||||
procedure SetDebuggerClass(const AClass: TDebuggerClass);
|
|
||||||
public
|
|
||||||
end;
|
|
||||||
|
|
||||||
var
|
|
||||||
DebuggerOptionsForm: TDebuggerOptionsForm;
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
const
|
|
||||||
HANDLEDBY_CAPTION: array [Boolean] of String = ('Program', 'Debugger');
|
|
||||||
RESUME_CAPTION: array[Boolean] of String = ('Unhandled', 'Handled');
|
|
||||||
|
|
||||||
{ TDebuggerOptionsForm }
|
|
||||||
|
|
||||||
procedure TDebuggerOptionsForm.AddExceptionLine(const AException: TIDEException;
|
|
||||||
AName: String);
|
|
||||||
var
|
|
||||||
idx: Integer;
|
|
||||||
begin
|
|
||||||
if (AName = '') and (AException <> nil)
|
|
||||||
then AName := AException.Name;
|
|
||||||
if AName = '' then Exit;
|
|
||||||
|
|
||||||
idx := clbExceptions.Items.AddObject(AName, AException);
|
|
||||||
clbExceptions.Checked[idx] := (AException = nil) or AException.Enabled;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TDebuggerOptionsForm.AddSignalLine(const ASignal: TIDESignal);
|
|
||||||
var
|
|
||||||
Item: TListItem;
|
|
||||||
begin
|
|
||||||
Item := lvSignals.Items.Add;
|
|
||||||
Item.Caption := ASignal.Name;
|
|
||||||
Item.SubItems.Add(IntToStr(ASignal.ID));
|
|
||||||
Item.SubItems.Add(HANDLEDBY_CAPTION[ASignal.HandledByDebugger]);
|
|
||||||
Item.SubItems.Add(RESUME_CAPTION[ASignal.ResumeHandled]);
|
|
||||||
Item.Data := ASignal;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TDebuggerOptionsForm.CheckValues: boolean;
|
|
||||||
begin
|
|
||||||
Result := false;
|
|
||||||
|
|
||||||
if assigned(FCurDebuggerClass) and FCurDebuggerClass.HasExePath and
|
|
||||||
not CheckExecutable(FOldDebuggerPathAndParams,cmbDebuggerPath.Text,
|
|
||||||
lisEnvOptDlgInvalidDebuggerFilename,
|
|
||||||
lisEnvOptDlgInvalidDebuggerFilenameMsg)
|
|
||||||
then exit;
|
|
||||||
|
|
||||||
Result := true;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TDebuggerOptionsForm.FetchDebuggerClass;
|
|
||||||
var
|
|
||||||
n: PtrInt;
|
|
||||||
DbgClass, CurClass: TDebuggerClass;
|
|
||||||
List: TStringList;
|
|
||||||
begin
|
|
||||||
List := TStringList.Create;
|
|
||||||
List.Sorted := True;
|
|
||||||
|
|
||||||
CurClass := nil;
|
|
||||||
for n := 0 to DebugBoss.DebuggerCount - 1 do
|
|
||||||
begin
|
|
||||||
DbgClass := DebugBoss.Debuggers[n];
|
|
||||||
List.AddObject(DbgClass.Caption, TObject(n));
|
|
||||||
if (FCurDebuggerClass = nil)
|
|
||||||
and (CompareText(DbgClass.ClassName, EnvironmentOptions.DebuggerClass) = 0)
|
|
||||||
then CurClass := DbgClass;
|
|
||||||
end;
|
|
||||||
|
|
||||||
cmbDebuggerType.Items.Assign(List);
|
|
||||||
FreeAndNil(List);
|
|
||||||
|
|
||||||
SetDebuggerClass(CurClass);
|
|
||||||
if FCurDebuggerClass = nil
|
|
||||||
then SetComboBoxText(cmbDebuggerType, '(none)')
|
|
||||||
else SetComboBoxText(cmbDebuggerType, FCurDebuggerClass.Caption);
|
|
||||||
|
|
||||||
txtAdditionalPath.Text:=EnvironmentOptions.DebuggerSearchPath;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TDebuggerOptionsForm.FetchDebuggerGeneralOptions;
|
|
||||||
begin
|
|
||||||
// IMPORTANT if more items are added the indexes must be updated here!
|
|
||||||
gcbDebuggerGeneralOptions.Checked[0] := EnvironmentOptions.DebuggerShowStopMessage;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TDebuggerOptionsForm.FetchDebuggerSpecificOptions;
|
|
||||||
var
|
|
||||||
S: String;
|
|
||||||
i: Integer;
|
|
||||||
Filename: string;
|
|
||||||
NewFilename: string;
|
|
||||||
begin
|
|
||||||
with cmbDebuggerPath.Items do begin
|
|
||||||
BeginUpdate;
|
|
||||||
Assign(EnvironmentOptions.DebuggerFileHistory);
|
|
||||||
if (Count = 0)
|
|
||||||
and (FCurDebuggerClass <> nil)
|
|
||||||
then begin
|
|
||||||
S := FCurDebuggerClass.ExePaths;
|
|
||||||
while S <> '' do
|
|
||||||
begin
|
|
||||||
Add(GetPart([], [';'], S));
|
|
||||||
if S <> '' then System.Delete(S, 1, 1);
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
EndUpdate;
|
|
||||||
end;
|
|
||||||
|
|
||||||
Filename:=cmbDebuggerPath.Text;
|
|
||||||
if Filename='' then begin
|
|
||||||
for i:=0 to cmbDebuggerPath.Items.Count-1 do begin
|
|
||||||
NewFilename:=cmbDebuggerPath.Items[i];
|
|
||||||
if FileExistsCached(NewFilename) then begin
|
|
||||||
Filename:=NewFilename;
|
|
||||||
break;
|
|
||||||
end;
|
|
||||||
NewFilename:=FindDefaultExecutablePath(ExtractFileName(Filename));
|
|
||||||
if NewFilename<>'' then begin
|
|
||||||
Filename:=NewFilename;
|
|
||||||
break;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
SetComboBoxText(cmbDebuggerPath,Filename,20);
|
|
||||||
|
|
||||||
PropertyGrid.Selection.Clear;
|
|
||||||
if FCurDebuggerClass<>nil then begin
|
|
||||||
PropertyGrid.Selection.Add(FCurDebuggerClass.GetProperties);
|
|
||||||
end;
|
|
||||||
PropertyGrid.BuildPropertyList;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TDebuggerOptionsForm.GetDebuggerClass: TDebuggerClass;
|
|
||||||
var
|
|
||||||
idx: PtrInt;
|
|
||||||
begin
|
|
||||||
Result := nil;
|
|
||||||
|
|
||||||
idx := cmbDebuggerType.ItemIndex;
|
|
||||||
if idx = -1 then Exit;
|
|
||||||
idx := PtrInt(cmbDebuggerType.Items.Objects[idx]);
|
|
||||||
|
|
||||||
if idx = -1 then Exit;
|
|
||||||
Result := DebugBoss.Debuggers[idx];
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TDebuggerOptionsForm.SetDebuggerClass(const AClass: TDebuggerClass);
|
|
||||||
begin
|
|
||||||
if FCurDebuggerClass = AClass then Exit;
|
|
||||||
FCurDebuggerClass := AClass;
|
|
||||||
FetchDebuggerSpecificOptions;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TDebuggerOptionsForm.clbExceptionsCLICK (Sender: TObject );
|
|
||||||
begin
|
|
||||||
cmdExceptionRemove.Enabled := clbExceptions.ItemIndex <> -1;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TDebuggerOptionsForm.cmbDebuggerTypeCHANGE(Sender: TObject);
|
|
||||||
begin
|
|
||||||
SetDebuggerClass(GetDebuggerClass);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TDebuggerOptionsForm.cmdExceptionAddCLICK(Sender: TObject);
|
|
||||||
var
|
|
||||||
idx: Integer;
|
|
||||||
S: String;
|
|
||||||
begin
|
|
||||||
if not InputQuery('Add Exception', 'Enter the name of the exception', S)
|
|
||||||
then Exit;
|
|
||||||
|
|
||||||
if clbExceptions.Items.IndexOf(S) = -1
|
|
||||||
then begin
|
|
||||||
idx := FExceptionDeleteList.IndexOf(S);
|
|
||||||
if idx = -1
|
|
||||||
then begin
|
|
||||||
AddExceptionLine(nil, S);
|
|
||||||
end
|
|
||||||
else begin
|
|
||||||
AddExceptionLine(TIDEException(FExceptionDeleteList.Objects[idx]), S);
|
|
||||||
FExceptionDeleteList.Delete(idx);
|
|
||||||
end;
|
|
||||||
end
|
|
||||||
else begin
|
|
||||||
MessageDlg('Duplicate Exception name', mtError, [mbOK], 0);
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TDebuggerOptionsForm.cmdExceptionRemoveCLICK(Sender: TObject);
|
|
||||||
var
|
|
||||||
idx: Integer;
|
|
||||||
obj: TObject;
|
|
||||||
begin
|
|
||||||
idx := clbExceptions.ItemIndex;
|
|
||||||
if idx <> -1
|
|
||||||
then begin
|
|
||||||
obj := clbExceptions.Items.Objects[idx];
|
|
||||||
if obj <> nil
|
|
||||||
then FExceptionDeleteList.AddObject(clbExceptions.Items[idx], obj);
|
|
||||||
clbExceptions.Items.Delete(idx);
|
|
||||||
end;
|
|
||||||
cmdExceptionRemove.Enabled := clbExceptions.ItemIndex <> -1;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TDebuggerOptionsForm.cmdOKCLICK(Sender: TObject );
|
|
||||||
var
|
|
||||||
n: Integer;
|
|
||||||
ie: TIDEException;
|
|
||||||
begin
|
|
||||||
if not CheckValues then exit;
|
|
||||||
|
|
||||||
for n := 0 to FExceptionDeleteList.Count - 1 do
|
|
||||||
FExceptionDeleteList.Objects[n].Free;
|
|
||||||
|
|
||||||
for n := 0 to clbExceptions.Items.Count - 1 do
|
|
||||||
begin
|
|
||||||
ie := TIDEException(clbExceptions.Items.Objects[n]);
|
|
||||||
if ie = nil
|
|
||||||
then begin
|
|
||||||
ie := DebugBoss.Exceptions.Add(clbExceptions.Items[n]);
|
|
||||||
ie.Enabled := clbExceptions.Checked[n];
|
|
||||||
end
|
|
||||||
else begin
|
|
||||||
ie.BeginUpdate;
|
|
||||||
try
|
|
||||||
ie.Name := clbExceptions.Items[n];
|
|
||||||
ie.Enabled := clbExceptions.Checked[n];
|
|
||||||
finally
|
|
||||||
ie.EndUpdate;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
EnvironmentOptions.DebuggerFilename:=cmbDebuggerPath.Text;
|
|
||||||
EnvironmentOptions.DebuggerFileHistory.Assign(cmbDebuggerPath.Items);
|
|
||||||
EnvironmentOptions.DebuggerSearchPath:=
|
|
||||||
TrimSearchPath(txtAdditionalPath.Text,'');
|
|
||||||
// IMPORTANT if more items are added the indexes must be updated here!
|
|
||||||
EnvironmentOptions.DebuggerShowStopMessage := gcbDebuggerGeneralOptions.Checked[0];
|
|
||||||
|
|
||||||
if FCurDebuggerClass = nil
|
|
||||||
then EnvironmentOptions.DebuggerClass := ''
|
|
||||||
else EnvironmentOptions.DebuggerClass := FCurDebuggerClass.ClassName;
|
|
||||||
|
|
||||||
ModalResult:=mrOk;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TDebuggerOptionsForm.cmdOpenAdditionalPathClick(Sender: TObject);
|
|
||||||
begin
|
|
||||||
PathEditorDialog.Path:=txtAdditionalPath.Text;
|
|
||||||
PathEditorDialog.Templates:=SetDirSeparators(
|
|
||||||
'$(LazarusDir)/include/$(TargetOS)'
|
|
||||||
+';$(FPCSrcDir)/rtl/inc/'
|
|
||||||
+';$(FPCSrcDir)/rtl/$(SrcOS)'
|
|
||||||
+';$(FPCSrcDir)/rtl/$(TargetOS)'
|
|
||||||
);
|
|
||||||
if PathEditorDialog.ShowModal=mrOk then
|
|
||||||
txtAdditionalPath.Text:=PathEditorDialog.Path;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TDebuggerOptionsForm.cmdOpenDebuggerPathCLICK(Sender: TObject);
|
|
||||||
var
|
|
||||||
OpenDialog: TOpenDialog;
|
|
||||||
AFilename: string;
|
|
||||||
begin
|
|
||||||
OpenDialog:=TOpenDialog.Create(nil);
|
|
||||||
try
|
|
||||||
InputHistories.ApplyFileDialogSettings(OpenDialog);
|
|
||||||
OpenDialog.Options:=OpenDialog.Options+[ofPathMustExist];
|
|
||||||
OpenDialog.Title:=lisChooseDebuggerPath;
|
|
||||||
|
|
||||||
if OpenDialog.Execute then begin
|
|
||||||
AFilename:=CleanAndExpandFilename(OpenDialog.Filename);
|
|
||||||
SetComboBoxText(cmbDebuggerPath,AFilename);
|
|
||||||
CheckExecutable(FOldDebuggerPathAndParams,cmbDebuggerPath.Text,
|
|
||||||
lisEnvOptDlgInvalidDebuggerFilename,
|
|
||||||
lisEnvOptDlgInvalidDebuggerFilenameMsg);
|
|
||||||
end;
|
|
||||||
InputHistories.StoreFileDialogSettings(OpenDialog);
|
|
||||||
finally
|
|
||||||
OpenDialog.Free;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TDebuggerOptionsForm.DebuggerOptionsFormCREATE(Sender: TObject);
|
|
||||||
var
|
|
||||||
n: Integer;
|
|
||||||
begin
|
|
||||||
//translations
|
|
||||||
pgGeneral.Caption := lisMenuInsertGeneral;
|
|
||||||
gbDebuggerType.Caption := dlgDebugType;
|
|
||||||
gbAdditionalSearchPath.Caption := lisDebugOptionsFrmAdditionalSearchPath;
|
|
||||||
gcbDebuggerGeneralOptions.Caption := lisDebugOptionsFrmDebuggerGeneralOptions;
|
|
||||||
gcbDebuggerGeneralOptions.Items.Add(lisDebugOptionsFrmShowMessageOnStop);
|
|
||||||
gbDebuggerSpecific.Caption := lisDebugOptionsFrmDebuggerSpecific;
|
|
||||||
|
|
||||||
pgEventLog.Caption := lisDebugOptionsFrmEventLog;
|
|
||||||
gbGeneral.Caption := lisMenuInsertGeneral;
|
|
||||||
chkClearLogOnRun.Caption := lisDebugOptionsFrmClearLogOnRun;
|
|
||||||
chkLimitLinecount.Caption := lisDebugOptionsFrmLimitLinecountTo;
|
|
||||||
gbMessages.Caption := lisMenuViewMessages;
|
|
||||||
chkMessagesBreakpoint.Caption := lisDebugOptionsFrmBreakpoint;
|
|
||||||
chkMessagesProcess.Caption := lisDebugOptionsFrmProcess;
|
|
||||||
chkMessagesThread.Caption := lisDebugOptionsFrmThread;
|
|
||||||
chkMessagesModule.Caption := lisDebugOptionsFrmModule;
|
|
||||||
chkMessagesOutput.Caption := lisDebugOptionsFrmOutput;
|
|
||||||
chkMessagesWindow.Caption := lisDebugOptionsFrmWindow;
|
|
||||||
chkMessagesInterface.Caption := lisDebugOptionsFrmInterface;
|
|
||||||
|
|
||||||
pgExceptions.Caption := lisDebugOptionsFrmLanguageExceptions;
|
|
||||||
bgIgnoreExceptions.Caption := lisDebugOptionsFrmIgnoreTheseExceptions;
|
|
||||||
cmdExceptionRemove.Caption := lisExtToolRemove;
|
|
||||||
cmdExceptionAdd.Caption := lisCodeTemplAdd;
|
|
||||||
cmdExceptionRemove.LoadGlyphFromLazarusResource('laz_delete');
|
|
||||||
cmdExceptionAdd.LoadGlyphFromLazarusResource('laz_add');
|
|
||||||
chkBreakOnException.Caption := lisDebugOptionsFrmBreakOnLazarusExceptions;
|
|
||||||
|
|
||||||
pgSignals.Caption := lisDebugOptionsFrmOSExceptions;
|
|
||||||
gbSignals.Caption := lisDebugOptionsFrmSignals;
|
|
||||||
lvSignals.Column[0].Caption := lisDebugOptionsFrmName;
|
|
||||||
lvSignals.Column[1].Caption := lisDebugOptionsFrmID;
|
|
||||||
lvSignals.Column[2].Caption := lisDebugOptionsFrmHandledBy;
|
|
||||||
lvSignals.Column[3].Caption := lisDebugOptionsFrmResume;
|
|
||||||
cmdSignalAdd.Caption := lisCodeTemplAdd;
|
|
||||||
cmdSignalRemove.Caption := lisExtToolRemove;
|
|
||||||
cmdSignalAdd.LoadGlyphFromLazarusResource('laz_add');
|
|
||||||
cmdSignalRemove.LoadGlyphFromLazarusResource('laz_delete');
|
|
||||||
|
|
||||||
mnuHandledByProgram.Caption := lisDebugOptionsFrmHandledByProgram;
|
|
||||||
mnuiHandledByDebugger.Caption := lisDebugOptionsFrmHandledByDebugger;
|
|
||||||
mnuResumeHandled.Caption := lisDebugOptionsFrmResumeHandled;
|
|
||||||
mnuResumeUnhandled.Caption := lisDebugOptionsFrmResumeUnhandled;
|
|
||||||
|
|
||||||
cmdOK.Caption:=lisOkBtn;
|
|
||||||
cmdCancel.Caption:=dlgCancel;
|
|
||||||
cmdOK.LoadGlyphFromLazarusResource('btn_ok');
|
|
||||||
cmdCancel.LoadGlyphFromLazarusResource('btn_cancel');
|
|
||||||
|
|
||||||
FCurDebuggerClass := nil;
|
|
||||||
|
|
||||||
FExceptionDeleteList := TStringList.Create;
|
|
||||||
FExceptionDeleteList.Sorted := True;
|
|
||||||
|
|
||||||
for n := 0 to DebugBoss.Exceptions.Count - 1 do
|
|
||||||
begin
|
|
||||||
AddExceptionLine(DebugBoss.Exceptions[n], '');
|
|
||||||
end;
|
|
||||||
|
|
||||||
for n := 0 to DebugBoss.Signals.Count - 1 do
|
|
||||||
begin
|
|
||||||
AddSignalLine(DebugBoss.Signals[n]);
|
|
||||||
end;
|
|
||||||
|
|
||||||
// create the PropertyEditorHook (the interface to the properties)
|
|
||||||
FPropertyEditorHook:=TPropertyEditorHook.Create;
|
|
||||||
// create the PropertyGrid
|
|
||||||
PropertyGrid:=TOIPropertyGrid.CreateWithParams(Self,FPropertyEditorHook
|
|
||||||
,[tkUnknown, tkInteger, tkChar, tkEnumeration, tkFloat, tkSet{, tkMethod}
|
|
||||||
, tkSString, tkLString, tkAString, tkWString, tkVariant
|
|
||||||
{, tkArray, tkRecord, tkInterface}, tkClass, tkObject, tkWChar, tkBool
|
|
||||||
, tkInt64, tkQWord],
|
|
||||||
0);
|
|
||||||
with PropertyGrid do begin
|
|
||||||
Name:='PropertyGrid';
|
|
||||||
// Use panel for border
|
|
||||||
Parent := pnlDebugSpecific; //gbDebuggerSpecific;
|
|
||||||
Visible := True;
|
|
||||||
Align := alClient;
|
|
||||||
Layout := oilVertical;
|
|
||||||
RowSpacing := 4;
|
|
||||||
end;
|
|
||||||
|
|
||||||
FOldDebuggerPathAndParams:=EnvironmentOptions.DebuggerFilename;
|
|
||||||
cmbDebuggerPath.Text:=FOldDebuggerPathAndParams;
|
|
||||||
FetchDebuggerClass;
|
|
||||||
FetchDebuggerGeneralOptions;
|
|
||||||
|
|
||||||
// Fix designtime changes
|
|
||||||
nbDebugOptions.PageIndex := 0;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TDebuggerOptionsForm.DebuggerOptionsFormDESTROY(Sender: TObject);
|
|
||||||
begin
|
|
||||||
FreeAndNil(FExceptionDeleteList);
|
|
||||||
FreeAndNil(FPropertyEditorHook);
|
|
||||||
end;
|
|
||||||
|
|
||||||
initialization
|
|
||||||
{$I debugoptionsfrm.lrs}
|
|
||||||
|
|
||||||
end.
|
|
||||||
|
|
@ -45,7 +45,7 @@ uses
|
|||||||
LCLType, LCLIntf,
|
LCLType, LCLIntf,
|
||||||
SynEdit, CodeCache, CodeToolManager,
|
SynEdit, CodeCache, CodeToolManager,
|
||||||
MenuIntf, IDECommands, LazIDEIntf, ProjectIntf,
|
MenuIntf, IDECommands, LazIDEIntf, ProjectIntf,
|
||||||
LazConf, DebugOptionsFrm,
|
LazConf,
|
||||||
CompilerOptions, EditorOptions, EnvironmentOpts, ProjectOpts, KeyMapping, SourceEditor,
|
CompilerOptions, EditorOptions, EnvironmentOpts, ProjectOpts, KeyMapping, SourceEditor,
|
||||||
ProjectDefs, Project, IDEProcs, InputHistory, Debugger,
|
ProjectDefs, Project, IDEProcs, InputHistory, Debugger,
|
||||||
IDEOptionDefs, LazarusIDEStrConsts,
|
IDEOptionDefs, LazarusIDEStrConsts,
|
||||||
@ -74,7 +74,6 @@ type
|
|||||||
// Menu events
|
// Menu events
|
||||||
procedure mnuViewDebugDialogClick(Sender: TObject);
|
procedure mnuViewDebugDialogClick(Sender: TObject);
|
||||||
procedure mnuResetDebuggerClicked(Sender: TObject);
|
procedure mnuResetDebuggerClicked(Sender: TObject);
|
||||||
procedure mnuDebuggerOptionsClick(Sender: TObject);
|
|
||||||
|
|
||||||
// SrcNotebook events
|
// SrcNotebook events
|
||||||
function OnSrcNotebookAddWatchesAtCursor(Sender: TObject): boolean;
|
function OnSrcNotebookAddWatchesAtCursor(Sender: TObject): boolean;
|
||||||
@ -1137,18 +1136,6 @@ begin
|
|||||||
ResetDebugger;
|
ResetDebugger;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TDebugManager.mnuDebuggerOptionsClick(Sender: TObject);
|
|
||||||
var
|
|
||||||
DebuggerOptionsForm: TDebuggerOptionsForm;
|
|
||||||
begin
|
|
||||||
DebuggerOptionsForm := TDebuggerOptionsForm.Create(nil);
|
|
||||||
if DebuggerOptionsForm.ShowModal=mrOk then begin
|
|
||||||
// save to disk
|
|
||||||
EnvironmentOptions.Save(false);
|
|
||||||
end;
|
|
||||||
DebuggerOptionsForm.Free;
|
|
||||||
end;
|
|
||||||
|
|
||||||
|
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
// ScrNoteBook events
|
// ScrNoteBook events
|
||||||
@ -1583,8 +1570,6 @@ begin
|
|||||||
itmRunMenuEvaluate.Tag := Ord(ddtEvaluate);
|
itmRunMenuEvaluate.Tag := Ord(ddtEvaluate);
|
||||||
// itmRunMenuAddWatch.OnClick := @;
|
// itmRunMenuAddWatch.OnClick := @;
|
||||||
// itmRunMenuAddBpSource.OnClick := @;
|
// itmRunMenuAddBpSource.OnClick := @;
|
||||||
|
|
||||||
itmEnvDebuggerOptions.OnClick := @mnuDebuggerOptionsClick;
|
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
@ -306,7 +306,7 @@ type
|
|||||||
itmEnvGeneralOptions: TIDEMenuCommand;
|
itmEnvGeneralOptions: TIDEMenuCommand;
|
||||||
//itmEnvEditorOptions: TIDEMenuCommand;
|
//itmEnvEditorOptions: TIDEMenuCommand;
|
||||||
itmEnvCodeTemplates: TIDEMenuCommand;
|
itmEnvCodeTemplates: TIDEMenuCommand;
|
||||||
itmEnvDebuggerOptions: TIDEMenuCommand;
|
//itmEnvDebuggerOptions: TIDEMenuCommand;
|
||||||
//itmEnvCodeToolsOptions: TIDEMenuCommand;
|
//itmEnvCodeToolsOptions: TIDEMenuCommand;
|
||||||
itmEnvCodeToolsDefinesEditor: TIDEMenuCommand;
|
itmEnvCodeToolsDefinesEditor: TIDEMenuCommand;
|
||||||
//itmIDECacheSection: TIDEMenuSection;
|
//itmIDECacheSection: TIDEMenuSection;
|
||||||
|
@ -738,8 +738,6 @@ begin
|
|||||||
lisMenuGeneralOptions,'menu_environment_options');
|
lisMenuGeneralOptions,'menu_environment_options');
|
||||||
CreateMenuItem(ParentMI,itmEnvCodeTemplates,'itmEnvCodeTemplates',
|
CreateMenuItem(ParentMI,itmEnvCodeTemplates,'itmEnvCodeTemplates',
|
||||||
lisMenuEditCodeTemplates,'');
|
lisMenuEditCodeTemplates,'');
|
||||||
CreateMenuItem(ParentMI,itmEnvDebuggerOptions,'itmEnvDebuggerOptions',
|
|
||||||
lisMenDebuggerOptions,'debugger_options');
|
|
||||||
CreateMenuItem(ParentMI,itmEnvCodeToolsDefinesEditor,
|
CreateMenuItem(ParentMI,itmEnvCodeToolsDefinesEditor,
|
||||||
'itmEnvCodeToolsDefinesEditor',lisMenuCodeToolsDefinesEditor,
|
'itmEnvCodeToolsDefinesEditor',lisMenuCodeToolsDefinesEditor,
|
||||||
'menu_codetoolsdefineseditor');
|
'menu_codetoolsdefineseditor');
|
||||||
|
Loading…
Reference in New Issue
Block a user