| 74 | }; |
| 75 | |
| 76 | DebugController::DebugController(QObject *parent) |
| 77 | : IDebugController(parent), KXMLGUIClient(), |
| 78 | m_breakpointModel(new BreakpointModel(this)), |
| 79 | m_variableCollection(new VariableCollection(this)) |
| 80 | { |
| 81 | qCDebug(SHELL) << "creating debug controller"; |
| 82 | |
| 83 | setComponentName(QStringLiteral("kdevdebugger"), i18n("Debugger")); |
| 84 | setXMLFile(QStringLiteral("kdevdebuggershellui.rc")); |
| 85 | |
| 86 | if (const auto* mainWindow = Core::self()->uiControllerInternal()->activeSublimeWindow()) { |
| 87 | connect(mainWindow, &Sublime::MainWindow::areaChanged, this, &DebugController::areaChanged); |
| 88 | } |
| 89 | |
| 90 | auto* const documentController = KDevelop::ICore::self()->documentController(); |
| 91 | Q_ASSERT(documentController); // DebugController is created after DocumentController. |
| 92 | |
| 93 | // This constructor is invoked before controllers are initialized, and thus before any documents can be opened. |
| 94 | // So our textDocumentCreated() slot will be invoked for all documents. |
| 95 | Q_ASSERT(documentController->openDocuments().empty()); |
| 96 | connect(documentController, &IDocumentController::textDocumentCreated, this, &DebugController::textDocumentCreated); |
| 97 | } |
| 98 | |
| 99 | void DebugController::initialize() |
| 100 | { |
nothing calls this directly
no test coverage detected