Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/monodevelop.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGreg Munn <gregm@microsoft.com>2019-07-30 21:11:13 +0300
committerGitHub <noreply@github.com>2019-07-30 21:11:13 +0300
commit68aa80fd2b65654b1f59f7795bfbe27e79da6928 (patch)
tree071564bb21adc9b1978214b5c860e4d31558382d /main/src/addins
parenta624c76b31b9ea8ee4cc91eacca4854c57848d45 (diff)
parent50dc91beffc67f1c37aeba622862c3299d2819d5 (diff)
Merge pull request #7953 from mono/jstedfast-modernize-breakpointpad
[Debugger] Modernize the BreakpointPad code a bit
Diffstat (limited to 'main/src/addins')
-rw-r--r--main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/BreakpointPad.cs123
1 files changed, 53 insertions, 70 deletions
diff --git a/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/BreakpointPad.cs b/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/BreakpointPad.cs
index d42a15d8bd..40b79833c5 100644
--- a/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/BreakpointPad.cs
+++ b/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/BreakpointPad.cs
@@ -25,20 +25,21 @@
using Gtk;
using System;
+using System.ComponentModel;
using Stock = MonoDevelop.Ide.Gui.Stock;
+using Mono.Debugging.Client;
+
+using MonoDevelop.Ide;
using MonoDevelop.Core;
using MonoDevelop.Ide.Gui;
using MonoDevelop.Ide.Commands;
using MonoDevelop.Components;
using MonoDevelop.Components.Commands;
-using Mono.Debugging.Client;
using MonoDevelop.Components.Docking;
using MonoDevelop.Ide.Gui.Components;
-using MonoDevelop.Ide;
using MonoDevelop.Components.AutoTest;
-using System.ComponentModel;
namespace MonoDevelop.Debugger
{
@@ -79,7 +80,7 @@ namespace MonoDevelop.Debugger
// Toolbar and menu definitions
gotoCmd = new ActionCommand (LocalCommands.GoToFile, GettextCatalog.GetString ("Go to Breakpoint"));
- ActionCommand propertiesCmd = new ActionCommand (LocalCommands.Properties, GettextCatalog.GetString ("Edit Breakpoint…"), Stock.Properties);
+ var propertiesCmd = new ActionCommand (LocalCommands.Properties, GettextCatalog.GetString ("Edit Breakpoint…"), Stock.Properties);
// The toolbar registers the Properties command with the CommandManager for us,
// but gotoCmd isn't used in the toolbar so we need to register it ourselves for the menu to work
@@ -95,7 +96,7 @@ namespace MonoDevelop.Debugger
menuSet.AddItem (EditCommands.DeleteKey);
menuSet.AddItem (DebugCommands.ClearAllBreakpoints);
- CommandEntrySet toolbarSet = new CommandEntrySet ();
+ var toolbarSet = new CommandEntrySet ();
toolbarSet.AddItem (DebugCommands.EnableDisableBreakpoint);
toolbarSet.AddItem (DebugCommands.ClearAllBreakpoints);
toolbarSet.AddItem (DebugCommands.DisableAllBreakpoints);
@@ -109,7 +110,7 @@ namespace MonoDevelop.Debugger
// The breakpoint list
store = new TreeStore (typeof(string), typeof (bool), typeof(string), typeof(object), typeof(string), typeof(string), typeof(string), typeof(string));
- SemanticModelAttribute modelAttr = new SemanticModelAttribute ("store__Icon", "store__Selected","store_FileName",
+ var modelAttr = new SemanticModelAttribute ("store__Icon", "store__Selected","store_FileName",
"store_Breakpoint", "store_Condition", "store_TraceExp", "store_HitCount", "store_LastTrace");
TypeDescriptor.AddAttributes (store, modelAttr);
@@ -123,21 +124,21 @@ namespace MonoDevelop.Debugger
treeState = new TreeViewState (tree, (int) Columns.Breakpoint);
- TreeViewColumn col = new TreeViewColumn ();
- CellRenderer crp = new CellRendererImage ();
+ var col = new TreeViewColumn ();
+ var crp = new CellRendererImage ();
col.PackStart (crp, false);
col.AddAttribute (crp, "stock_id", (int) Columns.Icon);
tree.AppendColumn (col);
-
- Gtk.CellRendererToggle toggleRender = new Gtk.CellRendererToggle ();
+
+ var toggleRender = new Gtk.CellRendererToggle ();
toggleRender.Toggled += new ToggledHandler (ItemToggled);
col = new TreeViewColumn ();
col.PackStart (toggleRender, false);
col.AddAttribute (toggleRender, "active", (int) Columns.Selected);
tree.AppendColumn (col);
-
- TreeViewColumn FrameCol = new TreeViewColumn ();
- CellRenderer crt = tree.TextRenderer;
+
+ var FrameCol = new TreeViewColumn ();
+ var crt = tree.TextRenderer;
FrameCol.Title = GettextCatalog.GetString ("Name");
FrameCol.PackStart (crt, true);
FrameCol.AddAttribute (crt, "text", (int) Columns.FileName);
@@ -180,7 +181,7 @@ namespace MonoDevelop.Debugger
tree.RowActivated += OnRowActivated;
- DockItemToolbar toolbar = window.GetToolbar (DockPositionType.Top);
+ var toolbar = window.GetToolbar (DockPositionType.Top);
toolbar.Add (toolbarSet, sw);
toolbar.ShowAll ();
}
@@ -209,10 +210,9 @@ namespace MonoDevelop.Debugger
protected void OnProperties ()
{
var selected = tree.Selection.GetSelectedRows ();
- TreeIter iter;
- if (selected.Length == 1 && store.GetIter (out iter, selected[0])) {
- BreakEvent bp = (BreakEvent) store.GetValue (iter, (int) Columns.Breakpoint);
+ if (selected.Length == 1 && store.GetIter (out TreeIter iter, selected[0])) {
+ var bp = (BreakEvent) store.GetValue (iter, (int) Columns.Breakpoint);
if (DebuggingService.ShowBreakpointProperties (ref bp))
UpdateDisplay ();
}
@@ -220,11 +220,10 @@ namespace MonoDevelop.Debugger
string GetIconId (BreakEvent bp)
{
- if (bp is Catchpoint) {
+ if (bp is Catchpoint)
return bp.Enabled ? "md-catchpoint" : "md-catchpoint-disabled";
- } else {
- return bp.Enabled ? "md-breakpoint" : "md-breakpoint-disabled";
- }
+
+ return bp.Enabled ? "md-breakpoint" : "md-breakpoint-disabled";
}
@@ -238,12 +237,10 @@ namespace MonoDevelop.Debugger
// If any breakpoints are disabled, we'll enable them all. Otherwise, disable them all.
foreach (var path in tree.Selection.GetSelectedRows ()) {
- TreeIter iter;
-
- if (!store.GetIter (out iter, path))
+ if (!store.GetIter (out TreeIter iter, path))
continue;
- BreakEvent bp = (BreakEvent) store.GetValue (iter, (int) Columns.Breakpoint);
+ var bp = (BreakEvent) store.GetValue (iter, (int) Columns.Breakpoint);
if (!bp.Enabled) {
enable = true;
break;
@@ -251,12 +248,10 @@ namespace MonoDevelop.Debugger
}
foreach (var path in tree.Selection.GetSelectedRows ()) {
- TreeIter iter;
-
- if (!store.GetIter (out iter, path))
+ if (!store.GetIter (out TreeIter iter, path))
continue;
- BreakEvent bp = (BreakEvent) store.GetValue (iter, (int) Columns.Breakpoint);
+ var bp = (BreakEvent) store.GetValue (iter, (int) Columns.Breakpoint);
bp.Enabled = enable;
store.SetValue (iter, (int) Columns.Icon, GetIconId(bp));
@@ -271,15 +266,12 @@ namespace MonoDevelop.Debugger
protected void OnBpJumpTo ()
{
var selected = tree.Selection.GetSelectedRows ();
- TreeIter iter;
- if (selected.Length == 1 && store.GetIter (out iter, selected[0])) {
+ if (selected.Length == 1 && store.GetIter (out TreeIter iter, selected[0])) {
var be = (BreakEvent) store.GetValue (iter, (int) Columns.Breakpoint);
- var bp = be as Breakpoint;
- if (bp != null) {
- if (!string.IsNullOrEmpty (bp.FileName))
- IdeApp.Workbench.OpenDocument (bp.FileName, null, bp.Line, 1).Ignore ();
- }
+
+ if (be is Breakpoint bp && !string.IsNullOrEmpty (bp.FileName))
+ IdeApp.Workbench.OpenDocument (bp.FileName, null, bp.Line, 1).Ignore ();
}
}
@@ -296,9 +288,7 @@ namespace MonoDevelop.Debugger
Array.Sort (selected, new TreePathComparer (true));
foreach (var path in selected) {
- TreeIter iter;
-
- if (!store.GetIter (out iter, path))
+ if (!store.GetIter (out TreeIter iter, path))
continue;
var bp = (BreakEvent) store.GetValue (iter, (int) Columns.Breakpoint);
@@ -316,9 +306,7 @@ namespace MonoDevelop.Debugger
[CommandUpdateHandler (EditCommands.SelectAll)]
protected void UpdateSelectAll (CommandInfo cmd)
{
- TreeIter iter;
-
- cmd.Enabled = store.GetIterFirst (out iter);
+ cmd.Enabled = store.GetIterFirst (out TreeIter iter);
}
[CommandHandler (EditCommands.SelectAll)]
@@ -360,12 +348,10 @@ namespace MonoDevelop.Debugger
bool enable = false;
foreach (var path in tree.Selection.GetSelectedRows ()) {
- TreeIter iter;
-
- if (!store.GetIter (out iter, path))
+ if (!store.GetIter (out TreeIter iter, path))
continue;
- BreakEvent bp = (BreakEvent)store.GetValue (iter, (int)Columns.Breakpoint);
+ var bp = (BreakEvent)store.GetValue (iter, (int)Columns.Breakpoint);
if (!bp.Enabled) {
enable = true;
break;
@@ -410,12 +396,12 @@ namespace MonoDevelop.Debugger
void ItemToggled (object o, ToggledArgs args)
{
breakpoints.Changed -= OnBreakpointChanged;
-
+
try {
TreeIter iter;
if (store.GetIterFromString (out iter, args.Path)) {
- BreakEvent bp = (BreakEvent) store.GetValue (iter, (int) Columns.Breakpoint);
+ var bp = (BreakEvent) store.GetValue (iter, (int) Columns.Breakpoint);
bp.Enabled = !bp.Enabled;
store.SetValue (iter, (int) Columns.Icon, GetIconId(bp));
@@ -436,31 +422,30 @@ namespace MonoDevelop.Debugger
store.Clear ();
if (breakpoints != null) {
lock (breakpoints) {
- foreach (BreakEvent be in breakpoints.GetBreakevents ()) {
+ foreach (BreakEvent be in breakpoints) {
if (be.NonUserBreakpoint)
continue;
+
string hitCount = be.HitCountMode != HitCountMode.None ? be.CurrentHitCount.ToString () : "";
string traceExp = (be.HitAction & HitAction.PrintExpression) != HitAction.None ? be.TraceExpression : "";
string traceVal = (be.HitAction & HitAction.PrintExpression) != HitAction.None ? be.LastTraceValue : "";
- string name;
+ string name, condition = null;
- var fb = be as FunctionBreakpoint;
- var bp = be as Breakpoint;
- var cp = be as Catchpoint;
- if (fb != null) {
+ if (be is FunctionBreakpoint fb) {
if (fb.ParamTypes != null)
name = fb.FunctionName + "(" + string.Join (", ", fb.ParamTypes) + ")";
else
name = fb.FunctionName;
- } else if (bp != null) {
- name = String.Format ("{0}:{1},{2}", bp.FileName, bp.Line, bp.Column);
- } else if (cp != null) {
+ } else if (be is Breakpoint bp) {
+ name = string.Format ("{0}:{1},{2}", bp.FileName, bp.Line, bp.Column);
+ condition = bp.ConditionExpression;
+ } else if (be is Catchpoint cp) {
name = cp.ExceptionName;
} else {
name = "";
}
- store.AppendValues (GetIconId (be), be.Enabled, name, be, bp != null ? bp.ConditionExpression : null, traceExp, hitCount, traceVal);
+ store.AppendValues (GetIconId (be), be.Enabled, name, be, condition, traceExp, hitCount, traceVal);
}
}
}
@@ -471,37 +456,35 @@ namespace MonoDevelop.Debugger
void OnBreakpointUpdated (object s, BreakpointEventArgs args)
{
Runtime.RunInMainThread (() => {
- TreeIter it;
-
- if (!store.GetIterFirst (out it))
+ if (!store.GetIterFirst (out TreeIter iter))
return;
do {
- var bp = (BreakEvent) store.GetValue (it, (int) Columns.Breakpoint);
+ var bp = (BreakEvent) store.GetValue (iter, (int) Columns.Breakpoint);
if (bp == args.Breakpoint) {
string hitCount = bp.HitCountMode != HitCountMode.None ? bp.CurrentHitCount.ToString () : "";
string traceVal = (bp.HitAction & HitAction.PrintExpression) != HitAction.None ? bp.LastTraceValue : "";
- store.SetValue (it, (int) Columns.HitCount, hitCount);
- store.SetValue (it, (int) Columns.LastTrace, traceVal);
+ store.SetValue (iter, (int) Columns.HitCount, hitCount);
+ store.SetValue (iter, (int) Columns.LastTrace, traceVal);
break;
}
- } while (store.IterNext (ref it));
- });
+ } while (store.IterNext (ref iter));
+ }).Ignore ();
}
protected void OnBreakpointAdded (object o, EventArgs args)
{
- Runtime.RunInMainThread ((System.Action)UpdateDisplay);
+ Runtime.RunInMainThread ((System.Action) UpdateDisplay).Ignore ();
}
protected void OnBreakpointRemoved (object o, EventArgs args)
{
- Runtime.RunInMainThread ((System.Action)UpdateDisplay);
+ Runtime.RunInMainThread ((System.Action) UpdateDisplay).Ignore ();
}
protected void OnBreakpointChanged (object o, EventArgs args)
{
- Runtime.RunInMainThread ((System.Action)UpdateDisplay);
+ Runtime.RunInMainThread ((System.Action) UpdateDisplay).Ignore ();
}
void OnDebuggerStatusCheck (object s, EventArgs a)
@@ -530,4 +513,4 @@ namespace MonoDevelop.Debugger
OnDeleted ();
}
}
-} \ No newline at end of file
+}