TeamWindow::~TeamWindow() { if (fThreadListView != NULL) fThreadListView->UnsetListener(); if (fStackTraceView != NULL) fStackTraceView->UnsetListener(); if (fSourceView != NULL) fSourceView->UnsetListener(); if (fInspectorWindow != NULL) { BMessenger messenger(fInspectorWindow); if (messenger.LockTarget()) fInspectorWindow->Quit(); } fTeam->RemoveListener(this); _SetActiveSourceCode(NULL); _SetActiveFunction(NULL); _SetActiveBreakpoint(NULL); _SetActiveStackFrame(NULL); _SetActiveStackTrace(NULL); _SetActiveImage(NULL); _SetActiveThread(NULL); delete fFilePanel; if (fActiveSourceWorker > 0) wait_for_thread(fActiveSourceWorker, NULL); }
void TeamWindow::BreakpointSelectionChanged(BreakpointProxyList &proxies) { if (proxies.CountItems() == 0 && fActiveBreakpoint != NULL) { fActiveBreakpoint->ReleaseReference(); fActiveBreakpoint = NULL; } else if (proxies.CountItems() == 1) { BreakpointProxy* proxy = proxies.ItemAt(0); if (proxy->Type() == BREAKPOINT_PROXY_TYPE_BREAKPOINT) _SetActiveBreakpoint(proxy->GetBreakpoint()); } // if more than one item is selected, do nothing. }
TeamWindow::~TeamWindow() { if (fThreadListView != NULL) fThreadListView->UnsetListener(); if (fStackTraceView != NULL) fStackTraceView->UnsetListener(); if (fSourceView != NULL) fSourceView->UnsetListener(); fTeam->RemoveListener(this); _SetActiveSourceCode(NULL); _SetActiveFunction(NULL); _SetActiveBreakpoint(NULL); _SetActiveStackFrame(NULL); _SetActiveStackTrace(NULL); _SetActiveImage(NULL); _SetActiveThread(NULL); delete fFilePanel; }
void TeamWindow::BreakpointSelectionChanged(UserBreakpoint* breakpoint) { _SetActiveBreakpoint(breakpoint); }