diff --git a/src/KDDockWidgets.h b/src/KDDockWidgets.h index 1fdd0b9d..836adb69 100644 --- a/src/KDDockWidgets.h +++ b/src/KDDockWidgets.h @@ -155,15 +155,6 @@ namespace KDDockWidgets const DefaultSizeMode sizeMode = DefaultSizeMode::Fair; }; - ///@internal - enum FrameOption { - FrameOption_None = 0, - FrameOption_AlwaysShowsTabs = 1, - FrameOption_IsCentralFrame = 2, - FrameOption_IsOverlayed = 4 - }; - Q_DECLARE_FLAGS(FrameOptions, FrameOption) - enum RestoreOption { RestoreOption_None = 0, RestoreOption_RelativeToMainWindow = 1, ///< Skips restoring the main window geometry and the restored dock widgets will use relative sizing. @@ -177,24 +168,6 @@ namespace KDDockWidgets None ///< Don't show any drop indicators while dragging }; - ///@internal - inline QString locationStr(Location loc) - { - switch (loc) { - case KDDockWidgets::Location_None: - return QStringLiteral("none"); - case KDDockWidgets::Location_OnLeft: - return QStringLiteral("left"); - case KDDockWidgets::Location_OnTop: - return QStringLiteral("top"); - case KDDockWidgets::Location_OnRight: - return QStringLiteral("right"); - case KDDockWidgets::Location_OnBottom: - return QStringLiteral("bottom"); - } - - return QString(); - } /// @brief Each main window supports 4 sidebars enum class SideBarLocation { @@ -221,6 +194,49 @@ namespace KDDockWidgets { return ::qHash(static_cast(loc), seed); } + + ///@internal + enum CursorPosition { + CursorPosition_Undefined = 0, + CursorPosition_Left = 1, + CursorPosition_Right = 2, + CursorPosition_Top = 4, + CursorPosition_Bottom = 8, + CursorPosition_TopLeft = CursorPosition_Top | CursorPosition_Left, + CursorPosition_TopRight = CursorPosition_Top | CursorPosition_Right, + CursorPosition_BottomRight = CursorPosition_Bottom | CursorPosition_Right, + CursorPosition_BottomLeft = CursorPosition_Bottom | CursorPosition_Left, + CursorPosition_All = CursorPosition_Left | CursorPosition_Right | CursorPosition_Top | CursorPosition_Bottom + }; + Q_DECLARE_FLAGS(CursorPositions, CursorPosition) + + ///@internal + enum FrameOption { + FrameOption_None = 0, + FrameOption_AlwaysShowsTabs = 1, + FrameOption_IsCentralFrame = 2, + FrameOption_IsOverlayed = 4 + }; + Q_DECLARE_FLAGS(FrameOptions, FrameOption) + + ///@internal + inline QString locationStr(Location loc) + { + switch (loc) { + case KDDockWidgets::Location_None: + return QStringLiteral("none"); + case KDDockWidgets::Location_OnLeft: + return QStringLiteral("left"); + case KDDockWidgets::Location_OnTop: + return QStringLiteral("top"); + case KDDockWidgets::Location_OnRight: + return QStringLiteral("right"); + case KDDockWidgets::Location_OnBottom: + return QStringLiteral("bottom"); + } + + return QString(); + } } QT_BEGIN_NAMESPACE diff --git a/src/MainWindowBase.cpp b/src/MainWindowBase.cpp index cbfcf922..52c1e6df 100644 --- a/src/MainWindowBase.cpp +++ b/src/MainWindowBase.cpp @@ -56,7 +56,7 @@ public: return m_options & MainWindowOption_HasCentralFrame; } - WidgetResizeHandler::CursorPositions allowedResizeSides(SideBarLocation loc) const; + CursorPositions allowedResizeSides(SideBarLocation loc) const; QRect rectForOverlay(Frame *, SideBarLocation) const; SideBarLocation preferredSideBar(DockWidgetBase *) const; @@ -187,25 +187,25 @@ void MainWindowBase::layoutParentContainerEqually(DockWidgetBase *dockWidget) dropArea()->layoutParentContainerEqually(dockWidget); } -WidgetResizeHandler::CursorPositions MainWindowBase::Private::allowedResizeSides(SideBarLocation loc) const +CursorPositions MainWindowBase::Private::allowedResizeSides(SideBarLocation loc) const { // When a sidebar is on top, you can only resize its bottom. // and so forth... switch (loc) { case SideBarLocation::North: - return WidgetResizeHandler::CursorPosition_Bottom; + return CursorPosition_Bottom; case SideBarLocation::East: - return WidgetResizeHandler::CursorPosition_Left; + return CursorPosition_Left; case SideBarLocation::West: - return WidgetResizeHandler::CursorPosition_Right; + return CursorPosition_Right; case SideBarLocation::South: - return WidgetResizeHandler::CursorPosition_Top; + return CursorPosition_Top; case SideBarLocation::None: - return WidgetResizeHandler::CursorPosition_Undefined; + return CursorPosition_Undefined; } - return WidgetResizeHandler::CursorPosition_Undefined; + return CursorPosition_Undefined; } QRect MainWindowBase::Private::rectForOverlay(Frame *frame, SideBarLocation location) const diff --git a/src/private/WidgetResizeHandler.cpp b/src/private/WidgetResizeHandler.cpp index 3891c1cd..4dead43a 100644 --- a/src/private/WidgetResizeHandler.cpp +++ b/src/private/WidgetResizeHandler.cpp @@ -422,7 +422,7 @@ void WidgetResizeHandler::restoreMouseCursor() mTarget->setCursor(Qt::ArrowCursor); } -WidgetResizeHandler::CursorPosition WidgetResizeHandler::cursorPosition(QPoint globalPos) const +CursorPosition WidgetResizeHandler::cursorPosition(QPoint globalPos) const { if (!mTarget) return CursorPosition_Undefined; diff --git a/src/private/WidgetResizeHandler_p.h b/src/private/WidgetResizeHandler_p.h index 1e5b771d..7ef3a1e6 100644 --- a/src/private/WidgetResizeHandler_p.h +++ b/src/private/WidgetResizeHandler_p.h @@ -14,6 +14,7 @@ #include "QWidgetAdapter.h" #include "Qt5Qt6Compat_p.h" +#include "kddockwidgets/KDDockWidgets.h" #include #include @@ -31,20 +32,6 @@ class WidgetResizeHandler : public QObject Q_OBJECT public: - enum CursorPosition { - CursorPosition_Undefined = 0, - CursorPosition_Left = 1, - CursorPosition_Right = 2, - CursorPosition_Top = 4, - CursorPosition_Bottom = 8, - CursorPosition_TopLeft = CursorPosition_Top | CursorPosition_Left, - CursorPosition_TopRight = CursorPosition_Top | CursorPosition_Right, - CursorPosition_BottomRight = CursorPosition_Bottom | CursorPosition_Right, - CursorPosition_BottomLeft = CursorPosition_Bottom | CursorPosition_Left, - CursorPosition_All = CursorPosition_Left | CursorPosition_Right | CursorPosition_Top | CursorPosition_Bottom - }; - Q_DECLARE_FLAGS(CursorPositions, CursorPosition) - /** * @brief CTOR * @param target The target widget that will be resized. Also acts as parent QObject.