mirror of https://gitlab.com/basile.b/dexed.git
#97, next & step, add dropdown to set if cmd is applied at src or hwd level
This commit is contained in:
parent
9eda998779
commit
0d76b2250b
|
@ -3,6 +3,7 @@ inherited CEGdbWidget: TCEGdbWidget
|
||||||
Height = 668
|
Height = 668
|
||||||
Top = 333
|
Top = 333
|
||||||
Width = 517
|
Width = 517
|
||||||
|
ActiveControl = Splitter2
|
||||||
Caption = 'GDB commander'
|
Caption = 'GDB commander'
|
||||||
ClientHeight = 668
|
ClientHeight = 668
|
||||||
ClientWidth = 517
|
ClientWidth = 517
|
||||||
|
@ -251,6 +252,7 @@ inherited CEGdbWidget: TCEGdbWidget
|
||||||
Top = 0
|
Top = 0
|
||||||
Width = 509
|
Width = 509
|
||||||
Align = alClient
|
Align = alClient
|
||||||
|
AutoWidthLastColumn = True
|
||||||
Columns = <
|
Columns = <
|
||||||
item
|
item
|
||||||
AutoSize = True
|
AutoSize = True
|
||||||
|
@ -283,7 +285,6 @@ inherited CEGdbWidget: TCEGdbWidget
|
||||||
Width = 64
|
Width = 64
|
||||||
end
|
end
|
||||||
item
|
item
|
||||||
AutoSize = True
|
|
||||||
Caption = 'line'
|
Caption = 'line'
|
||||||
Width = 200
|
Width = 200
|
||||||
end>
|
end>
|
||||||
|
@ -299,7 +300,7 @@ inherited CEGdbWidget: TCEGdbWidget
|
||||||
inherited toolbar: TCEToolBar
|
inherited toolbar: TCEToolBar
|
||||||
Width = 509
|
Width = 509
|
||||||
object btnStack: TCEToolButton[0]
|
object btnStack: TCEToolButton[0]
|
||||||
Left = 225
|
Left = 249
|
||||||
Hint = 'view call stack'
|
Hint = 'view call stack'
|
||||||
Top = 0
|
Top = 0
|
||||||
Caption = 'btnStack'
|
Caption = 'btnStack'
|
||||||
|
@ -308,7 +309,7 @@ inherited CEGdbWidget: TCEGdbWidget
|
||||||
scaledSeparator = False
|
scaledSeparator = False
|
||||||
end
|
end
|
||||||
object btnReg: TCEToolButton[1]
|
object btnReg: TCEToolButton[1]
|
||||||
Left = 197
|
Left = 221
|
||||||
Hint = 'update CPU registers values'
|
Hint = 'update CPU registers values'
|
||||||
Top = 0
|
Top = 0
|
||||||
Caption = 'btnReg'
|
Caption = 'btnReg'
|
||||||
|
@ -317,7 +318,7 @@ inherited CEGdbWidget: TCEGdbWidget
|
||||||
scaledSeparator = False
|
scaledSeparator = False
|
||||||
end
|
end
|
||||||
object button4: TCEToolButton[2]
|
object button4: TCEToolButton[2]
|
||||||
Left = 181
|
Left = 205
|
||||||
Height = 28
|
Height = 28
|
||||||
Top = 0
|
Top = 0
|
||||||
Width = 16
|
Width = 16
|
||||||
|
@ -357,21 +358,25 @@ inherited CEGdbWidget: TCEGdbWidget
|
||||||
Hint = 'step to next instruction, including in calls'
|
Hint = 'step to next instruction, including in calls'
|
||||||
Top = 0
|
Top = 0
|
||||||
Caption = 'btnNext'
|
Caption = 'btnNext'
|
||||||
|
DropdownMenu = mnuNext
|
||||||
OnClick = btnNextClick
|
OnClick = btnNextClick
|
||||||
|
Style = tbsDropDown
|
||||||
resourceName = 'GO_DOWN'
|
resourceName = 'GO_DOWN'
|
||||||
scaledSeparator = False
|
scaledSeparator = False
|
||||||
end
|
end
|
||||||
object btnOver: TCEToolButton[7]
|
object btnOver: TCEToolButton[7]
|
||||||
Left = 153
|
Left = 165
|
||||||
Hint = 'step to the next instruction, excluding calls'
|
Hint = 'step to the next instruction, excluding calls'
|
||||||
Top = 0
|
Top = 0
|
||||||
Caption = 'btnOver'
|
Caption = 'btnOver'
|
||||||
|
DropdownMenu = mnuStep
|
||||||
OnClick = btnOverClick
|
OnClick = btnOverClick
|
||||||
|
Style = tbsDropDown
|
||||||
resourceName = 'GO_JUMP'
|
resourceName = 'GO_JUMP'
|
||||||
scaledSeparator = False
|
scaledSeparator = False
|
||||||
end
|
end
|
||||||
object btnVariables: TCEToolButton[8]
|
object btnVariables: TCEToolButton[8]
|
||||||
Left = 253
|
Left = 277
|
||||||
Hint = 'update variables list'
|
Hint = 'update variables list'
|
||||||
Top = 0
|
Top = 0
|
||||||
Caption = 'btnVariables'
|
Caption = 'btnVariables'
|
||||||
|
@ -391,7 +396,7 @@ inherited CEGdbWidget: TCEGdbWidget
|
||||||
scaledSeparator = False
|
scaledSeparator = False
|
||||||
end
|
end
|
||||||
object btnWatch: TCEToolButton[10]
|
object btnWatch: TCEToolButton[10]
|
||||||
Left = 281
|
Left = 305
|
||||||
Hint = 'add a watchpoint for the variable selected in the list'
|
Hint = 'add a watchpoint for the variable selected in the list'
|
||||||
Top = 0
|
Top = 0
|
||||||
Caption = 'btnWatch'
|
Caption = 'btnWatch'
|
||||||
|
@ -417,8 +422,8 @@ inherited CEGdbWidget: TCEGdbWidget
|
||||||
top = 64
|
top = 64
|
||||||
end
|
end
|
||||||
object mnuProjRunnable: TPopupMenu[3]
|
object mnuProjRunnable: TPopupMenu[3]
|
||||||
left = 144
|
left = 56
|
||||||
top = 64
|
top = 112
|
||||||
object mnuSelProj: TMenuItem
|
object mnuSelProj: TMenuItem
|
||||||
AutoCheck = True
|
AutoCheck = True
|
||||||
Caption = 'Debug project'
|
Caption = 'Debug project'
|
||||||
|
@ -432,8 +437,8 @@ inherited CEGdbWidget: TCEGdbWidget
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
object mnuWatch: TPopupMenu[4]
|
object mnuWatch: TPopupMenu[4]
|
||||||
left = 144
|
left = 56
|
||||||
top = 128
|
top = 160
|
||||||
object mnuReadW: TMenuItem
|
object mnuReadW: TMenuItem
|
||||||
AutoCheck = True
|
AutoCheck = True
|
||||||
Caption = 'On read'
|
Caption = 'On read'
|
||||||
|
@ -451,4 +456,20 @@ inherited CEGdbWidget: TCEGdbWidget
|
||||||
OnClick = mnuReadWriteWClick
|
OnClick = mnuReadWriteWClick
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
object mnuNext: TPopupMenu[5]
|
||||||
|
left = 152
|
||||||
|
top = 112
|
||||||
|
object mnuNextMachine: TMenuItem
|
||||||
|
AutoCheck = True
|
||||||
|
Caption = 'machine instruction'
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object mnuStep: TPopupMenu[6]
|
||||||
|
left = 152
|
||||||
|
top = 160
|
||||||
|
object mnuStepMachine: TMenuItem
|
||||||
|
AutoCheck = True
|
||||||
|
Caption = 'machine instruction'
|
||||||
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -334,8 +334,12 @@ type
|
||||||
Edit1: TComboBox;
|
Edit1: TComboBox;
|
||||||
GroupBox3: TGroupBox;
|
GroupBox3: TGroupBox;
|
||||||
lstThreads: TListView;
|
lstThreads: TListView;
|
||||||
|
mnuNextMachine: TMenuItem;
|
||||||
|
mnuStepMachine: TMenuItem;
|
||||||
|
mnuStep: TPopupMenu;
|
||||||
PageControl1: TPageControl;
|
PageControl1: TPageControl;
|
||||||
PageControl2: TPageControl;
|
PageControl2: TPageControl;
|
||||||
|
mnuNext: TPopupMenu;
|
||||||
TabSheet1: TTabSheet;
|
TabSheet1: TTabSheet;
|
||||||
TabSheet2: TTabSheet;
|
TabSheet2: TTabSheet;
|
||||||
TabSheet3: TTabSheet;
|
TabSheet3: TTabSheet;
|
||||||
|
@ -2217,15 +2221,19 @@ begin
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCEGdbWidget.btnNextClick(Sender: TObject);
|
procedure TCEGdbWidget.btnNextClick(Sender: TObject);
|
||||||
|
const
|
||||||
|
cmd: array[boolean] of string = ('-exec-step','-exec-step-instruction');
|
||||||
begin
|
begin
|
||||||
gdbCommand('step', @gdboutJsonize);
|
gdbCommand(cmd[mnuNextMachine.Checked], @gdboutJsonize);
|
||||||
if assigned(fGdb) and fgdb.Running then
|
if assigned(fGdb) and fgdb.Running then
|
||||||
setState(gsRunning);
|
setState(gsRunning);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCEGdbWidget.btnOverClick(Sender: TObject);
|
procedure TCEGdbWidget.btnOverClick(Sender: TObject);
|
||||||
|
const
|
||||||
|
cmd: array[boolean] of string = ('-exec-next','-exec-next-instruction');
|
||||||
begin
|
begin
|
||||||
gdbCommand('next', @gdboutJsonize);
|
gdbCommand(cmd[mnuStepMachine.Checked], @gdboutJsonize);
|
||||||
if assigned(fGdb) and fgdb.Running then
|
if assigned(fGdb) and fgdb.Running then
|
||||||
setState(gsRunning);
|
setState(gsRunning);
|
||||||
end;
|
end;
|
||||||
|
|
Loading…
Reference in New Issue