/* This file is part of KDDockWidgets. SPDX-FileCopyrightText: 2020 Klarälvdalens Datakonsult AB, a KDAB Group company Author: Sérgio Martins SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only Contact KDAB at for commercial licensing options. */ #pragma once #include "Widget.h" #include ///@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 parentWidget() const override; std::unique_ptr 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) }; }