debugger: use actions in breakpoints dialog instead of key handler, use hints, add shortcuts

git-svn-id: trunk@30677 -
This commit is contained in:
paul 2011-05-11 06:37:57 +00:00
parent fecc242656
commit f1cd1cf62e
2 changed files with 22 additions and 60 deletions

View File

@ -58,7 +58,6 @@ inherited BreakpointsDlg: TBreakpointsDlg
OnClick = lvBreakPointsClick
OnColumnClick = lvBreakPointsColumnClick
OnDblClick = lvBreakPointsDBLCLICK
OnKeyDown = lvBreakPointsKeyDown
OnSelectItem = lvBreakPointsSelectItem
end
object ToolBar1: TToolBar[1]
@ -124,10 +123,8 @@ inherited BreakpointsDlg: TBreakpointsDlg
left = 24
top = 40
object popShow: TMenuItem
Caption = 'Show'
Action = actShow
Default = True
ShortCut = 16470
OnClick = popShowClick
end
object N0: TMenuItem
Caption = '-'
@ -185,6 +182,7 @@ inherited BreakpointsDlg: TBreakpointsDlg
object actToggleCurrentEnable: TAction
Caption = 'actToggleCurrentEnable'
OnExecute = popEnabledClick
ShortCut = 16462
end
object actEnableSelected: TAction
Caption = 'actEnableSelected'
@ -197,6 +195,7 @@ inherited BreakpointsDlg: TBreakpointsDlg
object actDeleteSelected: TAction
Caption = 'actDeleteSelected'
OnExecute = popDeleteClick
ShortCut = 46
end
object actEnableAll: TAction
Caption = 'actEnableAll'
@ -225,6 +224,7 @@ inherited BreakpointsDlg: TBreakpointsDlg
object actProperties: TAction
Caption = 'actProperties'
OnExecute = popPropertiesClick
ShortCut = 13
end
object actAddSourceBP: TAction
Category = 'Add'
@ -237,5 +237,10 @@ inherited BreakpointsDlg: TBreakpointsDlg
Caption = 'actAddAddressBP'
OnExecute = actAddAddressBPExecute
end
object actShow: TAction
Caption = 'actShow'
OnExecute = actShowExecute
ShortCut = 16470
end
end
end

View File

@ -53,6 +53,7 @@ type
TBreakPointsDlg = class(TDebuggerDlg)
actAddSourceBP: TAction;
actAddAddressBP: TAction;
actShow: TAction;
actProperties: TAction;
actToggleCurrentEnable: TAction;
actDeleteAllInSrc: TAction;
@ -98,12 +99,11 @@ type
procedure actAddSourceBPExecute(Sender: TObject);
procedure actDisableSelectedExecute(Sender: TObject);
procedure actEnableSelectedExecute(Sender: TObject);
procedure actShowExecute(Sender: TObject);
procedure BreakpointsDlgCREATE(Sender: TObject);
procedure lvBreakPointsClick(Sender: TObject);
procedure lvBreakPointsColumnClick(Sender: TObject; Column: TListColumn);
procedure lvBreakPointsDBLCLICK(Sender: TObject);
procedure lvBreakPointsKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure lvBreakPointsSelectItem(Sender: TObject; Item: TListItem; Selected: Boolean);
procedure popDeleteAllSameSourceCLICK(Sender: TObject);
procedure popDisableAllSameSourceCLICK(Sender: TObject);
@ -114,7 +114,6 @@ type
procedure popDisableAllClick(Sender: TObject);
procedure popEnableAllClick(Sender: TObject);
procedure popDeleteAllClick(Sender: TObject);
procedure popShowClick(Sender: TObject);
private
FBaseDirectory: string;
FBreakPoints: TIDEBreakPoints;
@ -309,6 +308,7 @@ begin
actDeleteAll.ImageIndex := IDEImages.LoadImage(16, 'menu_clean');
actProperties.Caption:= liswlProperties;
actProperties.Hint := lisDbgBreakpointPropertiesHint;
actProperties.ImageIndex := IDEImages.LoadImage(16, 'menu_environment_options');
actToggleCurrentEnable.Caption:= liswlEnabled;
@ -347,9 +347,9 @@ begin
lvBreakPoints.Columns[4].Caption:= lisLazBuildABOAction;
lvBreakPoints.Columns[5].Caption:= lisPassCount;
lvBreakPoints.Columns[6].Caption:= lisGroup;
popShow.Caption:= lisShow;
actShow.Caption := lisShow;
popAdd.Caption:= dlgEdAdd;
actAddSourceBP.Caption:= lisSourceBreakpoint;
actAddSourceBP.Caption := lisSourceBreakpoint;
actAddAddressBP.Caption := listAddressBreakpoint;
end;
@ -371,6 +371,11 @@ begin
end;
end;
procedure TBreakPointsDlg.actShowExecute(Sender: TObject);
begin
JumpToCurrentBreakPoint;
end;
procedure TBreakPointsDlg.actDisableSelectedExecute(Sender: TObject);
var
n: Integer;
@ -427,49 +432,6 @@ begin
JumpToCurrentBreakPoint;
end;
procedure TBreakPointsDlg.lvBreakPointsKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
var
Handled : Boolean;
xyScreenPos : TPoint;
begin
Handled := true;
if shift= [ssAlt] then
begin
case key of
VK_F10:
begin // <ALT-F10> default behaviour: open context menu
xyScreenPos.x:=left+width div 2;
xyScreenPos.y:=top+ height div 2;
mnuPopup.PopUp(xyScreenPos.x,xyScreenPos.y);
end;
else
Handled := false;
end;
end
else
if shift=[] then
begin
case key of
VK_RETURN:
ShowProperties;
VK_D:
DeleteSelectedBreakpoints;
else
Handled := false;
end;
end
else
Handled := false;
if Handled then
Key := 0
else
inherited;
lvBreakPointsSelectItem(nil, nil, False);
end;
procedure TBreakPointsDlg.lvBreakPointsSelectItem(Sender: TObject; Item: TListItem;
Selected: Boolean);
var
@ -483,9 +445,9 @@ begin
ItemSelected := lvBreakPoints.Selected <> nil;
if ItemSelected then
CurBreakPoint:=TIDEBreakPoint(lvBreakPoints.Selected.Data)
CurBreakPoint := TIDEBreakPoint(lvBreakPoints.Selected.Data)
else
CurBreakPoint:=nil;
CurBreakPoint := nil;
SelCanEnable := False;
SelCanDisable := False;
AllCanEnable := False;
@ -517,7 +479,7 @@ begin
actDeleteAllInSrc.Enabled := ItemSelected;
actProperties.Enabled := ItemSelected;
popShow.Enabled := ItemSelected;
actShow.Enabled := ItemSelected;
end;
procedure TBreakPointsDlg.popDeleteAllSameSourceCLICK(Sender: TObject);
@ -621,11 +583,6 @@ begin
end;
end;
procedure TBreakPointsDlg.popShowClick(Sender: TObject);
begin
JumpToCurrentBreakPoint;
end;
procedure TBreakPointsDlg.popDeleteClick(Sender: TObject);
begin
try