diff --git a/examples/dockwidgets/MyMainWindow.cpp b/examples/dockwidgets/MyMainWindow.cpp index b498d9d2..9ec5079e 100644 --- a/examples/dockwidgets/MyMainWindow.cpp +++ b/examples/dockwidgets/MyMainWindow.cpp @@ -48,7 +48,7 @@ MyMainWindow::MyMainWindow(const QString &uniqueName, KDDockWidgets::MainWindowO bool dockWidget0IsNonClosable, bool nonDockableDockWidget9, bool restoreIsRelative, bool maxSizeForDockWidget8, bool dockwidget5DoesntCloseBeforeRestore, const QString &affinityName, QWidget *parent) - : KDDockWidgets::Views::MainWindow(uniqueName, options, parent) + : KDDockWidgets::Views::MainWindow_qtwidgets(uniqueName, options, parent) , m_dockWidget0IsNonClosable(dockWidget0IsNonClosable) , m_dockWidget9IsNonDockable(nonDockableDockWidget9) , m_restoreIsRelative(restoreIsRelative) @@ -101,7 +101,7 @@ MyMainWindow::MyMainWindow(const QString &uniqueName, KDDockWidgets::MainWindowO }); auto layoutEqually = fileMenu->addAction(QStringLiteral("Layout Equally")); - connect(layoutEqually, &QAction::triggered, this, &MainWindow::layoutEqually); + connect(layoutEqually, &QAction::triggered, this, &MainWindow_qtwidgets::layoutEqually); auto quitAction = fileMenu->addAction(QStringLiteral("Quit")); connect(quitAction, &QAction::triggered, qApp, &QApplication::quit); diff --git a/examples/dockwidgets/MyMainWindow.h b/examples/dockwidgets/MyMainWindow.h index 8457ebb6..baf51c47 100644 --- a/examples/dockwidgets/MyMainWindow.h +++ b/examples/dockwidgets/MyMainWindow.h @@ -14,7 +14,7 @@ #include #include -class MyMainWindow : public KDDockWidgets::Views::MainWindow +class MyMainWindow : public KDDockWidgets::Views::MainWindow_qtwidgets { Q_OBJECT public: diff --git a/examples/mdi_with_docking/main.cpp b/examples/mdi_with_docking/main.cpp index cc5e3fa4..79b06896 100644 --- a/examples/mdi_with_docking/main.cpp +++ b/examples/mdi_with_docking/main.cpp @@ -46,7 +46,7 @@ int main(int argc, char **argv) // # 1. Create our main window - KDDockWidgets::Views::MainWindow mainWindow(QStringLiteral("MyMainWindow"), KDDockWidgets::MainWindowOption_HasCentralWidget); + KDDockWidgets::Views::MainWindow_qtwidgets mainWindow(QStringLiteral("MyMainWindow"), KDDockWidgets::MainWindowOption_HasCentralWidget); mainWindow.setWindowTitle("Main Window"); mainWindow.resize(1600, 1200); mainWindow.show(); diff --git a/examples/minimal/main.cpp b/examples/minimal/main.cpp index 05a4cdad..cc02b65a 100644 --- a/examples/minimal/main.cpp +++ b/examples/minimal/main.cpp @@ -37,7 +37,7 @@ int main(int argc, char **argv) // # 1. Create our main window - KDDockWidgets::Views::MainWindow mainWindow(QStringLiteral("MyMainWindow")); + KDDockWidgets::Views::MainWindow_qtwidgets mainWindow(QStringLiteral("MyMainWindow")); mainWindow.setWindowTitle("Main Window"); mainWindow.resize(1200, 1200); mainWindow.show(); diff --git a/src/MainWindowMDI.cpp b/src/MainWindowMDI.cpp index c3214c04..7564958c 100644 --- a/src/MainWindowMDI.cpp +++ b/src/MainWindowMDI.cpp @@ -16,7 +16,7 @@ using namespace KDDockWidgets; using namespace KDDockWidgets::Controllers; MainWindowMDI::MainWindowMDI(const QString &uniqueName, QWidget *parent, Qt::WindowFlags flags) - : Views::MainWindow(uniqueName, MainWindowOption_MDI, parent, flags) + : Views::MainWindow_qtwidgets(uniqueName, MainWindowOption_MDI, parent, flags) { } diff --git a/src/MainWindowMDI.h b/src/MainWindowMDI.h index 67cd1d5f..c446e5a0 100644 --- a/src/MainWindowMDI.h +++ b/src/MainWindowMDI.h @@ -29,7 +29,7 @@ namespace KDDockWidgets { /// @brief MainWindow sub-class which uses MDI as a layout -class DOCKS_EXPORT MainWindowMDI : public Views::MainWindow +class DOCKS_EXPORT MainWindowMDI : public Views::MainWindow_qtwidgets { Q_OBJECT public: diff --git a/src/layoutlinter_main.cpp b/src/layoutlinter_main.cpp index 2f83b88c..86c48784 100644 --- a/src/layoutlinter_main.cpp +++ b/src/layoutlinter_main.cpp @@ -33,7 +33,7 @@ static bool lint(const QString &filename) }; MainWindowFactoryFunc mwFunc = [](const QString &dwName) { - return static_cast(new Views::MainWindow(dwName)); + return static_cast(new Views::MainWindow_qtwidgets(dwName)); }; KDDockWidgets::Config::self().setDockWidgetFactoryFunc(dwFunc); diff --git a/src/views_qtwidgets/MainWindow_qtwidgets.cpp b/src/views_qtwidgets/MainWindow_qtwidgets.cpp index e435f928..005288b3 100644 --- a/src/views_qtwidgets/MainWindow_qtwidgets.cpp +++ b/src/views_qtwidgets/MainWindow_qtwidgets.cpp @@ -52,10 +52,10 @@ public: }; } -class MainWindow::Private +class MainWindow_qtwidgets::Private { public: - explicit Private(MainWindowOptions, MainWindow *mainWindow) + explicit Private(MainWindowOptions, MainWindow_qtwidgets *mainWindow) : q(mainWindow) , m_supportsAutoHide(Config::self().flags() & Config::Flag_AutoHideSupport) , m_centralWidget(new MyCentralWidget(mainWindow)) @@ -78,7 +78,7 @@ public: m_layout->setContentsMargins(m_centerWidgetMargins * factor); } - MainWindow *const q; + MainWindow_qtwidgets *const q; const bool m_supportsAutoHide; QHash m_sideBars; MyCentralWidget *const m_centralWidget; @@ -91,8 +91,8 @@ MyCentralWidget::~MyCentralWidget() } -MainWindow::MainWindow(const QString &name, MainWindowOptions options, - QWidget *parent, Qt::WindowFlags flags) +MainWindow_qtwidgets::MainWindow_qtwidgets(const QString &name, MainWindowOptions options, + QWidget *parent, Qt::WindowFlags flags) : MainWindowBase(name, options, parent, flags) , d(new Private(options, this)) { @@ -120,33 +120,33 @@ MainWindow::MainWindow(const QString &name, MainWindowOptions options, }); } -MainWindow::~MainWindow() +MainWindow_qtwidgets::~MainWindow_qtwidgets() { delete d; } -void MainWindow::setCentralWidget(QWidget *w) +void MainWindow_qtwidgets::setCentralWidget(QWidget *w) { QMainWindow::setCentralWidget(w); } -Controllers::SideBar *MainWindow::sideBar(SideBarLocation location) const +Controllers::SideBar *MainWindow_qtwidgets::sideBar(SideBarLocation location) const { return d->m_sideBars.value(location); } -void MainWindow::resizeEvent(QResizeEvent *ev) +void MainWindow_qtwidgets::resizeEvent(QResizeEvent *ev) { MainWindowBase::resizeEvent(ev); onResized(ev); // Also call our own handler, since QtQuick doesn't have resizeEvent() } -QMargins MainWindow::centerWidgetMargins() const +QMargins MainWindow_qtwidgets::centerWidgetMargins() const { return d->m_centerWidgetMargins; } -void MainWindow::setCenterWidgetMargins(const QMargins &margins) +void MainWindow_qtwidgets::setCenterWidgetMargins(const QMargins &margins) { if (d->m_centerWidgetMargins == margins) return; @@ -154,7 +154,7 @@ void MainWindow::setCenterWidgetMargins(const QMargins &margins) d->updateMargins(); } -QRect MainWindow::centralAreaGeometry() const +QRect MainWindow_qtwidgets::centralAreaGeometry() const { return centralWidget()->geometry(); } diff --git a/src/views_qtwidgets/MainWindow_qtwidgets.h b/src/views_qtwidgets/MainWindow_qtwidgets.h index a617de77..46b24ad8 100644 --- a/src/views_qtwidgets/MainWindow_qtwidgets.h +++ b/src/views_qtwidgets/MainWindow_qtwidgets.h @@ -33,11 +33,11 @@ namespace Views { * @brief The QMainwindow sub-class that the application should use to be able * to dock KDDockWidget::DockWidget instances. */ -class DOCKS_EXPORT MainWindow : public MainWindowBase +class DOCKS_EXPORT MainWindow_qtwidgets : public MainWindowBase { Q_OBJECT public: - typedef QVector List; + typedef QVector List; ///@brief Constructor. Use it as you would use QMainWindow. ///@param uniqueName Mandatory name that should be unique between all MainWindow instances. @@ -45,11 +45,11 @@ public: ///@param options optional MainWindowOptions to use ///@param parent QObject *parent to pass to QMainWindow constructor. ///@param flags Window flags to pass to QMainWindow constructor. - explicit MainWindow(const QString &uniqueName, MainWindowOptions options = MainWindowOption_None, - QWidget *parent = nullptr, Qt::WindowFlags flags = Qt::WindowFlags()); + explicit MainWindow_qtwidgets(const QString &uniqueName, MainWindowOptions options = MainWindowOption_None, + QWidget *parent = nullptr, Qt::WindowFlags flags = Qt::WindowFlags()); ///@brief Destructor - ~MainWindow() override; + ~MainWindow_qtwidgets() override; ///@brief returns the sidebar for the specified location Controllers::SideBar *sideBar(SideBarLocation) const override; diff --git a/tests/tst_docks.cpp b/tests/tst_docks.cpp index ce0d9583..7f67befc 100644 --- a/tests/tst_docks.cpp +++ b/tests/tst_docks.cpp @@ -5014,7 +5014,7 @@ void TestDocks::tst_dockableMainWindows() auto dock1 = createDockWidget("dock1", new QPushButton("foo")); m1->addDockWidget(dock1, Location_OnTop); - auto m2 = new KDDockWidgets::Views::MainWindow("mainwindow-dockable"); + auto m2 = new KDDockWidgets::Views::MainWindow_qtwidgets("mainwindow-dockable"); auto m2Container = createDockWidget("mainwindow-dw", m2); auto menubar = m2->menuBar(); menubar->addMenu("File"); @@ -5330,11 +5330,11 @@ void TestDocks::tst_floatingWindowDeleted() // Tests a case where the empty floating dock widget wouldn't be deleted // Doesn't repro QTBUG-83030 unfortunately, as we already have an event loop running // but let's leave this here nonetheless - class MyMainWindow : public KDDockWidgets::Views::MainWindow + class MyMainWindow : public KDDockWidgets::Views::MainWindow_qtwidgets { public: MyMainWindow() - : KDDockWidgets::Views::MainWindow("tst_floatingWindowDeleted", MainWindowOption_None) + : KDDockWidgets::Views::MainWindow_qtwidgets("tst_floatingWindowDeleted", MainWindowOption_None) { auto dock1 = new Controllers::DockWidgetBase(QStringLiteral("DockWidget #1")); auto myWidget = new QWidget(); @@ -5362,7 +5362,7 @@ void TestDocks::tst_addToSmallMainWindow6() QWidget container; auto lay = new QVBoxLayout(&container); - Views::MainWindow m("MyMainWindow_tst_addToSmallMainWindow8", MainWindowOption_None); + Views::MainWindow_qtwidgets m("MyMainWindow_tst_addToSmallMainWindow8", MainWindowOption_None); lay->addWidget(&m); container.resize(100, 100); Testing::waitForResize(&container); diff --git a/tests/utils.cpp b/tests/utils.cpp index fe977219..1d259996 100644 --- a/tests/utils.cpp +++ b/tests/utils.cpp @@ -61,7 +61,7 @@ KDDockWidgets::Tests::createMainWindow(QSize sz, KDDockWidgets::MainWindowOption QTest::qWait(100); // the root object gets sized delayed #endif - auto ptr = std::unique_ptr(new Views::MainWindow(mainWindowName, options, parent)); + auto ptr = std::unique_ptr(new Views::MainWindow_qtwidgets(mainWindowName, options, parent)); if (show) ptr->show(); ptr->resize(sz); @@ -127,7 +127,7 @@ std::unique_ptr KDDockWidgets::Tests::createMainWindow(QVector(new Views::MainWindow(QStringLiteral("MyMainWindow%1").arg(count), MainWindowOption_None, parent)); + auto m = std::unique_ptr(new Views::MainWindow_qtwidgets(QStringLiteral("MyMainWindow%1").arg(count), MainWindowOption_None, parent)); auto layout = m->layoutWidget(); m->show(); m->resize(QSize(700, 700));