diff options
author | Marshall Lerner <malerner@microsoft.com> | 2022-02-12 00:56:31 +0300 |
---|---|---|
committer | Marshall Lerner <malerner@microsoft.com> | 2022-02-14 20:53:02 +0300 |
commit | b6354263840b07b282e871fab32218fe0378b58f (patch) | |
tree | 3ea41ef81c139e7d2a48de885d242d932abc3807 | |
parent | 2721915da443668a4cf94d095ade2478c63f1779 (diff) |
Create a batch change event for onBreakEventAdded (onBreakEventsAdded) and onBreakEventRemoved (onBreakEventsRemoved)
-rw-r--r-- | Mono.Debugging/Mono.Debugging.Client/BreakpointStore.cs | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/Mono.Debugging/Mono.Debugging.Client/BreakpointStore.cs b/Mono.Debugging/Mono.Debugging.Client/BreakpointStore.cs index 52227c4..faae1dc 100644 --- a/Mono.Debugging/Mono.Debugging.Client/BreakpointStore.cs +++ b/Mono.Debugging/Mono.Debugging.Client/BreakpointStore.cs @@ -529,6 +529,20 @@ namespace Mono.Debugging.Client OnChanged (); } + void OnBreakEventsAdded (List<BreakEvent> bes) + { + foreach (BreakEvent be in bes) { + BreakEventAdded?.Invoke (this, new BreakEventArgs (be)); + if (be is Breakpoint bp) { + BreakpointAdded?.Invoke (this, new BreakpointEventArgs (bp)); + } else if (be is Catchpoint ce) { + CatchpointAdded?.Invoke (this, new CatchpointEventArgs (ce)); + } + } + + OnChanged (); + } + void OnBreakEventRemoved (BreakEvent be) { BreakEventRemoved?.Invoke (this, new BreakEventArgs (be)); @@ -540,6 +554,20 @@ namespace Mono.Debugging.Client OnChanged (); } + void OnBreakEventsRemoved (List<BreakEvent> bes) + { + foreach (BreakEvent be in bes) { + BreakEventRemoved?.Invoke (this, new BreakEventArgs (be)); + if (be is Breakpoint bp) { + BreakpointRemoved?.Invoke (this, new BreakpointEventArgs (bp)); + } else if (be is Catchpoint ce) { + CatchpointRemoved?.Invoke (this, new CatchpointEventArgs (ce)); + } + } + + OnChanged (); + } + void OnChanged () { Changed?.Invoke (this, EventArgs.Empty); |