added option to omit debugged program stopped from Andrew Haines

git-svn-id: trunk@6665 -
This commit is contained in:
mattias 2005-01-22 20:48:13 +00:00
parent e96bcfac7c
commit dc85cead86
5 changed files with 197 additions and 122 deletions

View File

@ -1150,9 +1150,11 @@ begin
dsStop: begin
if (OldState<>dsIdle)
then begin
if EnvironmentOptions.DebuggerShowStopMessage then begin
MessageDlg(lisExecutionStopped,
Format(lisExecutionStoppedOn, [#13#13]),
mtInformation, [mbOK],0);
end;
FDebugger.FileName := '';
end;
end;
@ -1944,6 +1946,9 @@ end.
{ =============================================================================
$Log$
Revision 1.83 2005/01/22 20:48:13 mattias
added option to omit debugged program stopped from Andrew Haines
Revision 1.82 2005/01/15 13:44:03 vincents
use xml units from fpc, if not compiling with fpc 1.0

View File

@ -7,14 +7,15 @@ object DebuggerOptionsForm: TDebuggerOptionsForm
OnDestroy = DebuggerOptionsFormDESTROY
PixelsPerInch = 90
Position = poScreenCenter
HorzScrollBar.Page = 481
VertScrollBar.Page = 443
HorzScrollBar.Page = 479
VertScrollBar.Page = 441
Left = 411
Height = 442
Top = 185
Width = 480
object nbDebugOptions: TNotebook
Align = alTop
BorderSpacing.OnChange = nil
PageIndex = 0
Height = 398
Width = 480
@ -27,6 +28,7 @@ object DebuggerOptionsForm: TDebuggerOptionsForm
Top = 28
Width = 476
object gbDebuggerType: TGroupBox
BorderSpacing.OnChange = nil
Caption = 'Debugger type and path'
ClientHeight = 69
ClientWidth = 468
@ -38,6 +40,7 @@ object DebuggerOptionsForm: TDebuggerOptionsForm
Top = 8
Width = 472
object cmbDebuggerType: TComboBox
BorderSpacing.OnChange = nil
MaxLength = 0
OnChange = cmbDebuggerTypeCHANGE
ParentCtl3D = False
@ -48,6 +51,7 @@ object DebuggerOptionsForm: TDebuggerOptionsForm
Width = 268
end
object cmbDebuggerPath: TComboBox
BorderSpacing.OnChange = nil
MaxLength = 0
ParentCtl3D = False
TabOrder = 1
@ -57,6 +61,7 @@ object DebuggerOptionsForm: TDebuggerOptionsForm
Width = 428
end
object cmdOpenDebuggerPath: TButton
BorderSpacing.OnChange = nil
Caption = '...'
OnClick = cmdOpenDebuggerPathCLICK
TabOrder = 2
@ -67,6 +72,7 @@ object DebuggerOptionsForm: TDebuggerOptionsForm
end
end
object gbAdditionalSearchPath: TGroupBox
BorderSpacing.OnChange = nil
Caption = 'Additional search path'
ClientHeight = 35
ClientWidth = 468
@ -78,6 +84,7 @@ object DebuggerOptionsForm: TDebuggerOptionsForm
Top = 100
Width = 472
object txtAdditionalPath: TEdit
BorderSpacing.OnChange = nil
TabOrder = 0
Left = 6
Height = 25
@ -85,6 +92,7 @@ object DebuggerOptionsForm: TDebuggerOptionsForm
Width = 428
end
object cmdOpenAdditionalPath: TButton
BorderSpacing.OnChange = nil
Caption = '...'
OnClick = cmdOpenAdditionalPathClick
TabOrder = 1
@ -95,29 +103,46 @@ object DebuggerOptionsForm: TDebuggerOptionsForm
end
end
object gbDebuggerSpecific: TGroupBox
BorderSpacing.OnChange = nil
Caption = 'Debugger specific options (depends on type of debugger)'
ClientHeight = 187
ClientHeight = 234
ClientWidth = 468
ParentColor = True
ParentCtl3D = False
TabOrder = 2
Left = 2
Height = 204
Top = 156
Height = 251
Top = 212
Width = 472
object pnlDebugSpecific: TPanel
Align = alClient
BorderSpacing.OnChange = nil
BevelOuter = bvNone
BorderWidth = 4
ClientHeight = 187
ClientHeight = 234
ClientWidth = 468
FullRepaint = False
TabOrder = 0
TabStop = True
Height = 187
Height = 234
Width = 468
end
end
object gcbDebuggerGeneralOptions: TCheckGroup
BorderSpacing.OnChange = nil
Caption = 'Debugger general options'
Items.Strings = (
'Show message on stop'
)
ParentColor = True
Left = 2
Height = 48
Top = 156
Width = 472
Data = {
0100000002
}
end
end
object pgEventLog: TPage
Caption = 'Event Log'
@ -128,6 +153,7 @@ object DebuggerOptionsForm: TDebuggerOptionsForm
Top = 28
Width = 476
object gbGeneral: TGroupBox
BorderSpacing.OnChange = nil
Caption = 'General'
ClientHeight = 132
ClientWidth = 230
@ -140,7 +166,7 @@ object DebuggerOptionsForm: TDebuggerOptionsForm
Width = 230
object chkClearLogOnRun: TCheckBox
AllowGrayed = True
AutoSize = True
BorderSpacing.OnChange = nil
Caption = 'Clear log on run'
TabOrder = 0
Left = 4
@ -150,7 +176,7 @@ object DebuggerOptionsForm: TDebuggerOptionsForm
end
object chkLimitLinecount: TCheckBox
AllowGrayed = True
AutoSize = True
BorderSpacing.OnChange = nil
Caption = 'Limit linecount to'
TabOrder = 1
Left = 4
@ -159,16 +185,13 @@ object DebuggerOptionsForm: TDebuggerOptionsForm
Width = 119
end
object seLimitLinecount: TSpinEdit
BorderSpacing.OnChange = nil
Climb_Rate = 7.10933840589535E-34
Enabled = False
MaxValue = 7.10933840589535E-34
MinValue = 7.10933840589535E-34
TabOrder = 2
Value = 7.10933840589535E-34
Climb_Rate = 7.10933840589535E-34
MinValue = 7.10933840589535E-34
MaxValue = 7.10933840589535E-34
Value = 7.10933840589535E-34
Left = 28
Height = 20
Top = 53
@ -176,6 +199,7 @@ object DebuggerOptionsForm: TDebuggerOptionsForm
end
end
object gbMessages: TGroupBox
BorderSpacing.OnChange = nil
Caption = 'Messages'
ClientHeight = 188
ClientWidth = 232
@ -189,7 +213,7 @@ object DebuggerOptionsForm: TDebuggerOptionsForm
Width = 232
object chkMessagesBreakpoint: TCheckBox
AllowGrayed = True
AutoSize = True
BorderSpacing.OnChange = nil
Caption = 'Breakpoint'
TabOrder = 0
Left = 4
@ -199,7 +223,7 @@ object DebuggerOptionsForm: TDebuggerOptionsForm
end
object chkMessagesProcess: TCheckBox
AllowGrayed = True
AutoSize = True
BorderSpacing.OnChange = nil
Caption = 'Process'
TabOrder = 1
Left = 4
@ -209,7 +233,7 @@ object DebuggerOptionsForm: TDebuggerOptionsForm
end
object chkMessagesThread: TCheckBox
AllowGrayed = True
AutoSize = True
BorderSpacing.OnChange = nil
Caption = 'Thread'
TabOrder = 2
Left = 4
@ -219,7 +243,7 @@ object DebuggerOptionsForm: TDebuggerOptionsForm
end
object chkMessagesModule: TCheckBox
AllowGrayed = True
AutoSize = True
BorderSpacing.OnChange = nil
Caption = 'Module'
TabOrder = 3
Left = 4
@ -229,7 +253,7 @@ object DebuggerOptionsForm: TDebuggerOptionsForm
end
object chkMessagesOutput: TCheckBox
AllowGrayed = True
AutoSize = True
BorderSpacing.OnChange = nil
Caption = 'Output'
TabOrder = 4
Left = 4
@ -239,7 +263,7 @@ object DebuggerOptionsForm: TDebuggerOptionsForm
end
object chkMessagesWindow: TCheckBox
AllowGrayed = True
AutoSize = True
BorderSpacing.OnChange = nil
Caption = 'Window'
TabOrder = 5
Left = 4
@ -249,7 +273,7 @@ object DebuggerOptionsForm: TDebuggerOptionsForm
end
object chkMessagesInterface: TCheckBox
AllowGrayed = True
AutoSize = True
BorderSpacing.OnChange = nil
Caption = 'Interface'
TabOrder = 6
Left = 4
@ -268,6 +292,7 @@ object DebuggerOptionsForm: TDebuggerOptionsForm
Top = 28
Width = 476
object bgIgnoreExceptions: TGroupBox
BorderSpacing.OnChange = nil
Caption = 'Ignore these exceptions'
ClientHeight = 328
ClientWidth = 468
@ -279,6 +304,7 @@ object DebuggerOptionsForm: TDebuggerOptionsForm
Top = 8
Width = 468
object cmdExceptionRemove: TButton
BorderSpacing.OnChange = nil
Caption = 'Remove'
Enabled = False
OnClick = cmdExceptionRemoveCLICK
@ -289,6 +315,7 @@ object DebuggerOptionsForm: TDebuggerOptionsForm
Width = 75
end
object cmdExceptionAdd: TButton
BorderSpacing.OnChange = nil
Caption = 'Add'
OnClick = cmdExceptionAddCLICK
TabOrder = 1
@ -298,6 +325,7 @@ object DebuggerOptionsForm: TDebuggerOptionsForm
Width = 75
end
object clbExceptions: TCheckListBox
BorderSpacing.OnChange = nil
OnClick = clbExceptionsCLICK
TabOrder = 2
TopIndex = -1
@ -309,7 +337,7 @@ object DebuggerOptionsForm: TDebuggerOptionsForm
end
object chkBreakOnException: TCheckBox
AllowGrayed = True
AutoSize = True
BorderSpacing.OnChange = nil
Caption = 'Break on Lazarus Exceptions'
TabOrder = 1
Left = 2
@ -327,6 +355,7 @@ object DebuggerOptionsForm: TDebuggerOptionsForm
Top = 28
Width = 476
object gbSignals: TGroupBox
BorderSpacing.OnChange = nil
Caption = 'Signals'
ClientHeight = 354
ClientWidth = 468
@ -338,6 +367,7 @@ object DebuggerOptionsForm: TDebuggerOptionsForm
Top = 8
Width = 468
object cmdSignalRemove: TButton
BorderSpacing.OnChange = nil
Caption = 'Remove'
Enabled = False
TabOrder = 0
@ -347,6 +377,7 @@ object DebuggerOptionsForm: TDebuggerOptionsForm
Width = 75
end
object cmdSignalAdd: TButton
BorderSpacing.OnChange = nil
Caption = 'Add'
TabOrder = 1
Left = 296
@ -355,6 +386,7 @@ object DebuggerOptionsForm: TDebuggerOptionsForm
Width = 75
end
object lvSignals: TListView
BorderSpacing.OnChange = nil
Columns = <
item
Caption = 'Name'
@ -382,6 +414,7 @@ object DebuggerOptionsForm: TDebuggerOptionsForm
end
end
object cmdCancel: TButton
BorderSpacing.OnChange = nil
Cancel = True
Caption = 'Cancel'
ModalResult = 2
@ -392,6 +425,7 @@ object DebuggerOptionsForm: TDebuggerOptionsForm
Width = 75
end
object cmdOK: TButton
BorderSpacing.OnChange = nil
Caption = 'OK'
Default = True
OnClick = cmdOKCLICK

View File

@ -5,107 +5,120 @@ LazarusResources.Add('TDebuggerOptionsForm','FORMDATA',[
+'sDialog'#7'Caption'#6#16'Debugger Options'#12'ClientHeight'#3#186#1#11'Clie'
+'ntWidth'#3#224#1#8'OnCreate'#7#25'DebuggerOptionsFormCREATE'#9'OnDestroy'#7
+#26'DebuggerOptionsFormDESTROY'#13'PixelsPerInch'#2'Z'#8'Position'#7#14'poSc'
+'reenCenter'#18'HorzScrollBar.Page'#3#225#1#18'VertScrollBar.Page'#3#187#1#4
+'reenCenter'#18'HorzScrollBar.Page'#3#223#1#18'VertScrollBar.Page'#3#185#1#4
+'Left'#3#155#1#6'Height'#3#186#1#3'Top'#3#185#0#5'Width'#3#224#1#0#9'TNotebo'
+'ok'#14'nbDebugOptions'#5'Align'#7#5'alTop'#9'PageIndex'#2#0#6'Height'#3#142
+#1#5'Width'#3#224#1#0#5'TPage'#9'pgGeneral'#7'Caption'#6#7'General'#11'Clien'
+'tWidth'#3#220#1#12'ClientHeight'#3'p'#1#4'Left'#2#2#6'Height'#3'p'#1#3'Top'
+#2#28#5'Width'#3#220#1#0#9'TGroupBox'#14'gbDebuggerType'#7'Caption'#6#22'Deb'
+'ugger type and path'#12'ClientHeight'#2'E'#11'ClientWidth'#3#212#1#11'Paren'
+'tColor'#9#11'ParentCtl3D'#8#8'TabOrder'#2#0#4'Left'#2#2#6'Height'#2'V'#3'To'
+'p'#2#8#5'Width'#3#216#1#0#9'TComboBox'#15'cmbDebuggerType'#9'MaxLength'#2#0
+#8'OnChange'#7#21'cmbDebuggerTypeCHANGE'#11'ParentCtl3D'#8#8'TabOrder'#2#0#4
+'Left'#2#6#6'Height'#2#25#3'Top'#2#5#5'Width'#3#12#1#0#0#9'TComboBox'#15'cmb'
+'DebuggerPath'#9'MaxLength'#2#0#11'ParentCtl3D'#8#8'TabOrder'#2#1#4'Left'#2#6
+#6'Height'#2#25#3'Top'#2'%'#5'Width'#3#172#1#0#0#7'TButton'#19'cmdOpenDebugg'
+'erPath'#7'Caption'#6#3'...'#7'OnClick'#7#24'cmdOpenDebuggerPathCLICK'#8'Tab'
+'Order'#2#2#4'Left'#3#186#1#6'Height'#2#25#3'Top'#2'%'#5'Width'#2#19#0#0#0#9
+'TGroupBox'#22'gbAdditionalSearchPath'#7'Caption'#6#22'Additional search pat'
+'h'#12'ClientHeight'#2'#'#11'ClientWidth'#3#212#1#11'ParentColor'#9#11'Paren'
+'tCtl3D'#8#8'TabOrder'#2#1#4'Left'#2#2#6'Height'#2'4'#3'Top'#2'd'#5'Width'#3
+#216#1#0#5'TEdit'#17'txtAdditionalPath'#8'TabOrder'#2#0#4'Left'#2#6#6'Height'
+#2#25#3'Top'#2#5#5'Width'#3#172#1#0#0#7'TButton'#21'cmdOpenAdditionalPath'#7
+'Caption'#6#3'...'#7'OnClick'#7#26'cmdOpenAdditionalPathClick'#8'TabOrder'#2
+#1#4'Left'#3#186#1#6'Height'#2#24#3'Top'#2#5#5'Width'#2#19#0#0#0#9'TGroupBox'
+#18'gbDebuggerSpecific'#7'Caption'#6'7Debugger specific options (depends on '
+'type of debugger)'#12'ClientHeight'#3#187#0#11'ClientWidth'#3#212#1#11'Pare'
+'ntColor'#9#11'ParentCtl3D'#8#8'TabOrder'#2#2#4'Left'#2#2#6'Height'#3#204#0#3
+'Top'#3#156#0#5'Width'#3#216#1#0#6'TPanel'#16'pnlDebugSpecific'#5'Align'#7#8
+'alClient'#10'BevelOuter'#7#6'bvNone'#11'BorderWidth'#2#4#12'ClientHeight'#3
+#187#0#11'ClientWidth'#3#212#1#11'FullRepaint'#8#8'TabOrder'#2#0#7'TabStop'#9
+#6'Height'#3#187#0#5'Width'#3#212#1#0#0#0#0#5'TPage'#10'pgEventLog'#7'Captio'
+'n'#6#9'Event Log'#11'ClientWidth'#3#220#1#12'ClientHeight'#3'p'#1#4'Left'#2
+#2#6'Height'#3'p'#1#3'Top'#2#28#5'Width'#3#220#1#0#9'TGroupBox'#9'gbGeneral'
+#7'Caption'#6#7'General'#12'ClientHeight'#3#132#0#11'ClientWidth'#3#230#0#11
+'ParentColor'#9#11'ParentCtl3D'#8#8'TabOrder'#2#0#4'Left'#2#4#6'Height'#3#132
+#0#3'Top'#2#8#5'Width'#3#230#0#0#9'TCheckBox'#16'chkClearLogOnRun'#11'AllowG'
+'rayed'#9#8'AutoSize'#9#7'Caption'#6#16'Clear log on run'#8'TabOrder'#2#0#4
+'Left'#2#4#6'Height'#2#20#3'Top'#2#5#5'Width'#3#135#0#0#0#9'TCheckBox'#17'ch'
+'kLimitLinecount'#11'AllowGrayed'#9#8'AutoSize'#9#7'Caption'#6#18'Limit line'
+'count to'#8'TabOrder'#2#1#4'Left'#2#4#6'Height'#2#20#3'Top'#2#29#5'Width'#2
+'w'#0#0#9'TSpinEdit'#16'seLimitLinecount'#10'Climb_Rate'#5#0#0#0#0#0#144'?'
+#236#144'?'#7'Enabled'#8#8'MaxValue'#5#0#0#0#0#0#144'?'#236#144'?'#8'MinValu'
+'e'#5#0#0#0#0#0#144'?'#236#144'?'#8'TabOrder'#2#2#5'Value'#5#0#0#0#0#0#144'?'
+#236#144'?'#10'Climb_Rate'#5#0#0#0#0#0#144'?'#236#144'?'#8'MinValue'#5#0#0#0
+#0#0#144'?'#236#144'?'#8'MaxValue'#5#0#0#0#0#0#144'?'#236#144'?'#5'Value'#5#0
+#0#0#0#0#144'?'#236#144'?'#4'Left'#2#28#6'Height'#2#20#3'Top'#2'5'#5'Width'#2
+'>'#0#0#0#9'TGroupBox'#10'gbMessages'#7'Caption'#6#8'Messages'#12'ClientHeig'
+'ht'#3#188#0#11'ClientWidth'#3#232#0#7'Enabled'#8#11'ParentColor'#9#11'Paren'
+'tCtl3D'#8#8'TabOrder'#2#1#4'Left'#3#242#0#6'Height'#3#188#0#3'Top'#2#8#5'Wi'
+'dth'#3#232#0#0#9'TCheckBox'#21'chkMessagesBreakpoint'#11'AllowGrayed'#9#8'A'
+'utoSize'#9#7'Caption'#6#10'Breakpoint'#8'TabOrder'#2#0#4'Left'#2#4#6'Height'
+#2#20#3'Top'#2#5#5'Width'#3#161#0#0#0#9'TCheckBox'#18'chkMessagesProcess'#11
+'AllowGrayed'#9#8'AutoSize'#9#7'Caption'#6#7'Process'#8'TabOrder'#2#1#4'Left'
+#2#4#6'Height'#2#20#3'Top'#2#29#5'Width'#3#147#0#0#0#9'TCheckBox'#17'chkMess'
+'agesThread'#11'AllowGrayed'#9#8'AutoSize'#9#7'Caption'#6#6'Thread'#8'TabOrd'
+'er'#2#2#4'Left'#2#4#6'Height'#2#20#3'Top'#2'5'#5'Width'#3#141#0#0#0#9'TChec'
+'kBox'#17'chkMessagesModule'#11'AllowGrayed'#9#8'AutoSize'#9#7'Caption'#6#6
+'Module'#8'TabOrder'#2#3#4'Left'#2#4#6'Height'#2#20#3'Top'#2'M'#5'Width'#3
+#144#0#0#0#9'TCheckBox'#17'chkMessagesOutput'#11'AllowGrayed'#9#8'AutoSize'#9
+#7'Caption'#6#6'Output'#8'TabOrder'#2#4#4'Left'#2#4#6'Height'#2#20#3'Top'#2
+'e'#5'Width'#3#139#0#0#0#9'TCheckBox'#17'chkMessagesWindow'#11'AllowGrayed'#9
+#8'AutoSize'#9#7'Caption'#6#6'Window'#8'TabOrder'#2#5#4'Left'#2#4#6'Height'#2
,#20#3'Top'#2'}'#5'Width'#3#146#0#0#0#9'TCheckBox'#20'chkMessagesInterface'#11
+'AllowGrayed'#9#8'AutoSize'#9#7'Caption'#6#9'Interface'#8'TabOrder'#2#6#4'Le'
+'ft'#2#4#6'Height'#2#20#3'Top'#3#149#0#5'Width'#3#150#0#0#0#0#0#5'TPage'#12
+'pgExceptions'#7'Caption'#6#19'Language Exceptions'#11'ClientWidth'#3#220#1
+'ok'#14'nbDebugOptions'#5'Align'#7#5'alTop'#22'BorderSpacing.OnChange'#13#9
+'PageIndex'#2#0#6'Height'#3#142#1#5'Width'#3#224#1#0#5'TPage'#9'pgGeneral'#7
+'Caption'#6#7'General'#11'ClientWidth'#3#220#1#12'ClientHeight'#3'p'#1#4'Lef'
+'t'#2#2#6'Height'#3'p'#1#3'Top'#2#28#5'Width'#3#220#1#0#9'TGroupBox'#14'gbDe'
+'buggerType'#22'BorderSpacing.OnChange'#13#7'Caption'#6#22'Debugger type and'
+' path'#12'ClientHeight'#2'E'#11'ClientWidth'#3#212#1#11'ParentColor'#9#11'P'
+'arentCtl3D'#8#8'TabOrder'#2#0#4'Left'#2#2#6'Height'#2'V'#3'Top'#2#8#5'Width'
+#3#216#1#0#9'TComboBox'#15'cmbDebuggerType'#22'BorderSpacing.OnChange'#13#9
+'MaxLength'#2#0#8'OnChange'#7#21'cmbDebuggerTypeCHANGE'#11'ParentCtl3D'#8#8
+'TabOrder'#2#0#4'Left'#2#6#6'Height'#2#25#3'Top'#2#5#5'Width'#3#12#1#0#0#9'T'
+'ComboBox'#15'cmbDebuggerPath'#22'BorderSpacing.OnChange'#13#9'MaxLength'#2#0
+#11'ParentCtl3D'#8#8'TabOrder'#2#1#4'Left'#2#6#6'Height'#2#25#3'Top'#2'%'#5
+'Width'#3#172#1#0#0#7'TButton'#19'cmdOpenDebuggerPath'#22'BorderSpacing.OnCh'
+'ange'#13#7'Caption'#6#3'...'#7'OnClick'#7#24'cmdOpenDebuggerPathCLICK'#8'Ta'
+'bOrder'#2#2#4'Left'#3#186#1#6'Height'#2#25#3'Top'#2'%'#5'Width'#2#19#0#0#0#9
+'TGroupBox'#22'gbAdditionalSearchPath'#22'BorderSpacing.OnChange'#13#7'Capti'
+'on'#6#22'Additional search path'#12'ClientHeight'#2'#'#11'ClientWidth'#3#212
+#1#11'ParentColor'#9#11'ParentCtl3D'#8#8'TabOrder'#2#1#4'Left'#2#2#6'Height'
+#2'4'#3'Top'#2'd'#5'Width'#3#216#1#0#5'TEdit'#17'txtAdditionalPath'#22'Borde'
+'rSpacing.OnChange'#13#8'TabOrder'#2#0#4'Left'#2#6#6'Height'#2#25#3'Top'#2#5
+#5'Width'#3#172#1#0#0#7'TButton'#21'cmdOpenAdditionalPath'#22'BorderSpacing.'
+'OnChange'#13#7'Caption'#6#3'...'#7'OnClick'#7#26'cmdOpenAdditionalPathClick'
+#8'TabOrder'#2#1#4'Left'#3#186#1#6'Height'#2#24#3'Top'#2#5#5'Width'#2#19#0#0
+#0#9'TGroupBox'#18'gbDebuggerSpecific'#22'BorderSpacing.OnChange'#13#7'Capti'
+'on'#6'7Debugger specific options (depends on type of debugger)'#12'ClientHe'
+'ight'#3#234#0#11'ClientWidth'#3#212#1#11'ParentColor'#9#11'ParentCtl3D'#8#8
+'TabOrder'#2#2#4'Left'#2#2#6'Height'#3#251#0#3'Top'#3#212#0#5'Width'#3#216#1
+#0#6'TPanel'#16'pnlDebugSpecific'#5'Align'#7#8'alClient'#22'BorderSpacing.On'
+'Change'#13#10'BevelOuter'#7#6'bvNone'#11'BorderWidth'#2#4#12'ClientHeight'#3
+#234#0#11'ClientWidth'#3#212#1#11'FullRepaint'#8#8'TabOrder'#2#0#7'TabStop'#9
+#6'Height'#3#234#0#5'Width'#3#212#1#0#0#0#11'TCheckGroup'#25'gcbDebuggerGene'
+'ralOptions'#22'BorderSpacing.OnChange'#13#7'Caption'#6#24'Debugger general '
+'options'#13'Items.Strings'#1#6#20'Show message on stop'#0#11'ParentColor'#9
+#4'Left'#2#2#6'Height'#2'0'#3'Top'#3#156#0#5'Width'#3#216#1#4'Data'#10#5#0#0
+#0#1#0#0#0#2#0#0#0#5'TPage'#10'pgEventLog'#7'Caption'#6#9'Event Log'#11'Clie'
+'ntWidth'#3#220#1#12'ClientHeight'#3'p'#1#4'Left'#2#2#6'Height'#3'p'#1#3'Top'
+#2#28#5'Width'#3#220#1#0#9'TGroupBox'#9'gbGeneral'#22'BorderSpacing.OnChange'
+#13#7'Caption'#6#7'General'#12'ClientHeight'#3#132#0#11'ClientWidth'#3#230#0
+#11'ParentColor'#9#11'ParentCtl3D'#8#8'TabOrder'#2#0#4'Left'#2#4#6'Height'#3
+#132#0#3'Top'#2#8#5'Width'#3#230#0#0#9'TCheckBox'#16'chkClearLogOnRun'#11'Al'
+'lowGrayed'#9#22'BorderSpacing.OnChange'#13#7'Caption'#6#16'Clear log on run'
+#8'TabOrder'#2#0#4'Left'#2#4#6'Height'#2#20#3'Top'#2#5#5'Width'#3#135#0#0#0#9
+'TCheckBox'#17'chkLimitLinecount'#11'AllowGrayed'#9#22'BorderSpacing.OnChang'
+'e'#13#7'Caption'#6#18'Limit linecount to'#8'TabOrder'#2#1#4'Left'#2#4#6'Hei'
+'ght'#2#20#3'Top'#2#29#5'Width'#2'w'#0#0#9'TSpinEdit'#16'seLimitLinecount'#22
+'BorderSpacing.OnChange'#13#10'Climb_Rate'#5#0#0#0#0#0#144'?'#236#144'?'#7'E'
+'nabled'#8#8'MaxValue'#5#0#0#0#0#0#144'?'#236#144'?'#8'MinValue'#5#0#0#0#0#0
+#144'?'#236#144'?'#8'TabOrder'#2#2#5'Value'#5#0#0#0#0#0#144'?'#236#144'?'#4
+'Left'#2#28#6'Height'#2#20#3'Top'#2'5'#5'Width'#2'>'#0#0#0#9'TGroupBox'#10'g'
+'bMessages'#22'BorderSpacing.OnChange'#13#7'Caption'#6#8'Messages'#12'Client'
+'Height'#3#188#0#11'ClientWidth'#3#232#0#7'Enabled'#8#11'ParentColor'#9#11'P'
+'arentCtl3D'#8#8'TabOrder'#2#1#4'Left'#3#242#0#6'Height'#3#188#0#3'Top'#2#8#5
+'Width'#3#232#0#0#9'TCheckBox'#21'chkMessagesBreakpoint'#11'AllowGrayed'#9#22
+'BorderSpacing.OnChange'#13#7'Caption'#6#10'Breakpoint'#8'TabOrder'#2#0#4'Le'
+'ft'#2#4#6'Height'#2#20#3'Top'#2#5#5'Width'#3#161#0#0#0#9'TCheckBox'#18'chkM'
+'essagesProcess'#11'AllowGrayed'#9#22'BorderSpacing.OnChange'#13#7'Caption'#6
+#7'Process'#8'TabOrder'#2#1#4'Left'#2#4#6'Height'#2#20#3'Top'#2#29#5'Width'#3
+#147#0#0#0#9'TCheckBox'#17'chkMessagesThread'#11'AllowGrayed'#9#22'BorderSpa'
,'cing.OnChange'#13#7'Caption'#6#6'Thread'#8'TabOrder'#2#2#4'Left'#2#4#6'Heig'
+'ht'#2#20#3'Top'#2'5'#5'Width'#3#141#0#0#0#9'TCheckBox'#17'chkMessagesModule'
+#11'AllowGrayed'#9#22'BorderSpacing.OnChange'#13#7'Caption'#6#6'Module'#8'Ta'
+'bOrder'#2#3#4'Left'#2#4#6'Height'#2#20#3'Top'#2'M'#5'Width'#3#144#0#0#0#9'T'
+'CheckBox'#17'chkMessagesOutput'#11'AllowGrayed'#9#22'BorderSpacing.OnChange'
+#13#7'Caption'#6#6'Output'#8'TabOrder'#2#4#4'Left'#2#4#6'Height'#2#20#3'Top'
+#2'e'#5'Width'#3#139#0#0#0#9'TCheckBox'#17'chkMessagesWindow'#11'AllowGrayed'
+#9#22'BorderSpacing.OnChange'#13#7'Caption'#6#6'Window'#8'TabOrder'#2#5#4'Le'
+'ft'#2#4#6'Height'#2#20#3'Top'#2'}'#5'Width'#3#146#0#0#0#9'TCheckBox'#20'chk'
+'MessagesInterface'#11'AllowGrayed'#9#22'BorderSpacing.OnChange'#13#7'Captio'
+'n'#6#9'Interface'#8'TabOrder'#2#6#4'Left'#2#4#6'Height'#2#20#3'Top'#3#149#0
+#5'Width'#3#150#0#0#0#0#0#5'TPage'#12'pgExceptions'#7'Caption'#6#19'Language'
+' Exceptions'#11'ClientWidth'#3#220#1#12'ClientHeight'#3'p'#1#4'Left'#2#2#6
+'Height'#3'p'#1#3'Top'#2#28#5'Width'#3#220#1#0#9'TGroupBox'#18'bgIgnoreExcep'
+'tions'#22'BorderSpacing.OnChange'#13#7'Caption'#6#23'Ignore these exception'
+'s'#12'ClientHeight'#3'H'#1#11'ClientWidth'#3#212#1#11'ParentColor'#9#11'Par'
+'entCtl3D'#8#8'TabOrder'#2#0#4'Left'#2#4#6'Height'#3'H'#1#3'Top'#2#8#5'Width'
+#3#212#1#0#7'TButton'#18'cmdExceptionRemove'#22'BorderSpacing.OnChange'#13#7
+'Caption'#6#6'Remove'#7'Enabled'#8#7'OnClick'#7#23'cmdExceptionRemoveCLICK'#8
+'TabOrder'#2#0#4'Left'#3'|'#1#6'Height'#2#25#3'Top'#3#21#1#5'Width'#2'K'#0#0
+#7'TButton'#15'cmdExceptionAdd'#22'BorderSpacing.OnChange'#13#7'Caption'#6#3
+'Add'#7'OnClick'#7#20'cmdExceptionAddCLICK'#8'TabOrder'#2#1#4'Left'#3','#1#6
+'Height'#2#25#3'Top'#3#21#1#5'Width'#2'K'#0#0#13'TCheckListBox'#13'clbExcept'
+'ions'#22'BorderSpacing.OnChange'#13#7'OnClick'#7#18'clbExceptionsCLICK'#8'T'
+'abOrder'#2#2#8'TopIndex'#2#255#4'Left'#2#8#6'Height'#3#8#1#3'Top'#2#5#5'Wid'
+'th'#3#192#1#0#0#0#9'TCheckBox'#19'chkBreakOnException'#11'AllowGrayed'#9#22
+'BorderSpacing.OnChange'#13#7'Caption'#6#27'Break on Lazarus Exceptions'#8'T'
+'abOrder'#2#1#4'Left'#2#2#6'Height'#2#20#3'Top'#3'T'#1#5'Width'#3#188#0#0#0#0
+#5'TPage'#9'pgSignals'#7'Caption'#6#13'OS Exceptions'#11'ClientWidth'#3#220#1
+#12'ClientHeight'#3'p'#1#4'Left'#2#2#6'Height'#3'p'#1#3'Top'#2#28#5'Width'#3
+#220#1#0#9'TGroupBox'#18'bgIgnoreExceptions'#7'Caption'#6#23'Ignore these ex'
+'ceptions'#12'ClientHeight'#3'H'#1#11'ClientWidth'#3#212#1#11'ParentColor'#9
+#11'ParentCtl3D'#8#8'TabOrder'#2#0#4'Left'#2#4#6'Height'#3'H'#1#3'Top'#2#8#5
+'Width'#3#212#1#0#7'TButton'#18'cmdExceptionRemove'#7'Caption'#6#6'Remove'#7
+'Enabled'#8#7'OnClick'#7#23'cmdExceptionRemoveCLICK'#8'TabOrder'#2#0#4'Left'
+#3'|'#1#6'Height'#2#25#3'Top'#3#21#1#5'Width'#2'K'#0#0#7'TButton'#15'cmdExce'
+'ptionAdd'#7'Caption'#6#3'Add'#7'OnClick'#7#20'cmdExceptionAddCLICK'#8'TabOr'
+'der'#2#1#4'Left'#3','#1#6'Height'#2#25#3'Top'#3#21#1#5'Width'#2'K'#0#0#13'T'
+'CheckListBox'#13'clbExceptions'#7'OnClick'#7#18'clbExceptionsCLICK'#8'TabOr'
+'der'#2#2#8'TopIndex'#2#255#4'Left'#2#8#6'Height'#3#8#1#3'Top'#2#5#5'Width'#3
+#192#1#0#0#0#9'TCheckBox'#19'chkBreakOnException'#11'AllowGrayed'#9#8'AutoSi'
+'ze'#9#7'Caption'#6#27'Break on Lazarus Exceptions'#8'TabOrder'#2#1#4'Left'#2
+#2#6'Height'#2#20#3'Top'#3'T'#1#5'Width'#3#188#0#0#0#0#5'TPage'#9'pgSignals'
+#7'Caption'#6#13'OS Exceptions'#11'ClientWidth'#3#220#1#12'ClientHeight'#3'p'
+#1#4'Left'#2#2#6'Height'#3'p'#1#3'Top'#2#28#5'Width'#3#220#1#0#9'TGroupBox'#9
+'gbSignals'#7'Caption'#6#7'Signals'#12'ClientHeight'#3'b'#1#11'ClientWidth'#3
+#212#1#11'ParentColor'#9#11'ParentCtl3D'#8#8'TabOrder'#2#0#4'Left'#2#4#6'Hei'
+'ght'#3'b'#1#3'Top'#2#8#5'Width'#3#212#1#0#7'TButton'#15'cmdSignalRemove'#7
+'Caption'#6#6'Remove'#7'Enabled'#8#8'TabOrder'#2#0#4'Left'#3'}'#1#6'Height'#2
+#25#3'Top'#3'1'#1#5'Width'#2'K'#0#0#7'TButton'#12'cmdSignalAdd'#7'Caption'#6
+#3'Add'#8'TabOrder'#2#1#4'Left'#3'('#1#6'Height'#2#25#3'Top'#3'1'#1#5'Width'
+#2'K'#0#0#9'TListView'#9'lvSignals'#7'Columns'#14#1#7'Caption'#6#4'Name'#5'W'
+'idth'#3#200#0#0#1#7'Caption'#6#2'ID'#0#1#7'Caption'#6#10'Handled by'#5'Widt'
+'h'#2'K'#0#1#7'Caption'#6#6'Resume'#5'Width'#2#0#0#0#9'PopupMenu'#7#9'popSig'
+'nal'#9'ViewStyle'#7#8'vsReport'#4'Left'#2#8#6'Height'#3'$'#1#3'Top'#2#5#5'W'
+'idth'#3#192#1#0#0#0#0#0#7'TButton'#9'cmdCancel'#6'Cancel'#9#7'Caption'#6#6
+'Cancel'#11'ModalResult'#2#2#8'TabOrder'#2#1#4'Left'#3#144#1#6'Height'#2#25#3
+'Top'#3#152#1#5'Width'#2'K'#0#0#7'TButton'#5'cmdOK'#7'Caption'#6#2'OK'#7'Def'
+'ault'#9#7'OnClick'#7#10'cmdOKCLICK'#8'TabOrder'#2#2#4'Left'#3'@'#1#6'Height'
+#2#25#3'Top'#3#152#1#5'Width'#2'K'#0#0#10'TPopupMenu'#9'popSignal'#4'left'#3
+#152#1#3'top'#2#20#0#9'TMenuItem'#19'mnuHandledByProgram'#9'AutoCheck'#9#7'C'
+'aption'#6#18'Handled by Program'#10'GroupIndex'#2#1#9'RadioItem'#9#0#0#9'TM'
+'enuItem'#21'mnuiHandledByDebugger'#9'AutoCheck'#9#7'Caption'#6#19'Handled b'
+'y Debugger'#10'GroupIndex'#2#1#9'RadioItem'#9#0#0#9'TMenuItem'#2'N1'#7'Capt'
+'ion'#6#1'-'#0#0#9'TMenuItem'#16'mnuResumeHandled'#9'AutoCheck'#9#7'Caption'
+#6#14'Resume Handled'#10'GroupIndex'#2#2#9'RadioItem'#9#0#0#9'TMenuItem'#18
+'mnuResumeUnhandled'#9'AutoCheck'#9#7'Caption'#6#16'Resume Unhandled'#10'Gro'
+'upIndex'#2#2#9'RadioItem'#9#0#0#0#0
+#220#1#0#9'TGroupBox'#9'gbSignals'#22'BorderSpacing.OnChange'#13#7'Caption'#6
+#7'Signals'#12'ClientHeight'#3'b'#1#11'ClientWidth'#3#212#1#11'ParentColor'#9
+#11'ParentCtl3D'#8#8'TabOrder'#2#0#4'Left'#2#4#6'Height'#3'b'#1#3'Top'#2#8#5
+'Width'#3#212#1#0#7'TButton'#15'cmdSignalRemove'#22'BorderSpacing.OnChange'
+#13#7'Caption'#6#6'Remove'#7'Enabled'#8#8'TabOrder'#2#0#4'Left'#3'}'#1#6'Hei'
+'ght'#2#25#3'Top'#3'1'#1#5'Width'#2'K'#0#0#7'TButton'#12'cmdSignalAdd'#22'Bo'
+'rderSpacing.OnChange'#13#7'Caption'#6#3'Add'#8'TabOrder'#2#1#4'Left'#3'('#1
+#6'Height'#2#25#3'Top'#3'1'#1#5'Width'#2'K'#0#0#9'TListView'#9'lvSignals'#22
+'BorderSpacing.OnChange'#13#7'Columns'#14#1#7'Caption'#6#4'Name'#5'Width'#3
+#200#0#0#1#7'Caption'#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#0#0#0#9'PopupMenu'#7#9'popSignal'#9'Vie'
+'wStyle'#7#8'vsReport'#4'Left'#2#8#6'Height'#3'$'#1#3'Top'#2#5#5'Width'#3#192
+#1#0#0#0#0#0#7'TButton'#9'cmdCancel'#22'BorderSpacing.OnChange'#13#6'Cancel'
+#9#7'Caption'#6#6'Cancel'#11'ModalResult'#2#2#8'TabOrder'#2#1#4'Left'#3#144#1
+#6'Height'#2#25#3'Top'#3#152#1#5'Width'#2'K'#0#0#7'TButton'#5'cmdOK'#22'Bord'
+'erSpacing.OnChange'#13#7'Caption'#6#2'OK'#7'Default'#9#7'OnClick'#7#10'cmdO'
+'KCLICK'#8'TabOrder'#2#2#4'Left'#3'@'#1#6'Height'#2#25#3'Top'#3#152#1#5'Widt'
+'h'#2'K'#0#0#10'TPopupMenu'#9'popSignal'#4'left'#3#152#1#3'top'#2#20#0#9'TMe'
+'nuItem'#19'mnuHandledByProgram'#9'AutoCheck'#9#7'Caption'#6#18'Handled by P'
+'rogram'#10'GroupIndex'#2#1#9'RadioItem'#9#0#0#9'TMenuItem'#21'mnuiHandledBy'
+'Debugger'#9'AutoCheck'#9#7'Caption'#6#19'Handled by Debugger'#10'GroupIndex'
+#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 Handled'#10'Grou'
+'pIndex'#2#2#9'RadioItem'#9#0#0#9'TMenuItem'#18'mnuResumeUnhandled'#9'AutoCh'
+'eck'#9#7'Caption'#6#16'Resume Unhandled'#10'GroupIndex'#2#2#9'RadioItem'#9#0
+#0#0#0
]);

View File

@ -38,7 +38,11 @@ uses
PathEditorDlg, EnvironmentOpts, BaseDebugManager, Debugger, DBGUtils;
type
{ TDebuggerOptionsForm }
TDebuggerOptionsForm = class (TForm )
gcbDebuggerGeneralOptions: TCheckGroup;
clbExceptions: TCHECKLISTBOX;
chkMessagesInterface: TCHECKBOX;
chkClearLogOnRun: TCHECKBOX;
@ -100,6 +104,7 @@ type
procedure AddExceptionLine(const AException: TIDEException; AName: String);
procedure AddSignalLine(const ASignal: TIDESignal);
procedure FetchDebuggerClass;
procedure FetchDebuggerGeneralOptions;
procedure FetchDebuggerSpecificOptions;
function GetDebuggerClass: TDebuggerClass;
procedure SetDebuggerClass(const AClass: TDebuggerClass);
@ -189,6 +194,12 @@ begin
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;
begin
PropertyGrid.Selection.Clear;
@ -301,6 +312,9 @@ begin
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;
@ -383,6 +397,7 @@ begin
end;
FetchDebuggerClass;
FetchDebuggerGeneralOptions;
// Fix designtime changes
nbDebugOptions.PageIndex := 0;

View File

@ -178,6 +178,7 @@ type
FDebuggerClass: string;
FDebuggerFilename: string; // per debugger class
FDebuggerFileHistory: TStringList; // per debugger class
FDebuggerShowStopMessage: Boolean;
FTestBuildDirectory: string;
FTestBuildDirHistory: TStringList;
@ -320,6 +321,8 @@ type
write FDebuggerFileHistory;
property DebuggerSearchPath: string read FDebuggerSearchPath
write SetDebuggerSearchPath;
property DebuggerShowStopMessage: boolean read FDebuggerShowStopMessage
write FDebuggerShowStopMessage;
property TestBuildDirectory: string read FTestBuildDirectory
write SetTestBuildDirectory;
property TestBuildDirHistory: TStringList read FTestBuildDirHistory
@ -1071,6 +1074,9 @@ begin
Path+'DebuggerFilename/History/');
DebuggerSearchPath:=XMLConfig.GetValue(
Path+'DebuggerSearchPath/Value','');
// Debugger General Options
DebuggerShowStopMessage:=XMLConfig.GetValue(
Path+'DebuggerOptions/ShowStopMessage/Value', True);
end;
// hints
@ -1266,6 +1272,8 @@ begin
FDebuggerClass,'');
XMLConfig.SetDeleteValue(Path+'DebuggerFilename/Value',
FDebuggerFilename,'');
XMLConfig.SetDeleteValue(Path+'DebuggerOptions/ShowStopMessage/Value',
FDebuggerShowStopMessage, True);
SaveRecentList(XMLConfig,FDebuggerFileHistory,
Path+'DebuggerFilename/History/');
XMLConfig.SetDeleteValue(Path+'DebuggerSearchPath/Value',