Files
KDDockWidgets/src/private/multisplitter/Widget_qwidget.h
Sergio Martins c87f5ba6eb Move utility function into tests
used by the tests only
2020-07-27 21:32:58 +01:00

68 lines
1.8 KiB
C++

/*
This file is part of KDDockWidgets.
SPDX-FileCopyrightText: 2020 Klarälvdalens Datakonsult AB, a KDAB Group company <info@kdab.com>
Author: Sérgio Martins <sergio.martins@kdab.com>
SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only
Contact KDAB at <info@kdab.com> for commercial licensing options.
*/
#pragma once
#include "Widget.h"
#include <QWidget>
///@file
///@brief A Layouting::Widget that's deals in QWidget
namespace Layouting {
///@brief A Layouting::Widget that's deals in QWidget
/// Allows to host a QWidget in the layout
class MULTISPLITTER_EXPORT Widget_qwidget : public Widget
{
public:
explicit Widget_qwidget(QWidget *thisWidget)
: Widget(thisWidget)
, m_thisWidget(thisWidget)
{
}
~Widget_qwidget() override;
QWidget* asQWidget() const override {
return m_thisWidget;
}
QSize sizeHint() const override;
QSize minSize() const override;
QSize maxSizeHint() const override;
QRect geometry() const override;
void setGeometry(QRect) override;
void setParent(Widget *) override;
QDebug& dumpDebug(QDebug&) const override;
bool isVisible() const override;
void setVisible(bool) const override;
std::unique_ptr<Widget> parentWidget() const override;
std::unique_ptr<Widget> topLevel() const override;
void setLayoutItem(Item *) override {}
void show() override;
void hide() override;
void move(int x, int y) override;
void setSize(int width, int height) override;
void setWidth(int width) override;
void setHeight(int height) override;
void update() override;
QPoint mapFromGlobal(QPoint p) const override;
QPoint mapToGlobal(QPoint p) const override;
private:
QWidget *const m_thisWidget;
Q_DISABLE_COPY(Widget_qwidget)
};
}