cb::shared_ptr<DebuggerBreakpoint> DebuggerState::AddBreakpoint(const wxString& file, int line, bool temp, const wxString& lineText) { wxString bpfile = ConvertToValidFilename(file); // do we have a bp there? int idx = HasBreakpoint(bpfile, line, temp); // if yes, remove old breakpoint first if (idx != -1) RemoveBreakpoint(idx); // create new bp // Manager::Get()->GetLogManager()->DebugLog(F(_T("DebuggerState::AddBreakpoint() : bp: file=%s, bpfile=%s"), file.c_str(), bpfile.c_str())); cb::shared_ptr<DebuggerBreakpoint> bp(new DebuggerBreakpoint); bp->type = DebuggerBreakpoint::bptCode; bp->filename = bpfile; bp->filenameAsPassed = file; bp->line = line; bp->temporary = temp; bp->lineText = lineText; bp->userData = Manager::Get()->GetProjectManager()->FindProjectForFile(file, nullptr, false, false); AddBreakpoint(bp); return bp; }
void SciEdit::ClearBreakpoints(void) { long lLines = GetLineCount(); for (long i = 0; i < lLines; i++) { if (HasBreakpoint(i)) RemoveBreakpoint(i); } }