#97, update ui

This commit is contained in:
Basile Burg 2016-09-30 09:55:53 +02:00
parent 8832ae387c
commit 17628a8bd5
No known key found for this signature in database
GPG Key ID: 1868039F415CB8CF
2 changed files with 165 additions and 98 deletions

View File

@ -8,67 +8,43 @@ inherited CEGdbWidget: TCEGdbWidget
ClientHeight = 625 ClientHeight = 625
ClientWidth = 517 ClientWidth = 517
inherited Back: TPanel inherited Back: TPanel
Height = 625 Height = 619
Top = 6
Width = 517 Width = 517
ClientHeight = 625 ClientHeight = 619
ClientWidth = 517 ClientWidth = 517
inherited Content: TPanel inherited Content: TPanel
Height = 589 Height = 583
Width = 517 Width = 517
ClientHeight = 589 ClientHeight = 583
ClientWidth = 517 ClientWidth = 517
object Panel2: TPanel[0] object Panel1: TPanel[0]
Left = 0 Left = 0
Height = 589 Height = 381
Top = 0 Top = 166
Width = 517 Width = 517
Align = alClient Align = alClient
BevelOuter = bvNone BevelOuter = bvNone
Caption = 'Panel2' ClientHeight = 381
ClientHeight = 589
ClientWidth = 517 ClientWidth = 517
TabOrder = 0 TabOrder = 0
object Panel3: TPanel object GroupBox3: TGroupBox
Left = 4
Height = 28
Top = 557
Width = 509
Align = alBottom
BorderSpacing.Around = 4
BevelOuter = bvNone
ClientHeight = 28
ClientWidth = 509
TabOrder = 0
object btnSendCom: TSpeedButton
Left = 479
Height = 24
Top = 2
Width = 28
Align = alRight
BorderSpacing.Around = 2
OnClick = btnSendComClick
end
object Edit1: TComboBox
Left = 0 Left = 0
Height = 28 Height = 184
Hint = 'custom GDB command' Top = 197
Top = 0
Width = 477
Align = alClient
AutoComplete = True
AutoCompleteText = [cbactEnabled, cbactEndOfLineComplete, cbactSearchAscending]
ItemHeight = 0
MaxLength = 64
OnKeyUp = Edit1KeyUp
TabOrder = 0
end
end
object stateViewer: TTIPropertyGrid
Left = 0
Height = 207
Top = 346
Width = 517 Width = 517
Align = alClient Align = alClient
Caption = 'CPU'
ClientHeight = 154
ClientWidth = 513
TabOrder = 0
object cpuVIewer: TTIPropertyGrid
Left = 0
Height = 154
Hint = 'cpu registers'
Top = 0
Width = 513
Align = alClient
CheckboxForBoolean = True CheckboxForBoolean = True
DefaultValueFont.Color = clWindowText DefaultValueFont.Color = clWindowText
Filter = [tkUnknown, tkInteger, tkChar, tkEnumeration, tkFloat, tkSet, tkMethod, tkSString, tkLString, tkAString, tkWString, tkVariant, tkArray, tkRecord, tkInterface, tkClass, tkObject, tkWChar, tkBool, tkInt64, tkQWord, tkDynArray, tkInterfaceRaw, tkProcVar, tkUString, tkUChar, tkHelper, tkFile, tkClassRef, tkPointer] Filter = [tkUnknown, tkInteger, tkChar, tkEnumeration, tkFloat, tkSet, tkMethod, tkSString, tkLString, tkAString, tkWString, tkVariant, tkArray, tkRecord, tkInterface, tkClass, tkObject, tkWChar, tkBool, tkInt64, tkQWord, tkDynArray, tkInterfaceRaw, tkProcVar, tkUString, tkUChar, tkHelper, tkFile, tkClassRef, tkPointer]
@ -78,25 +54,26 @@ inherited CEGdbWidget: TCEGdbWidget
SplitterX = 200 SplitterX = 200
ValueFont.Color = clMaroon ValueFont.Color = clMaroon
end end
object lstCallStack: TListView end
object GroupBox2: TGroupBox
Left = 0 Left = 0
Height = 184 Height = 191
Hint = 'call stack'
Top = 0 Top = 0
Width = 517 Width = 517
Align = alTop Align = alTop
Columns = <> Caption = 'Variables'
TabOrder = 2 ClientHeight = 161
end ClientWidth = 513
TabOrder = 1
object ValueListEditor1: TValueListEditor object ValueListEditor1: TValueListEditor
Left = 2 Left = 4
Height = 158 Height = 153
Hint = 'variables' Hint = 'variables'
Top = 186 Top = 4
Width = 513 Width = 505
Align = alTop Align = alClient
AutoAdvance = aaDown AutoAdvance = aaDown
BorderSpacing.Around = 2 BorderSpacing.Around = 4
BorderStyle = bsNone BorderStyle = bsNone
Color = clDefault Color = clDefault
DefaultColWidth = 128 DefaultColWidth = 128
@ -105,7 +82,7 @@ inherited CEGdbWidget: TCEGdbWidget
Flat = True Flat = True
GridLineWidth = 0 GridLineWidth = 0
RowCount = 2 RowCount = 2
TabOrder = 3 TabOrder = 0
Options = [goFixedVertLine, goFixedHorzLine, goVertLine, goHorzLine, goColSizing, goAlwaysShowEditor, goThumbTracking] Options = [goFixedVertLine, goFixedHorzLine, goVertLine, goHorzLine, goColSizing, goAlwaysShowEditor, goThumbTracking]
Strings.Strings = ( Strings.Strings = (
'' ''
@ -116,10 +93,85 @@ inherited CEGdbWidget: TCEGdbWidget
) )
ColWidths = ( ColWidths = (
128 128
385 377
) )
end end
end end
object Splitter4: TSplitter
Cursor = crVSplit
Left = 0
Height = 6
Top = 191
Width = 517
Align = alTop
ResizeAnchor = akTop
end
end
object Panel3: TPanel[1]
Left = 4
Height = 28
Top = 551
Width = 509
Align = alBottom
BorderSpacing.Around = 4
BevelOuter = bvNone
ClientHeight = 28
ClientWidth = 509
TabOrder = 1
object btnSendCom: TSpeedButton
Left = 480
Height = 26
Top = 1
Width = 28
Align = alRight
BorderSpacing.Around = 1
OnClick = btnSendComClick
end
object Edit1: TComboBox
Left = 0
Height = 28
Hint = 'custom GDB command'
Top = 0
Width = 479
Align = alClient
AutoComplete = True
AutoCompleteText = [cbactEnabled, cbactEndOfLineComplete, cbactSearchAscending]
ItemHeight = 0
MaxLength = 64
OnKeyUp = Edit1KeyUp
TabOrder = 0
end
end
object GroupBox1: TGroupBox[2]
Left = 0
Height = 161
Top = 0
Width = 517
Align = alTop
Caption = 'Call stack'
ClientHeight = 131
ClientWidth = 513
TabOrder = 2
object lstCallStack: TListView
Left = 0
Height = 131
Hint = 'call stack'
Top = 0
Width = 513
Align = alClient
Columns = <>
TabOrder = 0
end
end
object Splitter3: TSplitter[3]
Cursor = crVSplit
Left = 0
Height = 5
Top = 161
Width = 517
Align = alTop
ResizeAnchor = akTop
end
end end
inherited toolbar: TCEToolBar inherited toolbar: TCEToolBar
Width = 509 Width = 509
@ -215,7 +267,16 @@ inherited CEGdbWidget: TCEGdbWidget
end end
end end
end end
inherited contextMenu: TPopupMenu object Splitter2: TSplitter[1]
Cursor = crVSplit
Left = 0
Height = 6
Top = 0
Width = 517
Align = alTop
ResizeAnchor = akTop
end
inherited contextMenu: TPopupMenu[2]
left = 56 left = 56
top = 64 top = 64
end end

View File

@ -313,11 +313,17 @@ type
btnStop: TCEToolButton; btnStop: TCEToolButton;
button4: TCEToolButton; button4: TCEToolButton;
Edit1: TComboBox; Edit1: TComboBox;
GroupBox1: TGroupBox;
GroupBox2: TGroupBox;
GroupBox3: TGroupBox;
lstCallStack: TListView; lstCallStack: TListView;
Panel2: TPanel; Panel1: TPanel;
Panel3: TPanel; Panel3: TPanel;
btnSendCom: TSpeedButton; btnSendCom: TSpeedButton;
stateViewer: TTIPropertyGrid; cpuVIewer: TTIPropertyGrid;
Splitter2: TSplitter;
Splitter3: TSplitter;
Splitter4: TSplitter;
ValueListEditor1: TValueListEditor; ValueListEditor1: TValueListEditor;
procedure btnContClick(Sender: TObject); procedure btnContClick(Sender: TObject);
procedure btnVariablesClick(Sender: TObject); procedure btnVariablesClick(Sender: TObject);
@ -813,7 +819,7 @@ begin
fFileLineBrks:= TStringList.Create; fFileLineBrks:= TStringList.Create;
fLog := TStringList.Create; fLog := TStringList.Create;
fInspState := TInspectableCPU.Create(@setGpr, @setSsr, @setFlag, @setFpr); fInspState := TInspectableCPU.Create(@setGpr, @setSsr, @setFlag, @setFpr);
stateViewer.TIObject := fInspState; cpuVIewer.TIObject := fInspState;
fJson := TJsonObject.Create; fJson := TJsonObject.Create;
fStackItems := TStackItems.create; fStackItems := TStackItems.create;
fSubj:= TCEDebugObserverSubject.Create; fSubj:= TCEDebugObserverSubject.Create;
@ -1176,7 +1182,7 @@ end;
procedure TCEGdbWidget.disableEditor; procedure TCEGdbWidget.disableEditor;
begin begin
stateViewer.ItemIndex:=-1; cpuVIewer.ItemIndex:=-1;
end; end;
procedure TCEGdbWidget.startDebugging; procedure TCEGdbWidget.startDebugging;
@ -1646,7 +1652,7 @@ begin
// TODO-cGDB: get SSE registers // TODO-cGDB: get SSE registers
end; end;
end; end;
stateViewer.RefreshPropertyValues; cpuVIewer.RefreshPropertyValues;
end; end;
val := fJson.Find('stack'); val := fJson.Find('stack');