qml: Abstract some methods that QQuickItem doesn't have

geometry(), isMinimized(), etc.
This commit is contained in:
Sergio Martins
2020-08-06 23:07:43 +01:00
parent 6bb0d7ab08
commit 78dcb0f7f3
6 changed files with 57 additions and 12 deletions

View File

@@ -23,9 +23,11 @@
#include "../../docks_export.h"
#include <QWindow>
#include <QWidget>
namespace KDDockWidgets {
namespace Private {
/// @brief Helper since QQuickItem::parentItem() has a different name than QWidget::parentWidget()
inline QWidget *parentWidget(QWidget *widget)
@@ -33,8 +35,21 @@ inline QWidget *parentWidget(QWidget *widget)
return widget ? widget->parentWidget() : nullptr;
}
inline bool isMinimized(const QWidget *widget)
{
QWindow *window = widget ? widget->window()->windowHandle() : nullptr;
return KDDockWidgets::Private::isMinimized(window);
}
inline QRect geometry(const QWidget *w)
{
return w ? w->geometry() : QRect();
}
DOCKS_EXPORT QWidget *widgetForWindow(QWindow *window);
}
class FloatingWindow;
class DOCKS_EXPORT QWidgetAdapter : public QWidget