QskEvent::clone support overrides
This commit is contained in:
parent
9f189119da
commit
de419971c8
@ -86,6 +86,14 @@ QskEvent::QskEvent( QskEvent::Type type )
|
||||
{
|
||||
}
|
||||
|
||||
#if QT_VERSION < QT_VERSION_CHECK( 6, 0, 0 )
|
||||
|
||||
QskEvent* QskEvent::clone() const
|
||||
{
|
||||
return new QskEvent( *this );
|
||||
}
|
||||
|
||||
#endif
|
||||
// -- QskGeometryChangeEvent
|
||||
|
||||
QskGeometryChangeEvent::QskGeometryChangeEvent(
|
||||
@ -96,6 +104,11 @@ QskGeometryChangeEvent::QskGeometryChangeEvent(
|
||||
{
|
||||
}
|
||||
|
||||
QskGeometryChangeEvent* QskGeometryChangeEvent::clone() const
|
||||
{
|
||||
return new QskGeometryChangeEvent( *this );
|
||||
}
|
||||
|
||||
bool QskGeometryChangeEvent::isResized() const
|
||||
{
|
||||
return ( m_rect.width() != m_oldRect.width() ) ||
|
||||
@ -118,6 +131,11 @@ QskWindowChangeEvent::QskWindowChangeEvent(
|
||||
{
|
||||
}
|
||||
|
||||
QskWindowChangeEvent* QskWindowChangeEvent::clone() const
|
||||
{
|
||||
return new QskWindowChangeEvent( *this );
|
||||
}
|
||||
|
||||
// -- QskPopupEvent
|
||||
|
||||
QskPopupEvent::QskPopupEvent( Type type, QskPopup* popup )
|
||||
@ -126,20 +144,17 @@ QskPopupEvent::QskPopupEvent( Type type, QskPopup* popup )
|
||||
{
|
||||
}
|
||||
|
||||
// -- QskGestureEvent
|
||||
|
||||
QskGestureEvent::QskGestureEvent(
|
||||
const QskGesture* gesture, bool ownedByEvent )
|
||||
: QskEvent( QskEvent::Gesture )
|
||||
, m_gesture( gesture )
|
||||
, m_gestureOwnedByEvent( ownedByEvent )
|
||||
QskPopupEvent* QskPopupEvent::clone() const
|
||||
{
|
||||
return new QskPopupEvent( *this );
|
||||
}
|
||||
|
||||
QskGestureEvent::~QskGestureEvent()
|
||||
// -- QskGestureEvent
|
||||
|
||||
QskGestureEvent::QskGestureEvent( const QskGesture* gesture )
|
||||
: QskEvent( QskEvent::Gesture )
|
||||
, m_gesture( gesture )
|
||||
{
|
||||
if ( m_gestureOwnedByEvent )
|
||||
delete m_gesture;
|
||||
}
|
||||
|
||||
// -- QskAnimatorEvent
|
||||
@ -151,6 +166,7 @@ QskAnimatorEvent::QskAnimatorEvent( QskAspect::Aspect aspect, State state )
|
||||
{
|
||||
}
|
||||
|
||||
QskAnimatorEvent::~QskAnimatorEvent()
|
||||
QskAnimatorEvent* QskAnimatorEvent::clone() const
|
||||
{
|
||||
return new QskAnimatorEvent( *this );
|
||||
}
|
||||
|
@ -10,6 +10,7 @@
|
||||
|
||||
#include <qcoreevent.h>
|
||||
#include <qrect.h>
|
||||
#include <memory>
|
||||
|
||||
class QskGesture;
|
||||
class QskPopup;
|
||||
@ -45,6 +46,11 @@ class QSK_EXPORT QskEvent : public QEvent
|
||||
};
|
||||
|
||||
QskEvent( QskEvent::Type type );
|
||||
|
||||
#if QT_VERSION < QT_VERSION_CHECK( 6, 0, 0 )
|
||||
virtual QskEvent *clone() const;
|
||||
#endif
|
||||
|
||||
};
|
||||
|
||||
class QSK_EXPORT QskGeometryChangeEvent : public QskEvent
|
||||
@ -58,6 +64,8 @@ class QSK_EXPORT QskGeometryChangeEvent : public QskEvent
|
||||
bool isResized() const;
|
||||
bool isMoved() const;
|
||||
|
||||
QskGeometryChangeEvent* clone() const override;
|
||||
|
||||
private:
|
||||
const QRectF m_rect;
|
||||
const QRectF m_oldRect;
|
||||
@ -71,6 +79,8 @@ class QSK_EXPORT QskWindowChangeEvent : public QskEvent
|
||||
inline QQuickWindow* window() const { return m_window; }
|
||||
inline QQuickWindow* oldWindow() const { return m_oldWindow; }
|
||||
|
||||
QskWindowChangeEvent* clone() const override;
|
||||
|
||||
private:
|
||||
QQuickWindow* const m_oldWindow;
|
||||
QQuickWindow* const m_window;
|
||||
@ -83,6 +93,8 @@ class QSK_EXPORT QskPopupEvent : public QskEvent
|
||||
|
||||
inline QskPopup* popup() const { return m_popup; }
|
||||
|
||||
QskPopupEvent* clone() const override;
|
||||
|
||||
private:
|
||||
QskPopup* const m_popup;
|
||||
};
|
||||
@ -90,15 +102,12 @@ class QSK_EXPORT QskPopupEvent : public QskEvent
|
||||
class QSK_EXPORT QskGestureEvent : public QskEvent
|
||||
{
|
||||
public:
|
||||
QskGestureEvent( const QskGesture* gesture, bool ownedByEvent = true );
|
||||
~QskGestureEvent() override;
|
||||
QskGestureEvent( const QskGesture* gesture );
|
||||
|
||||
inline const QskGesture* gesture() const { return m_gesture; }
|
||||
inline bool isGestureOwnedByEvent() const { return m_gestureOwnedByEvent; }
|
||||
|
||||
private:
|
||||
const QskGesture* m_gesture;
|
||||
bool m_gestureOwnedByEvent;
|
||||
};
|
||||
|
||||
class QSK_EXPORT QskAnimatorEvent : public QskEvent
|
||||
@ -111,11 +120,12 @@ class QSK_EXPORT QskAnimatorEvent : public QskEvent
|
||||
};
|
||||
|
||||
QskAnimatorEvent( QskAspect::Aspect aspect, State state );
|
||||
~QskAnimatorEvent() override;
|
||||
|
||||
inline QskAspect::Aspect aspect() const { return m_aspect; }
|
||||
inline State state() const { return m_state; }
|
||||
|
||||
QskAnimatorEvent* clone() const override;
|
||||
|
||||
private:
|
||||
const QskAspect::Aspect m_aspect;
|
||||
const State m_state;
|
||||
|
@ -58,17 +58,17 @@ static void qskSendPanGestureEvent(
|
||||
QQuickItem* item, QskGesture::State state, qreal velocity, qreal angle,
|
||||
const QPointF& origin, const QPointF& lastPosition, const QPointF& position )
|
||||
{
|
||||
QskPanGesture gesture;
|
||||
gesture.setState( state );
|
||||
auto gesture = new QskPanGesture();
|
||||
gesture->setState( state );
|
||||
|
||||
gesture.setAngle( angle );
|
||||
gesture.setVelocity( velocity );
|
||||
gesture->setAngle( angle );
|
||||
gesture->setVelocity( velocity );
|
||||
|
||||
gesture.setOrigin( origin );
|
||||
gesture.setLastPosition( lastPosition );
|
||||
gesture.setPosition( position );
|
||||
gesture->setOrigin( origin );
|
||||
gesture->setLastPosition( lastPosition );
|
||||
gesture->setPosition( position );
|
||||
|
||||
QskGestureEvent event( &gesture, false );
|
||||
QskGestureEvent event( gesture );
|
||||
QCoreApplication::sendEvent( item, &event );
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user