diff --git a/src/plugins/debugger/debuggermainwindow.cpp b/src/plugins/debugger/debuggermainwindow.cpp index 6f08a02205a..a482d3762bd 100644 --- a/src/plugins/debugger/debuggermainwindow.cpp +++ b/src/plugins/debugger/debuggermainwindow.cpp @@ -496,4 +496,14 @@ void Perspective::addOperation(const Operation &operation) m_operations.append(operation); } +void Perspective::addWindow(QWidget *widget, + Perspective::OperationType op, + bool visibleByDefault, + Qt::DockWidgetArea area) +{ + const QByteArray dockId = widget->objectName().toUtf8(); + QTC_CHECK(!dockId.isEmpty()); + m_operations.append({dockId, widget, {}, op, visibleByDefault, area}); +} + } // Utils diff --git a/src/plugins/debugger/debuggermainwindow.h b/src/plugins/debugger/debuggermainwindow.h index 16883b874ec..382646daad2 100644 --- a/src/plugins/debugger/debuggermainwindow.h +++ b/src/plugins/debugger/debuggermainwindow.h @@ -70,11 +70,16 @@ public: Perspective() = default; // Takes ownership of \a centralWidget and all dock widgets in \a operations. - Perspective(const QString &name, const QVector &operations, + Perspective(const QString &name, + const QVector &operations = {}, QWidget *centralWidget = nullptr); ~Perspective(); void addOperation(const Operation &operation); + void addWindow(QWidget *widget, + OperationType op, + bool visibleByDefault = true, + Qt::DockWidgetArea area = Qt::BottomDockWidgetArea); QVector operations() const { return m_operations; } QVector docks() const { return m_docks; }