Sine Striker
2023-12-03 7a54badb4a5782c551deb2919f3c489fdb4fbc02
src/core/windowitemdelegate.h
@@ -2,27 +2,32 @@
#define WINDOWITEMDELEGATE_H
#include <QtCore/QObject>
#include <QtCore/QPoint>
#include <QtGui/QWindow>
#include <QWKCore/qwkcoreglobal.h>
#include <QWKCore/corewindowagent.h>
namespace QWK {
    class WindowItemDelegate {
        Q_DISABLE_COPY(WindowItemDelegate)
    class QWK_CORE_EXPORT WindowItemDelegate {
    public:
        WindowItemDelegate() = default;
        virtual ~WindowItemDelegate() = default;
        WindowItemDelegate();
        virtual ~WindowItemDelegate();
    public:
        virtual QWindow *window(QObject *obj) const = 0;
        // Property query
        virtual bool isEnabled(QObject *obj) const = 0;
        virtual bool isVisible(QObject *obj) const = 0;
    };
        virtual QRect mapGeometryToScene(const QObject *obj) const = 0;
    using WindowItemDelegatePtr = std::shared_ptr<WindowItemDelegate>;
        // Callbacks
        virtual bool resetQtGrabbedControl() const;
    private:
        Q_DISABLE_COPY_MOVE(WindowItemDelegate)
    };
}