Debugger: Add confirmation dialogs for delete Watches/History. Make confirm delete breakpoints optional.

This commit is contained in:
Martin 2024-03-20 18:58:17 +01:00
parent 7d98811e16
commit 6c6ab806b3
31 changed files with 431 additions and 40 deletions

View File

@ -52,8 +52,8 @@ object DebuggerGeneralOptionsFrame: TDebuggerGeneralOptionsFrame
Anchors = [akTop, akRight, akBottom]
BorderSpacing.Right = 6
Caption = '…'
OnClick = cmdOpenAdditionalPathClick
TabOrder = 1
OnClick = cmdOpenAdditionalPathClick
end
end
object gcbDebuggerGeneralOptions: TCheckGroup
@ -81,4 +81,29 @@ object DebuggerGeneralOptionsFrame: TDebuggerGeneralOptionsFrame
ChildSizing.ControlsPerLine = 1
TabOrder = 1
end
object gcbDebuggerDialogSettings: TCheckGroup
AnchorSideLeft.Control = Owner
AnchorSideTop.Control = gcbDebuggerGeneralOptions
AnchorSideTop.Side = asrBottom
AnchorSideRight.Control = Owner
AnchorSideRight.Side = asrBottom
Left = 0
Height = 19
Top = 92
Width = 519
Anchors = [akTop, akLeft, akRight]
AutoFill = True
AutoSize = True
BorderSpacing.Top = 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 = 2
end
end

View File

@ -47,6 +47,7 @@ type
cmdOpenAdditionalPath: TButton;
gbAdditionalSearchPath: TGroupBox;
gcbDebuggerGeneralOptions: TCheckGroup;
gcbDebuggerDialogSettings: TCheckGroup;
txtAdditionalPath: TEdit;
procedure cmdOpenAdditionalPathClick(Sender: TObject);
private
@ -87,13 +88,18 @@ begin
with EnvironmentDebugOpts do
begin
// IMPORTANT if more items are added the indexes must be updated here!
gcbDebuggerGeneralOptions.Checked[0] := DebuggerShowStopMessage;
gcbDebuggerGeneralOptions.Checked[1] := DebuggerShowExitCodeMessage;
gcbDebuggerGeneralOptions.Checked[2] := DebuggerResetAfterRun;
gcbDebuggerGeneralOptions.Checked[3] := DebuggerAutoCloseAsm;
gcbDebuggerGeneralOptions.Checked[4] := DebuggerAutoSetInstanceFromClass;
gcbDebuggerGeneralOptions.Checked[5] := DebuggerAllowFunctionCalls;
gcbDebuggerGeneralOptions.Checked[6] := DebuggerOptions.AlwaysBringDbgDialogsToFront;
gcbDebuggerGeneralOptions.Checked[0] := DebuggerResetAfterRun;
gcbDebuggerGeneralOptions.Checked[1] := DebuggerAutoCloseAsm;
gcbDebuggerGeneralOptions.Checked[2] := DebuggerAutoSetInstanceFromClass;
gcbDebuggerGeneralOptions.Checked[3] := DebuggerAllowFunctionCalls;
gcbDebuggerGeneralOptions.Checked[4] := DebuggerOptions.AlwaysBringDbgDialogsToFront;
gcbDebuggerDialogSettings.Checked[0] := DebuggerShowStopMessage;
gcbDebuggerDialogSettings.Checked[1] := DebuggerShowExitCodeMessage;
gcbDebuggerDialogSettings.Checked[2] := ConfirmDeleteAllWatches;
gcbDebuggerDialogSettings.Checked[3] := ConfirmDeleteAllBreakPoints;
gcbDebuggerDialogSettings.Checked[4] := ConfirmDeleteFileBreakPoints;
gcbDebuggerDialogSettings.Checked[5] := ConfirmDeleteAllHistory;
end;
txtAdditionalPath.Text:=EnvironmentOptions.GetParsedDebuggerSearchPath;
end;
@ -112,13 +118,19 @@ procedure TDebuggerGeneralOptionsFrame.Setup(ADialog: TAbstractOptionsEditorDial
begin
gbAdditionalSearchPath.Caption := lisDebugOptionsFrmAdditionalSearchPath;
gcbDebuggerGeneralOptions.Caption := lisDebugOptionsFrmDebuggerGeneralOptions;
gcbDebuggerGeneralOptions.Items.Add(lisDebugOptionsFrmShowMessageOnStop); // 0 Message on stop
gcbDebuggerGeneralOptions.Items.Add(lisDebugOptionsFrmShowExitCodeOnStop); // 1 Exit-code on stop
gcbDebuggerGeneralOptions.Items.Add(lisDebugOptionsFrmResetDebuggerOnEachRun); // 2 reset dbg after each run
gcbDebuggerGeneralOptions.Items.Add(lisDebugOptionsFrmAutoCloseAsm); // 3 auto close asm
gcbDebuggerGeneralOptions.Items.Add(lisDebugOptionsFrmAutoInstanceClass); // 4 auto set class-from-instance
gcbDebuggerGeneralOptions.Items.Add(lisDebugOptionsFrmAllowFunctionCalls); // 5 allow function calls
gcbDebuggerGeneralOptions.Items.Add(lisDebugOptionsFrmDialogsToFront); // 6 bring dialogs to front
gcbDebuggerGeneralOptions.Items.Add(lisDebugOptionsFrmResetDebuggerOnEachRun); // 0 reset dbg after each run
gcbDebuggerGeneralOptions.Items.Add(lisDebugOptionsFrmAutoCloseAsm); // 1 auto close asm
gcbDebuggerGeneralOptions.Items.Add(lisDebugOptionsFrmAutoInstanceClass); // 2 auto set class-from-instance
gcbDebuggerGeneralOptions.Items.Add(lisDebugOptionsFrmAllowFunctionCalls); // 3 allow function calls
gcbDebuggerGeneralOptions.Items.Add(lisDebugOptionsFrmDialogsToFront); // 4 bring dialogs to front
gcbDebuggerDialogSettings.Caption := lisDebugOptionsFrmDebuggerDialogSettings;
gcbDebuggerDialogSettings.Items.Add(lisDebugOptionsFrmShowMessageOnStop); // 0 Message on stop
gcbDebuggerDialogSettings.Items.Add(lisDebugOptionsFrmShowExitCodeOnStop); // 1 Exit-code on stop
gcbDebuggerDialogSettings.Items.Add(lisDebugDialogConfirmDelWatches); // Confirm delete watches
gcbDebuggerDialogSettings.Items.Add(lisDebugDialogConfirmDelBreaks); // Confirm delete breakpoints
gcbDebuggerDialogSettings.Items.Add(lisDebugDialogConfirmDelBreaksFile); // Confirm delete breakpoints in same file
gcbDebuggerDialogSettings.Items.Add(lisDebugDialogConfirmDelHistory); // Confirm delete history
end;
procedure TDebuggerGeneralOptionsFrame.ReadSettings(AOptions: TAbstractIDEOptions);
@ -137,13 +149,18 @@ begin
with EnvironmentDebugOpts do
begin
// IMPORTANT if more items are added the indexes must be updated here!
DebuggerShowStopMessage := gcbDebuggerGeneralOptions.Checked[0];
DebuggerShowExitCodeMessage := gcbDebuggerGeneralOptions.Checked[1];
DebuggerResetAfterRun := gcbDebuggerGeneralOptions.Checked[2];
DebuggerAutoCloseAsm := gcbDebuggerGeneralOptions.Checked[3];
DebuggerAutoSetInstanceFromClass := gcbDebuggerGeneralOptions.Checked[4];
DebuggerAllowFunctionCalls := gcbDebuggerGeneralOptions.Checked[5];
DebuggerOptions.AlwaysBringDbgDialogsToFront := gcbDebuggerGeneralOptions.Checked[6];
DebuggerResetAfterRun := gcbDebuggerGeneralOptions.Checked[0];
DebuggerAutoCloseAsm := gcbDebuggerGeneralOptions.Checked[1];
DebuggerAutoSetInstanceFromClass := gcbDebuggerGeneralOptions.Checked[2];
DebuggerAllowFunctionCalls := gcbDebuggerGeneralOptions.Checked[3];
DebuggerOptions.AlwaysBringDbgDialogsToFront := gcbDebuggerGeneralOptions.Checked[4];
DebuggerShowStopMessage := gcbDebuggerDialogSettings.Checked[0];
DebuggerShowExitCodeMessage := gcbDebuggerDialogSettings.Checked[1];
ConfirmDeleteAllWatches := gcbDebuggerDialogSettings.Checked[2];
ConfirmDeleteAllBreakPoints := gcbDebuggerDialogSettings.Checked[3];
ConfirmDeleteFileBreakPoints := gcbDebuggerDialogSettings.Checked[4];
ConfirmDeleteAllHistory := gcbDebuggerDialogSettings.Checked[5];
end;
end;

View File

@ -5352,8 +5352,14 @@ resourcestring
lisDebugOptionsFrmEditClassWarn = 'Changing the type for the current debugger backend. Use "Add" or "Copy" to create a new backend with a new type.';
lisDebugOptionsFrmAdditionalSearchPath = 'Additional search path';
lisDebugOptionsFrmDebuggerGeneralOptions = 'Debugger general options';
lisDebugOptionsFrmDebuggerDialogSettings = 'Debugger dialogs';
lisDebugOptionsFrmShowMessageOnStop = 'Show message on stop';
lisDebugOptionsFrmShowExitCodeOnStop = 'Show message on stop with Error (Exit-code <> 0)';
lisDebugDialogConfirmDelWatches = 'Confirm to delete all Watches';
lisDebugDialogConfirmDelBreaks = 'Confirm to delete all Breakpoints';
lisDebugDialogConfirmDelBreaksFile = 'Confirm to delete Breakpoints in same file';
lisDebugDialogConfirmDelHistory = 'Confirm to clear History';
lisDebugOptionsFrmResetDebuggerOnEachRun = 'Reset Debugger after each run';
lisDebugOptionsFrmAutoCloseAsm = 'Automatically close the assembler window, after source not found';
lisDebugOptionsFrmAutoInstanceClass = 'Automatically set "use instance class type" for new watches';

View File

@ -41,10 +41,9 @@ uses
Classes, SysUtils, LazFileUtils, Forms, Controls, Dialogs, IDEWindowIntf,
Menus, ComCtrls, Debugger, DebuggerDlg, ActnList, ExtCtrls, IDEImagesIntf,
{$ifdef Windows} ActiveX, {$else} laz.FakeActiveX, {$endif}
DbgIntfDebuggerBase, DbgIntfMiscClasses, BaseDebugManager,
IdeDebuggerStringConstants, DebuggerTreeView, breakpointgroupframe,
IdeDebuggerOpts, IdeIntfStrConsts, SrcEditorIntf, laz.VirtualTrees,
LazDebuggerIntf;
DbgIntfDebuggerBase, DbgIntfMiscClasses, BaseDebugManager, IdeDebuggerStringConstants,
DebuggerTreeView, breakpointgroupframe, IdeDebuggerOpts, EnvDebuggerOptions, IdeIntfStrConsts,
SrcEditorIntf, IDEDialogs, laz.VirtualTrees, LazDebuggerIntf;
type
TBreakPointsDlgState = (
@ -840,6 +839,7 @@ var
VNode: PVirtualNode;
CurBreakPoint: TIDEBreakPoint;
Filename: String;
MsgResult: Integer;
begin
BeginUpdate;
try
@ -847,10 +847,15 @@ begin
if VNode = nil then
exit;
Filename:=TIDEBreakpoint(tvBreakPoints.NodeItem[VNode]).Source;
if MessageDlg(lisDeleteAllBreakpoints,
Format(lisDeleteAllBreakpoints2, [Filename]),
mtConfirmation,[mbYes,mbCancel],0)<>mrYes
then exit;
if EnvironmentDebugOpts.ConfirmDeleteFileBreakPoints then begin
MsgResult:=IDEQuestionDialog(lisDeleteAllBreakpoints, lisDeleteAllBreakpoints2, mtConfirmation,
[mrYes, lisYes, mrNo, lisNo, mrYesToAll, dbgDoNotShowThisMessageAgain], '');
if MsgResult = mrNo then
exit;
if MsgResult = mrYesToAll then
EnvironmentDebugOpts.ConfirmDeleteFileBreakPoints:= False;
end;
for VNode in tvBreakPoints.NoInitItemNodes do
begin
@ -915,14 +920,19 @@ procedure TBreakPointsDlg.popDeleteAllClick(Sender: TObject);
var
VNode: PVirtualNode;
CurBreakPoint: TIDEBreakPoint;
MsgResult: Integer;
begin
if EnvironmentDebugOpts.ConfirmDeleteAllBreakPoints then begin
MsgResult:=IDEQuestionDialog(lisDeleteAllBreakpoints, lisDeleteAllBreakpoints, mtConfirmation,
[mrYes, lisYes, mrNo, lisNo, mrYesToAll, dbgDoNotShowThisMessageAgain], '');
if MsgResult = mrNo then
exit;
if MsgResult = mrYesToAll then
EnvironmentDebugOpts.ConfirmDeleteAllBreakPoints := False;
end;
BeginUpdate;
try
if MessageDlg(lisDeleteAllBreakpoints,
lisDeleteAllBreakpoints,
mtConfirmation,[mbYes,mbCancel],0)<>mrYes
then exit;
for VNode in tvBreakPoints.NoInitItemNodes do
begin
CurBreakPoint:=TIDEBreakPoint(tvBreakPoints.NodeItem[VNode]);

View File

@ -112,6 +112,10 @@ type
TEnvDebuggerOptions = class(TIDESubOptions)
private
FConfirmDeleteAllBreakPoints: boolean;
FConfirmDeleteAllHistory: boolean;
FConfirmDeleteAllWatches: boolean;
FConfirmDeleteFileBreakPoints: boolean;
FDbgConfigStore: TXMLOptionsStorage;
FDebuggerConfig: TDebuggerConfigStore;
FDebuggerAllowFunctionCalls: boolean;
@ -141,6 +145,7 @@ type
const AValue: TDebuggerEventLogColor);
public
constructor Create;
constructor CreateForRtti;
destructor Destroy; override;
procedure ReadFromXml(OnlyDesktop: boolean); override;
procedure WriteToXml(OnlyDesktop: boolean); override;
@ -167,6 +172,11 @@ type
property DebuggerEventLogShowDebugger: Boolean read FDebuggerEventLogShowDebugger write FDebuggerEventLogShowDebugger;
property DebuggerEventLogUseColors: Boolean read FDebuggerEventLogUseColors write FDebuggerEventLogUseColors;
property DebuggerEventLogColors[AIndex: TDBGEventType]: TDebuggerEventLogColor read GetDebuggerEventLogColors write SetDebuggerEventLogColors;
published
property ConfirmDeleteAllWatches: boolean read FConfirmDeleteAllWatches write FConfirmDeleteAllWatches;
property ConfirmDeleteAllBreakPoints: boolean read FConfirmDeleteAllBreakPoints write FConfirmDeleteAllBreakPoints;
property ConfirmDeleteFileBreakPoints: boolean read FConfirmDeleteFileBreakPoints write FConfirmDeleteFileBreakPoints;
property ConfirmDeleteAllHistory: boolean read FConfirmDeleteAllHistory write FConfirmDeleteAllHistory;
end;
var
@ -276,6 +286,8 @@ end;
constructor TEnvDebuggerOptions.Create;
begin
CreateForRtti;
FDebuggerFileHistory := TStringList.Create;
FDebuggerFileHistory.OwnsObjects := True;
FDebuggerEventLogColors := DebuggerDefaultColors;
@ -284,6 +296,14 @@ begin
FDebuggerConfig := TDebuggerConfigStore.Create;
end;
constructor TEnvDebuggerOptions.CreateForRtti;
begin
FConfirmDeleteAllBreakPoints := True;
FConfirmDeleteFileBreakPoints := True;
FConfirmDeleteAllHistory := True;
FConfirmDeleteAllWatches := True;
end;
destructor TEnvDebuggerOptions.Destroy;
begin
FreeAndNil(FDebuggerFileHistory);
@ -297,10 +317,16 @@ var
EventType: TDBGEventType;
i: Integer;
Path: String;
Def: TEnvDebuggerOptions;
begin
if OnlyDesktop then Exit; // Debugger options are not part of desktop.
Path:='EnvironmentOptions/';
// DO not call LoadDebuggerProperties; => not all debuggers are registered when this is first called
Def := TEnvDebuggerOptions.CreateForRtti;
XMLCfg.ReadObject(Path+'DebuggerOptions/', Self, Def);
Def.Free;
FDebuggerConfig.Load;
if XMLCfg.HasPath(Path+'DebuggerFilename/History', False) then begin
i := FDebuggerFileHistory.AddObject('', TStringList.Create);
@ -342,9 +368,15 @@ var
EventType: TDBGEventType;
i: Integer;
Path: String;
Def: TEnvDebuggerOptions;
begin
if OnlyDesktop then Exit;
Path:='EnvironmentOptions/';
Def := TEnvDebuggerOptions.CreateForRtti;
XMLCfg.WriteObject(Path+'DebuggerOptions/', Self, Def);
Def.Free;
FDebuggerConfig.Save;
XMLCfg.SetDeleteValue(Path+'DebuggerOptions/ShowStopMessage/Value',
FDebuggerShowStopMessage, True);

View File

@ -5,9 +5,9 @@ unit HistoryDlg;
interface
uses
Classes, SysUtils, ComCtrls, Debugger, DebuggerDlg, Forms,
IDEWindowIntf,
BaseDebugManager, IDEImagesIntf, Dialogs, IdeDebuggerStringConstants;
Classes, SysUtils, ComCtrls, Debugger, DebuggerDlg, Forms, IDEWindowIntf, BaseDebugManager,
IDEImagesIntf, IDEDialogs, IdeIntfStrConsts, Dialogs, Controls, IdeDebuggerStringConstants,
EnvDebuggerOptions;
type
@ -118,7 +118,18 @@ begin
end;
procedure THistoryDialog.tbClearClick(Sender: TObject);
var
MsgResult: Integer;
begin
if EnvironmentDebugOpts.ConfirmDeleteAllHistory then begin
MsgResult:=IDEQuestionDialog(dlgHistoryDeleteAllConfirm, dlgHistoryDeleteAllConfirm, mtConfirmation,
[mrYes, lisYes, mrNo, lisNo, mrYesToAll, dbgDoNotShowThisMessageAgain], '');
if MsgResult = mrNo then
exit;
if MsgResult = mrYesToAll then
EnvironmentDebugOpts.ConfirmDeleteAllHistory := False;
end;
if SnapshotManager <> nil
then SnapshotManager.Clear;
end;

View File

@ -125,6 +125,7 @@ resourcestring
liswlExpression = 'Expression';
dlgValueColor = 'Value';
dlgValueDataAddr = 'Data-Address';
dlgWatchesDeleteAllConfirm = 'Delete all watches?';
lisWatch = '&Watch';
lisWatchData = 'Watch:';
@ -196,6 +197,7 @@ resourcestring
histdlgBtnShowSnapHint = 'View Snapshots';
histdlgBtnMakeSnapHint = 'Take Snapshot';
histdlgBtnRemoveHint = 'Remove selected entry';
dlgHistoryDeleteAllConfirm = 'Delete complete History?';
// Exception Dialog
lisExceptionDialog = 'Debugger Exception Notification';
@ -495,6 +497,8 @@ resourcestring
DispFormatOptChangingDescrSome = 'Setting fallback options for all windows.';
DispFormatOptProjectText = 'General and specific project settings will be used first. Only if none of them sets a default, then the IDE-wide settings will be tried.';
dbgDoNotShowThisMessageAgain = 'Yes, do not show this message again';
implementation
end.

View File

@ -30,6 +30,10 @@ msgstr ""
msgid "Some groups in the Enable/Disable list do not exist.%0:sCreate them?%0:s%0:s%1:s"
msgstr ""
#: idedebuggerstringconstants.dbgdonotshowthismessageagain
msgid "Yes, do not show this message again"
msgstr ""
#: idedebuggerstringconstants.dispformatbasebin
msgctxt "idedebuggerstringconstants.dispformatbasebin"
msgid "Binary"
@ -473,6 +477,10 @@ msgstr ""
msgid "XML files"
msgstr ""
#: idedebuggerstringconstants.dlghistorydeleteallconfirm
msgid "Delete complete History?"
msgstr ""
#: idedebuggerstringconstants.dlgidedbgdebugger
msgid "Debugger"
msgstr ""
@ -515,6 +523,10 @@ msgstr ""
msgid "Value Formatter"
msgstr ""
#: idedebuggerstringconstants.dlgwatchesdeleteallconfirm
msgid "Delete all watches?"
msgstr ""
#: idedebuggerstringconstants.drsaddwatch
msgctxt "idedebuggerstringconstants.drsaddwatch"
msgid "Add watch"

View File

@ -31,6 +31,10 @@ msgstr "اختر المجموعات الّتي تفعّل عند نقطة ايق
msgid "Some groups in the Enable/Disable list do not exist.%0:sCreate them?%0:s%0:s%1:s"
msgstr "بعض المجموعات في قائمة تفعيل/تعطيل غير موجودة.%0:sعل يتم إنشاؤها؟%0:s%0:s%1:s"
#: idedebuggerstringconstants.dbgdonotshowthismessageagain
msgid "Yes, do not show this message again"
msgstr ""
#: idedebuggerstringconstants.dispformatbasebin
msgctxt "idedebuggerstringconstants.dispformatbasebin"
msgid "Binary"
@ -476,6 +480,10 @@ msgstr "كلّ الجذاذات"
msgid "XML files"
msgstr ""
#: idedebuggerstringconstants.dlghistorydeleteallconfirm
msgid "Delete complete History?"
msgstr ""
#: idedebuggerstringconstants.dlgidedbgdebugger
msgid "Debugger"
msgstr ""
@ -518,6 +526,10 @@ msgstr ""
msgid "Value Formatter"
msgstr ""
#: idedebuggerstringconstants.dlgwatchesdeleteallconfirm
msgid "Delete all watches?"
msgstr ""
#: idedebuggerstringconstants.drsaddwatch
msgctxt "idedebuggerstringconstants.drsaddwatch"
msgid "Add watch"

View File

@ -30,6 +30,10 @@ msgstr ""
msgid "Some groups in the Enable/Disable list do not exist.%0:sCreate them?%0:s%0:s%1:s"
msgstr ""
#: idedebuggerstringconstants.dbgdonotshowthismessageagain
msgid "Yes, do not show this message again"
msgstr ""
#: idedebuggerstringconstants.dispformatbasebin
#, fuzzy
msgctxt "idedebuggerstringconstants.dispformatbasebin"
@ -482,6 +486,10 @@ msgctxt "lazarusidestrconsts.dlgfilterxml"
msgid "XML files"
msgstr "Arxius XML"
#: idedebuggerstringconstants.dlghistorydeleteallconfirm
msgid "Delete complete History?"
msgstr ""
#: idedebuggerstringconstants.dlgidedbgdebugger
msgid "Debugger"
msgstr ""
@ -525,6 +533,10 @@ msgstr ""
msgid "Value Formatter"
msgstr ""
#: idedebuggerstringconstants.dlgwatchesdeleteallconfirm
msgid "Delete all watches?"
msgstr ""
#: idedebuggerstringconstants.drsaddwatch
msgctxt "idedebuggerstringconstants.drsaddwatch"
msgid "Add watch"

View File

@ -31,6 +31,10 @@ msgstr "Vybrat skupiny, které se mají povolit při dosáhnutí bodu přerušen
msgid "Some groups in the Enable/Disable list do not exist.%0:sCreate them?%0:s%0:s%1:s"
msgstr "Některé skupiny v seznamu Povolené/Zakázané neexistují.%0:sMají se vytvořit?%0:s%0:s%1:s"
#: idedebuggerstringconstants.dbgdonotshowthismessageagain
msgid "Yes, do not show this message again"
msgstr ""
#: idedebuggerstringconstants.dispformatbasebin
#, fuzzy
msgctxt "idedebuggerstringconstants.dispformatbasebin"
@ -487,6 +491,10 @@ msgctxt "lazarusidestrconsts.dlgfilterxml"
msgid "XML files"
msgstr "XML soubory"
#: idedebuggerstringconstants.dlghistorydeleteallconfirm
msgid "Delete complete History?"
msgstr ""
#: idedebuggerstringconstants.dlgidedbgdebugger
msgid "Debugger"
msgstr ""
@ -530,6 +538,10 @@ msgstr ""
msgid "Value Formatter"
msgstr ""
#: idedebuggerstringconstants.dlgwatchesdeleteallconfirm
msgid "Delete all watches?"
msgstr ""
#: idedebuggerstringconstants.drsaddwatch
msgctxt "idedebuggerstringconstants.drsaddwatch"
msgid "Add watch"

View File

@ -31,6 +31,10 @@ msgstr "Gruppen auswählen zum Aktivieren bei Haltepunkt"
msgid "Some groups in the Enable/Disable list do not exist.%0:sCreate them?%0:s%0:s%1:s"
msgstr "Einige Gruppen in der Aktivierungsliste existieren nicht.%0:sErzeugen?%0:s%0:s%1:s"
#: idedebuggerstringconstants.dbgdonotshowthismessageagain
msgid "Yes, do not show this message again"
msgstr ""
#: idedebuggerstringconstants.dispformatbasebin
#, fuzzy
msgctxt "idedebuggerstringconstants.dispformatbasebin"
@ -486,6 +490,10 @@ msgctxt "lazarusidestrconsts.dlgfilterxml"
msgid "XML files"
msgstr "XML-Dateien"
#: idedebuggerstringconstants.dlghistorydeleteallconfirm
msgid "Delete complete History?"
msgstr ""
#: idedebuggerstringconstants.dlgidedbgdebugger
msgid "Debugger"
msgstr ""
@ -529,6 +537,10 @@ msgstr ""
msgid "Value Formatter"
msgstr ""
#: idedebuggerstringconstants.dlgwatchesdeleteallconfirm
msgid "Delete all watches?"
msgstr ""
#: idedebuggerstringconstants.drsaddwatch
msgctxt "idedebuggerstringconstants.drsaddwatch"
msgid "Add watch"

View File

@ -31,6 +31,10 @@ msgstr "Seleccionar grupos para activar cuando salte punto de interrupción"
msgid "Some groups in the Enable/Disable list do not exist.%0:sCreate them?%0:s%0:s%1:s"
msgstr "Algunos grupos en la lista Activar/Desactivar no existen.%0:s¿Crearlos?%0:s%0:s%1:s"
#: idedebuggerstringconstants.dbgdonotshowthismessageagain
msgid "Yes, do not show this message again"
msgstr ""
#: idedebuggerstringconstants.dispformatbasebin
#, fuzzy
msgctxt "idedebuggerstringconstants.dispformatbasebin"
@ -489,6 +493,10 @@ msgctxt "lazarusidestrconsts.dlgfilterxml"
msgid "XML files"
msgstr "Archivos XML"
#: idedebuggerstringconstants.dlghistorydeleteallconfirm
msgid "Delete complete History?"
msgstr ""
#: idedebuggerstringconstants.dlgidedbgdebugger
msgid "Debugger"
msgstr ""
@ -532,6 +540,10 @@ msgstr ""
msgid "Value Formatter"
msgstr ""
#: idedebuggerstringconstants.dlgwatchesdeleteallconfirm
msgid "Delete all watches?"
msgstr ""
#: idedebuggerstringconstants.drsaddwatch
msgctxt "idedebuggerstringconstants.drsaddwatch"
msgid "Add watch"

View File

@ -31,6 +31,10 @@ msgstr "Valitse sallittavat ryhmät, kun keskeytyskohta aktivoituu"
msgid "Some groups in the Enable/Disable list do not exist.%0:sCreate them?%0:s%0:s%1:s"
msgstr "Joitain Salli/Estä listan ryhmiä ei ole.%0:sLuodaanko ne?%0:s%0:s%1:s"
#: idedebuggerstringconstants.dbgdonotshowthismessageagain
msgid "Yes, do not show this message again"
msgstr ""
#: idedebuggerstringconstants.dispformatbasebin
#, fuzzy
msgctxt "idedebuggerstringconstants.dispformatbasebin"
@ -485,6 +489,10 @@ msgstr "Kaikki tiedostot"
msgid "XML files"
msgstr "XML-tiedostot"
#: idedebuggerstringconstants.dlghistorydeleteallconfirm
msgid "Delete complete History?"
msgstr ""
#: idedebuggerstringconstants.dlgidedbgdebugger
msgid "Debugger"
msgstr ""
@ -528,6 +536,10 @@ msgstr ""
msgid "Value Formatter"
msgstr ""
#: idedebuggerstringconstants.dlgwatchesdeleteallconfirm
msgid "Delete all watches?"
msgstr ""
#: idedebuggerstringconstants.drsaddwatch
msgctxt "idedebuggerstringconstants.drsaddwatch"
msgid "Add watch"

View File

@ -31,6 +31,10 @@ msgstr "Sélectionner les groupes à activer dès le point d'arrêt atteint"
msgid "Some groups in the Enable/Disable list do not exist.%0:sCreate them?%0:s%0:s%1:s"
msgstr "Certains groupes de la liste Activer/désactiver n'existent pas.%0:sFaut-il les créer ?%0:s%0:s%1:s"
#: idedebuggerstringconstants.dbgdonotshowthismessageagain
msgid "Yes, do not show this message again"
msgstr ""
#: idedebuggerstringconstants.dispformatbasebin
#, fuzzy
msgctxt "idedebuggerstringconstants.dispformatbasebin"
@ -487,6 +491,10 @@ msgctxt "lazarusidestrconsts.dlgfilterxml"
msgid "XML files"
msgstr "Fichiers XML"
#: idedebuggerstringconstants.dlghistorydeleteallconfirm
msgid "Delete complete History?"
msgstr ""
#: idedebuggerstringconstants.dlgidedbgdebugger
msgid "Debugger"
msgstr ""
@ -530,6 +538,10 @@ msgstr ""
msgid "Value Formatter"
msgstr ""
#: idedebuggerstringconstants.dlgwatchesdeleteallconfirm
msgid "Delete all watches?"
msgstr ""
#: idedebuggerstringconstants.drsaddwatch
#, fuzzy
msgctxt "idedebuggerstringconstants.drsaddwatch"

View File

@ -30,6 +30,10 @@ msgstr ""
msgid "Some groups in the Enable/Disable list do not exist.%0:sCreate them?%0:s%0:s%1:s"
msgstr ""
#: idedebuggerstringconstants.dbgdonotshowthismessageagain
msgid "Yes, do not show this message again"
msgstr ""
#: idedebuggerstringconstants.dispformatbasebin
#, fuzzy
msgctxt "idedebuggerstringconstants.dispformatbasebin"
@ -486,6 +490,10 @@ msgctxt "lazarusidestrconsts.dlgfilterxml"
msgid "XML files"
msgstr "קבצי XML"
#: idedebuggerstringconstants.dlghistorydeleteallconfirm
msgid "Delete complete History?"
msgstr ""
#: idedebuggerstringconstants.dlgidedbgdebugger
msgid "Debugger"
msgstr ""
@ -529,6 +537,10 @@ msgstr ""
msgid "Value Formatter"
msgstr ""
#: idedebuggerstringconstants.dlgwatchesdeleteallconfirm
msgid "Delete all watches?"
msgstr ""
#: idedebuggerstringconstants.drsaddwatch
msgctxt "idedebuggerstringconstants.drsaddwatch"
msgid "Add watch"

View File

@ -31,6 +31,10 @@ msgstr "Csoportok kijelölése, amelyek engedélyezve lesznek a töréspont elé
msgid "Some groups in the Enable/Disable list do not exist.%0:sCreate them?%0:s%0:s%1:s"
msgstr "Néhány csoport az Engedélyezés/Letiltás listában nem létezik.%0:sLétre legyenek hozva?%0:s%0:s%1:s"
#: idedebuggerstringconstants.dbgdonotshowthismessageagain
msgid "Yes, do not show this message again"
msgstr ""
#: idedebuggerstringconstants.dispformatbasebin
#, fuzzy
msgctxt "idedebuggerstringconstants.dispformatbasebin"
@ -487,6 +491,10 @@ msgctxt "lazarusidestrconsts.dlgfilterxml"
msgid "XML files"
msgstr "XML fájlok"
#: idedebuggerstringconstants.dlghistorydeleteallconfirm
msgid "Delete complete History?"
msgstr ""
#: idedebuggerstringconstants.dlgidedbgdebugger
msgid "Debugger"
msgstr ""
@ -530,6 +538,10 @@ msgstr ""
msgid "Value Formatter"
msgstr ""
#: idedebuggerstringconstants.dlgwatchesdeleteallconfirm
msgid "Delete all watches?"
msgstr ""
#: idedebuggerstringconstants.drsaddwatch
msgctxt "idedebuggerstringconstants.drsaddwatch"
msgid "Add watch"

View File

@ -30,6 +30,10 @@ msgstr ""
msgid "Some groups in the Enable/Disable list do not exist.%0:sCreate them?%0:s%0:s%1:s"
msgstr ""
#: idedebuggerstringconstants.dbgdonotshowthismessageagain
msgid "Yes, do not show this message again"
msgstr ""
#: idedebuggerstringconstants.dispformatbasebin
#, fuzzy
msgctxt "idedebuggerstringconstants.dispformatbasebin"
@ -482,6 +486,10 @@ msgctxt "lazarusidestrconsts.dlgfilterxml"
msgid "XML files"
msgstr "File XML"
#: idedebuggerstringconstants.dlghistorydeleteallconfirm
msgid "Delete complete History?"
msgstr ""
#: idedebuggerstringconstants.dlgidedbgdebugger
msgid "Debugger"
msgstr ""
@ -525,6 +533,10 @@ msgstr ""
msgid "Value Formatter"
msgstr ""
#: idedebuggerstringconstants.dlgwatchesdeleteallconfirm
msgid "Delete all watches?"
msgstr ""
#: idedebuggerstringconstants.drsaddwatch
msgctxt "idedebuggerstringconstants.drsaddwatch"
msgid "Add watch"

View File

@ -31,6 +31,10 @@ msgstr "Gruppi da abilitare quando è raggiunto il breakpoint"
msgid "Some groups in the Enable/Disable list do not exist.%0:sCreate them?%0:s%0:s%1:s"
msgstr "Alcuni gruppi nella lista Abilita/Disabilita non esistono.%0:sCrearli?%0:s%0:s%1:s"
#: idedebuggerstringconstants.dbgdonotshowthismessageagain
msgid "Yes, do not show this message again"
msgstr ""
#: idedebuggerstringconstants.dispformatbasebin
#, fuzzy
msgctxt "idedebuggerstringconstants.dispformatbasebin"
@ -488,6 +492,10 @@ msgctxt "lazarusidestrconsts.dlgfilterxml"
msgid "XML files"
msgstr "Files XML"
#: idedebuggerstringconstants.dlghistorydeleteallconfirm
msgid "Delete complete History?"
msgstr ""
#: idedebuggerstringconstants.dlgidedbgdebugger
msgid "Debugger"
msgstr ""
@ -531,6 +539,10 @@ msgstr ""
msgid "Value Formatter"
msgstr ""
#: idedebuggerstringconstants.dlgwatchesdeleteallconfirm
msgid "Delete all watches?"
msgstr ""
#: idedebuggerstringconstants.drsaddwatch
msgctxt "idedebuggerstringconstants.drsaddwatch"
msgid "Add watch"

View File

@ -31,6 +31,10 @@ msgstr "ブレークポイントのヒットを有効にするグループを選
msgid "Some groups in the Enable/Disable list do not exist.%0:sCreate them?%0:s%0:s%1:s"
msgstr "有効/無効リストのグループのいくつかが存在しません。%0:s作成しますか%0:s%0:s%1:s"
#: idedebuggerstringconstants.dbgdonotshowthismessageagain
msgid "Yes, do not show this message again"
msgstr ""
#: idedebuggerstringconstants.dispformatbasebin
#, fuzzy
msgctxt "idedebuggerstringconstants.dispformatbasebin"
@ -486,6 +490,10 @@ msgctxt "lazarusidestrconsts.dlgfilterxml"
msgid "XML files"
msgstr "XML ファイル"
#: idedebuggerstringconstants.dlghistorydeleteallconfirm
msgid "Delete complete History?"
msgstr ""
#: idedebuggerstringconstants.dlgidedbgdebugger
msgid "Debugger"
msgstr ""
@ -529,6 +537,10 @@ msgstr ""
msgid "Value Formatter"
msgstr ""
#: idedebuggerstringconstants.dlgwatchesdeleteallconfirm
msgid "Delete all watches?"
msgstr ""
#: idedebuggerstringconstants.drsaddwatch
msgctxt "idedebuggerstringconstants.drsaddwatch"
msgid "Add watch"

View File

@ -31,6 +31,10 @@ msgstr "Pažymėti grupes, kurios aktyvinamos pasiekus stabdos tašką"
msgid "Some groups in the Enable/Disable list do not exist.%0:sCreate them?%0:s%0:s%1:s"
msgstr "Aktyvinimo/pasyvinimo sąraše yra neegzistuojančių grupių.%0:sJas sukurti?%0:s%0:s%1:s"
#: idedebuggerstringconstants.dbgdonotshowthismessageagain
msgid "Yes, do not show this message again"
msgstr ""
#: idedebuggerstringconstants.dispformatbasebin
#, fuzzy
msgctxt "idedebuggerstringconstants.dispformatbasebin"
@ -486,6 +490,10 @@ msgctxt "lazarusidestrconsts.dlgfilterxml"
msgid "XML files"
msgstr "„XML“ failai"
#: idedebuggerstringconstants.dlghistorydeleteallconfirm
msgid "Delete complete History?"
msgstr ""
#: idedebuggerstringconstants.dlgidedbgdebugger
msgid "Debugger"
msgstr ""
@ -529,6 +537,10 @@ msgstr ""
msgid "Value Formatter"
msgstr ""
#: idedebuggerstringconstants.dlgwatchesdeleteallconfirm
msgid "Delete all watches?"
msgstr ""
#: idedebuggerstringconstants.drsaddwatch
msgctxt "idedebuggerstringconstants.drsaddwatch"
msgid "Add watch"

View File

@ -30,6 +30,10 @@ msgstr ""
msgid "Some groups in the Enable/Disable list do not exist.%0:sCreate them?%0:s%0:s%1:s"
msgstr ""
#: idedebuggerstringconstants.dbgdonotshowthismessageagain
msgid "Yes, do not show this message again"
msgstr ""
#: idedebuggerstringconstants.dispformatbasebin
#, fuzzy
msgctxt "idedebuggerstringconstants.dispformatbasebin"
@ -482,6 +486,10 @@ msgctxt "lazarusidestrconsts.dlgfilterxml"
msgid "XML files"
msgstr "XML bestanden"
#: idedebuggerstringconstants.dlghistorydeleteallconfirm
msgid "Delete complete History?"
msgstr ""
#: idedebuggerstringconstants.dlgidedbgdebugger
msgid "Debugger"
msgstr ""
@ -525,6 +533,10 @@ msgstr ""
msgid "Value Formatter"
msgstr ""
#: idedebuggerstringconstants.dlgwatchesdeleteallconfirm
msgid "Delete all watches?"
msgstr ""
#: idedebuggerstringconstants.drsaddwatch
msgctxt "idedebuggerstringconstants.drsaddwatch"
msgid "Add watch"

View File

@ -31,6 +31,10 @@ msgstr "Wybierz grupy do włączenia, gdy punkt przerwania zostanie osiągnięty
msgid "Some groups in the Enable/Disable list do not exist.%0:sCreate them?%0:s%0:s%1:s"
msgstr ""
#: idedebuggerstringconstants.dbgdonotshowthismessageagain
msgid "Yes, do not show this message again"
msgstr ""
#: idedebuggerstringconstants.dispformatbasebin
#, fuzzy
msgctxt "idedebuggerstringconstants.dispformatbasebin"
@ -486,6 +490,10 @@ msgctxt "lazarusidestrconsts.dlgfilterxml"
msgid "XML files"
msgstr "Pliki XML"
#: idedebuggerstringconstants.dlghistorydeleteallconfirm
msgid "Delete complete History?"
msgstr ""
#: idedebuggerstringconstants.dlgidedbgdebugger
msgid "Debugger"
msgstr ""
@ -529,6 +537,10 @@ msgstr ""
msgid "Value Formatter"
msgstr ""
#: idedebuggerstringconstants.dlgwatchesdeleteallconfirm
msgid "Delete all watches?"
msgstr ""
#: idedebuggerstringconstants.drsaddwatch
msgctxt "idedebuggerstringconstants.drsaddwatch"
msgid "Add watch"

View File

@ -27,6 +27,10 @@ msgstr ""
msgid "Some groups in the Enable/Disable list do not exist.%0:sCreate them?%0:s%0:s%1:s"
msgstr ""
#: idedebuggerstringconstants.dbgdonotshowthismessageagain
msgid "Yes, do not show this message again"
msgstr ""
#: idedebuggerstringconstants.dispformatbasebin
msgctxt "idedebuggerstringconstants.dispformatbasebin"
msgid "Binary"
@ -476,6 +480,10 @@ msgctxt "lazarusidestrconsts.dlgfilterxml"
msgid "XML files"
msgstr ""
#: idedebuggerstringconstants.dlghistorydeleteallconfirm
msgid "Delete complete History?"
msgstr ""
#: idedebuggerstringconstants.dlgidedbgdebugger
msgid "Debugger"
msgstr ""
@ -519,6 +527,10 @@ msgstr ""
msgid "Value Formatter"
msgstr ""
#: idedebuggerstringconstants.dlgwatchesdeleteallconfirm
msgid "Delete all watches?"
msgstr ""
#: idedebuggerstringconstants.drsaddwatch
msgctxt "idedebuggerstringconstants.drsaddwatch"
msgid "Add watch"

View File

@ -38,6 +38,10 @@ msgstr "Selecionar grupos à habilitar quando o ponto de parada for atingido"
msgid "Some groups in the Enable/Disable list do not exist.%0:sCreate them?%0:s%0:s%1:s"
msgstr "Alguns grupos na lista Habilitar/Desabilitar não existem.%0:sCriá-los?%0:s%0:s%1:s"
#: idedebuggerstringconstants.dbgdonotshowthismessageagain
msgid "Yes, do not show this message again"
msgstr ""
#: idedebuggerstringconstants.dispformatbasebin
#, fuzzy
msgctxt "idedebuggerstringconstants.dispformatbasebin"
@ -520,6 +524,10 @@ msgctxt "lazarusidestrconsts.dlgfilterxml"
msgid "XML files"
msgstr "Arquivos XML"
#: idedebuggerstringconstants.dlghistorydeleteallconfirm
msgid "Delete complete History?"
msgstr ""
#: idedebuggerstringconstants.dlgidedbgdebugger
msgid "Debugger"
msgstr "Depurador"
@ -563,6 +571,10 @@ msgstr "Endereço-Dados"
msgid "Value Formatter"
msgstr ""
#: idedebuggerstringconstants.dlgwatchesdeleteallconfirm
msgid "Delete all watches?"
msgstr ""
#: idedebuggerstringconstants.drsaddwatch
msgctxt "idedebuggerstringconstants.drsaddwatch"
msgid "Add watch"

View File

@ -37,6 +37,10 @@ msgstr "Выберите группы для включения при дост
msgid "Some groups in the Enable/Disable list do not exist.%0:sCreate them?%0:s%0:s%1:s"
msgstr "Некоторые группы в списке включения/отключения не существуют.%0:sСоздать их?%0:s%0:s%1:s"
#: idedebuggerstringconstants.dbgdonotshowthismessageagain
msgid "Yes, do not show this message again"
msgstr ""
#: idedebuggerstringconstants.dispformatbasebin
msgctxt "idedebuggerstringconstants.dispformatbasebin"
msgid "Binary"
@ -488,6 +492,10 @@ msgctxt "lazarusidestrconsts.dlgfilterxml"
msgid "XML files"
msgstr "Файлы XML"
#: idedebuggerstringconstants.dlghistorydeleteallconfirm
msgid "Delete complete History?"
msgstr ""
#: idedebuggerstringconstants.dlgidedbgdebugger
msgid "Debugger"
msgstr "Отладчик"
@ -531,6 +539,10 @@ msgstr "Адрес данных"
msgid "Value Formatter"
msgstr "Форматирование значений"
#: idedebuggerstringconstants.dlgwatchesdeleteallconfirm
msgid "Delete all watches?"
msgstr ""
#: idedebuggerstringconstants.drsaddwatch
msgctxt "idedebuggerstringconstants.drsaddwatch"
msgid "Add watch"

View File

@ -37,6 +37,10 @@ msgstr ""
msgid "Some groups in the Enable/Disable list do not exist.%0:sCreate them?%0:s%0:s%1:s"
msgstr ""
#: idedebuggerstringconstants.dbgdonotshowthismessageagain
msgid "Yes, do not show this message again"
msgstr ""
#: idedebuggerstringconstants.dispformatbasebin
#, fuzzy
msgctxt "idedebuggerstringconstants.dispformatbasebin"
@ -505,6 +509,10 @@ msgctxt "lazarusidestrconsts.dlgfilterxml"
msgid "XML files"
msgstr "Súbory XML"
#: idedebuggerstringconstants.dlghistorydeleteallconfirm
msgid "Delete complete History?"
msgstr ""
#: idedebuggerstringconstants.dlgidedbgdebugger
msgid "Debugger"
msgstr "Debuger"
@ -548,6 +556,10 @@ msgstr ""
msgid "Value Formatter"
msgstr ""
#: idedebuggerstringconstants.dlgwatchesdeleteallconfirm
msgid "Delete all watches?"
msgstr ""
#: idedebuggerstringconstants.drsaddwatch
#, fuzzy
msgctxt "idedebuggerstringconstants.drsaddwatch"

View File

@ -37,6 +37,10 @@ msgstr "Kesme noktasına gelindiğinde etkinleştirilecek grupları seç"
msgid "Some groups in the Enable/Disable list do not exist.%0:sCreate them?%0:s%0:s%1:s"
msgstr "Etkin/Devre dışı listesindeki bazı gruplar mevcut değil.%0:sOluşturulsun mu?%0:s%0:s%1:s"
#: idedebuggerstringconstants.dbgdonotshowthismessageagain
msgid "Yes, do not show this message again"
msgstr ""
#: idedebuggerstringconstants.dispformatbasebin
#, fuzzy
msgctxt "idedebuggerstringconstants.dispformatbasebin"
@ -505,6 +509,10 @@ msgstr "Tüm dosyalar"
msgid "XML files"
msgstr "XML dosyaları"
#: idedebuggerstringconstants.dlghistorydeleteallconfirm
msgid "Delete complete History?"
msgstr ""
#: idedebuggerstringconstants.dlgidedbgdebugger
msgid "Debugger"
msgstr "Hata ayıklayıcı"
@ -547,6 +555,10 @@ msgstr "Veri-Adres"
msgid "Value Formatter"
msgstr ""
#: idedebuggerstringconstants.dlgwatchesdeleteallconfirm
msgid "Delete all watches?"
msgstr ""
#: idedebuggerstringconstants.drsaddwatch
msgctxt "idedebuggerstringconstants.drsaddwatch"
msgid "Add watch"

View File

@ -39,6 +39,10 @@ msgstr "Виберіть групи для ввімкнення при заді
msgid "Some groups in the Enable/Disable list do not exist.%0:sCreate them?%0:s%0:s%1:s"
msgstr "Деякі групи в списку ввімкнення/вимкнення не існують.%0:sСтворити їх?%0:s%0:s%1:s"
#: idedebuggerstringconstants.dbgdonotshowthismessageagain
msgid "Yes, do not show this message again"
msgstr ""
#: idedebuggerstringconstants.dispformatbasebin
#, fuzzy
msgctxt "idedebuggerstringconstants.dispformatbasebin"
@ -509,6 +513,10 @@ msgctxt "lazarusidestrconsts.dlgfilterxml"
msgid "XML files"
msgstr "Файли XML"
#: idedebuggerstringconstants.dlghistorydeleteallconfirm
msgid "Delete complete History?"
msgstr ""
#: idedebuggerstringconstants.dlgidedbgdebugger
msgid "Debugger"
msgstr "Зневаджувач"
@ -552,6 +560,10 @@ msgstr "Дані-адреса"
msgid "Value Formatter"
msgstr ""
#: idedebuggerstringconstants.dlgwatchesdeleteallconfirm
msgid "Delete all watches?"
msgstr ""
#: idedebuggerstringconstants.drsaddwatch
msgctxt "idedebuggerstringconstants.drsaddwatch"
msgid "Add watch"

View File

@ -38,6 +38,10 @@ msgstr "选择组来启用 当断点被命中时"
msgid "Some groups in the Enable/Disable list do not exist.%0:sCreate them?%0:s%0:s%1:s"
msgstr "一些组在启用/禁用列表中不存在。%0:s创建它们吗%0:s%0:s%1:s"
#: idedebuggerstringconstants.dbgdonotshowthismessageagain
msgid "Yes, do not show this message again"
msgstr ""
#: idedebuggerstringconstants.dispformatbasebin
#, fuzzy
msgctxt "idedebuggerstringconstants.dispformatbasebin"
@ -492,6 +496,10 @@ msgctxt "lazarusidestrconsts.dlgfilterxml"
msgid "XML files"
msgstr "XML文件"
#: idedebuggerstringconstants.dlghistorydeleteallconfirm
msgid "Delete complete History?"
msgstr ""
#: idedebuggerstringconstants.dlgidedbgdebugger
msgid "Debugger"
msgstr ""
@ -535,6 +543,10 @@ msgstr ""
msgid "Value Formatter"
msgstr ""
#: idedebuggerstringconstants.dlgwatchesdeleteallconfirm
msgid "Delete all watches?"
msgstr ""
#: idedebuggerstringconstants.drsaddwatch
msgctxt "idedebuggerstringconstants.drsaddwatch"
msgid "Add watch"

View File

@ -43,12 +43,12 @@ uses
// LazUtils
LazLoggerBase, LazUTF8,
// LCL
Clipbrd, Menus, ComCtrls, ActnList, ExtCtrls, StdCtrls, LCLType, LMessages, SpinEx,
Clipbrd, Menus, ComCtrls, ActnList, ExtCtrls, StdCtrls, LCLType, LMessages, Dialogs, SpinEx,
laz.VirtualTrees,
//SynEdit
SynEdit,
// IdeIntf
IDEWindowIntf, IDEImagesIntf, IdeIntfStrConsts, IdeDebuggerWatchValueIntf,
IDEWindowIntf, IDEImagesIntf, IdeIntfStrConsts, IdeDebuggerWatchValueIntf, IDEDialogs,
// DebuggerIntf
DbgIntfBaseTypes, DbgIntfDebuggerBase, DbgIntfMiscClasses,
// LazDebuggerIntf
@ -902,7 +902,17 @@ end;
procedure TWatchesDlg.popDeleteAllClick(Sender: TObject);
var
VNode: PVirtualNode;
MsgResult: Integer;
begin
if EnvironmentDebugOpts.ConfirmDeleteAllWatches then begin
MsgResult:=IDEQuestionDialog(dlgWatchesDeleteAllConfirm, dlgWatchesDeleteAllConfirm, mtConfirmation,
[mrYes, lisYes, mrNo, lisNo, mrYesToAll, dbgDoNotShowThisMessageAgain], '');
if MsgResult = mrNo then
exit;
if MsgResult = mrYesToAll then
EnvironmentDebugOpts.ConfirmDeleteAllWatches := False;
end;
Include(FStateFlags, wdsfNeedDeleteAll);
if wdsfUpdating in FStateFlags then exit;
Exclude(FStateFlags, wdsfNeedDeleteAll);