diff --git a/python/PyKDDockWidgets/CMakeLists.txt b/python/PyKDDockWidgets/CMakeLists.txt index de8efd22..848a1501 100644 --- a/python/PyKDDockWidgets/CMakeLists.txt +++ b/python/PyKDDockWidgets/CMakeLists.txt @@ -16,6 +16,8 @@ set(PyKDDockWidgets_SRC ${CMAKE_CURRENT_BINARY_DIR}/KDDockWidgets/kddockwidgets_dockwidgetbase_wrapper.h ${CMAKE_CURRENT_BINARY_DIR}/KDDockWidgets/kddockwidgets_dockwidget_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/KDDockWidgets/kddockwidgets_dockwidget_wrapper.h + ${CMAKE_CURRENT_BINARY_DIR}/KDDockWidgets/kddockwidgets_initialoption_wrapper.cpp + ${CMAKE_CURRENT_BINARY_DIR}/KDDockWidgets/kddockwidgets_initialoption_wrapper.h ${CMAKE_CURRENT_BINARY_DIR}/KDDockWidgets/kddockwidgets_mainwindowbase_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/KDDockWidgets/kddockwidgets_mainwindowbase_wrapper.h ${CMAKE_CURRENT_BINARY_DIR}/KDDockWidgets/kddockwidgets_mainwindow_wrapper.cpp diff --git a/python/PyKDDockWidgets/typesystem_kddockwidgets.xml b/python/PyKDDockWidgets/typesystem_kddockwidgets.xml index 17b6bd48..9e6daa2e 100644 --- a/python/PyKDDockWidgets/typesystem_kddockwidgets.xml +++ b/python/PyKDDockWidgets/typesystem_kddockwidgets.xml @@ -16,7 +16,6 @@ otherwise shiboken will ignore the function and will fail to create a wrapper --> - @@ -28,6 +27,9 @@ + + + + @@ -42,6 +45,7 @@ inside of the object-type --> + diff --git a/python/examples/MyMainWindow.py b/python/examples/MyMainWindow.py index d5e8fa78..8ec2296f 100644 --- a/python/examples/MyMainWindow.py +++ b/python/examples/MyMainWindow.py @@ -106,7 +106,8 @@ class MyMainWindow(KDDockWidgets.MainWindow): self.m_dockwidgets.append(self.newDockWidget()) # MainWindow::addDockWidget() attaches a dock widget to the main window: - self.addDockWidget(self.m_dockwidgets[0], KDDockWidgets.Location_OnTop) + initialOpts = KDDockWidgets.InitialOption(KDDockWidgets.InitialVisibilityOption.StartHidden, QtCore.QSize(500, 500)) + self.addDockWidget(self.m_dockwidgets[0], KDDockWidgets.Location_OnBottom, None, initialOpts) # Here, for finer granularity we specify right of dockwidgets[0]: self.addDockWidget(self.m_dockwidgets[1], KDDockWidgets.Location_OnRight, self.m_dockwidgets[0]) diff --git a/src/DockWidget.h b/src/DockWidget.h index 7bee87df..624ced14 100644 --- a/src/DockWidget.h +++ b/src/DockWidget.h @@ -49,8 +49,8 @@ public: * when visible, or stays without a parent when hidden. This allows to support docking * to different main windows. */ - explicit DockWidget(const QString &uniqueName, Options options = DockWidgetBase::Options(), - LayoutSaverOptions layoutSaverOptions = LayoutSaverOptions()); + explicit DockWidget(const QString &uniqueName, Options options = KDDockWidgets::DockWidgetBase::Options(), + LayoutSaverOptions layoutSaverOptions = KDDockWidgets::DockWidgetBase::LayoutSaverOptions()); ///@brief destructor ~DockWidget() override; diff --git a/src/DockWidgetBase.h b/src/DockWidgetBase.h index a4172b6f..3b33904d 100644 --- a/src/DockWidgetBase.h +++ b/src/DockWidgetBase.h @@ -109,8 +109,8 @@ public: * when visible, or stays without a parent when hidden. */ explicit DockWidgetBase(const QString &uniqueName, - Options options = DockWidgetBase::Options(), - LayoutSaverOptions layoutSaverOptions = LayoutSaverOptions()); + Options options = KDDockWidgets::DockWidgetBase::Options(), + LayoutSaverOptions layoutSaverOptions = KDDockWidgets::DockWidgetBase::LayoutSaverOptions()); ///@brief destructor ~DockWidgetBase() override; diff --git a/src/KDDockWidgets.h b/src/KDDockWidgets.h index 07dc82f6..e5a5741d 100644 --- a/src/KDDockWidgets.h +++ b/src/KDDockWidgets.h @@ -150,7 +150,7 @@ struct InitialOption * Next time you call DockWidget::show() it will be shown at that place. This avoids * flickering, as no show()/hide() workarounds are needed. */ - const InitialVisibilityOption visibility = InitialVisibilityOption::StartVisible; + InitialVisibilityOption visibility = InitialVisibilityOption::StartVisible; /** * @brief Allows to control the size a dock widget should get when docked. @@ -161,7 +161,7 @@ struct InitialOption * dock widget to the left then only the preferred width will be taken into account, as the * height will simply fill the whole layout. */ - const QSize preferredSize; + QSize preferredSize; private: friend class Layouting::Item; @@ -174,7 +174,7 @@ private: { } - const DefaultSizeMode sizeMode = DefaultSizeMode::Fair; + DefaultSizeMode sizeMode = DefaultSizeMode::Fair; }; enum RestoreOption