qskinny/src/controls/QskInputGrabber.h

36 lines
801 B
C
Raw Normal View History

2018-07-02 06:08:38 +00:00
/******************************************************************************
2024-01-17 13:31:45 +00:00
* QSkinny - Copyright (C) The authors
2023-04-06 07:23:37 +00:00
* SPDX-License-Identifier: BSD-3-Clause
2018-07-02 06:08:38 +00:00
*****************************************************************************/
#ifndef QSK_INPUT_GRABBER_H
2022-03-20 12:11:34 +00:00
#define QSK_INPUT_GRABBER_H
2018-07-02 06:08:38 +00:00
#include "QskControl.h"
2018-08-03 06:15:28 +00:00
class QskInputGrabber : public QskControl
2018-07-02 06:08:38 +00:00
{
Q_OBJECT
using Inherited = QskControl;
2018-08-03 06:15:28 +00:00
public:
2018-07-02 06:08:38 +00:00
QskInputGrabber( QQuickItem* parent = nullptr );
2018-07-31 15:32:25 +00:00
~QskInputGrabber() override;
2018-07-02 06:08:38 +00:00
virtual QRectF grabberRect() const;
virtual bool isBlocking( const QPointF& ) const;
2018-08-03 06:15:28 +00:00
public Q_SLOTS:
2018-07-02 06:08:38 +00:00
void updateGeometry();
2018-08-03 06:15:28 +00:00
protected:
2018-07-31 15:32:25 +00:00
bool event( QEvent* ) override;
2018-07-02 06:08:38 +00:00
2018-08-03 06:15:28 +00:00
private:
2018-07-02 06:08:38 +00:00
class PrivateData;
std::unique_ptr< PrivateData > m_data;
};
#endif