예제 #1
0
            void BoundCodeBreakpointsService_BreakpointsModified(object sender, DbgBreakpointsModifiedEventArgs e)
            {
                Dispatcher.VerifyAccess();
                if (!owner.IsDebugging)
                {
                    return;
                }
                List <DbgCodeBreakpoint> newEnabledBreakpoints  = null;
                List <DbgCodeBreakpoint> newDisabledBreakpoints = null;

                foreach (var info in e.Breakpoints)
                {
                    var oldIsEnabled = info.OldSettings.IsEnabled;
                    var newIsEnabled = info.Breakpoint.Settings.IsEnabled;
                    if (oldIsEnabled == newIsEnabled)
                    {
                        continue;
                    }
                    if (newIsEnabled)
                    {
                        if (newEnabledBreakpoints == null)
                        {
                            newEnabledBreakpoints = new List <DbgCodeBreakpoint>();
                        }
                        newEnabledBreakpoints.Add(info.Breakpoint);
                    }
                    else
                    {
                        if (newDisabledBreakpoints == null)
                        {
                            newDisabledBreakpoints = new List <DbgCodeBreakpoint>();
                        }
                        newDisabledBreakpoints.Add(info.Breakpoint);
                    }
                }
                if (newDisabledBreakpoints != null)
                {
                    RemoveBoundBreakpoints_DbgThread(newDisabledBreakpoints);
                }
                if (newEnabledBreakpoints != null)
                {
                    AddBoundBreakpoints_DbgThread(newEnabledBreakpoints);
                }
            }
예제 #2
0
 void DbgCodeBreakpointsService_BreakpointsModified(object sender, DbgBreakpointsModifiedEventArgs e) => BreakpointsModified();
예제 #3
0
 void DbgModuleBreakpointsService_BreakpointsModified(object sender, DbgBreakpointsModifiedEventArgs e) => Save();
예제 #4
0
 void DbgCodeBreakpointsService_BreakpointsModified(object sender, DbgBreakpointsModifiedEventArgs e) =>
 BreakpointsModified?.Invoke(this, e);