mirror of
https://github.com/tomahawk-player/tomahawk.git
synced 2025-08-10 16:14:40 +02:00
* eventFilter needs to be put in TrackView, so its OverlayWidget can redirect its drag & drop events to it.
This commit is contained in:
@@ -77,38 +77,6 @@ PlaylistView::keyPressEvent( QKeyEvent* event )
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
bool
|
|
||||||
PlaylistView::eventFilter( QObject* obj, QEvent* event )
|
|
||||||
{
|
|
||||||
if ( event->type() == QEvent::DragEnter )
|
|
||||||
{
|
|
||||||
QDragEnterEvent* e = static_cast<QDragEnterEvent*>(event);
|
|
||||||
dragEnterEvent( e );
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
if ( event->type() == QEvent::DragMove )
|
|
||||||
{
|
|
||||||
QDragMoveEvent* e = static_cast<QDragMoveEvent*>(event);
|
|
||||||
dragMoveEvent( e );
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
if ( event->type() == QEvent::DragLeave )
|
|
||||||
{
|
|
||||||
QDragLeaveEvent* e = static_cast<QDragLeaveEvent*>(event);
|
|
||||||
dragLeaveEvent( e );
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
if ( event->type() == QEvent::Drop )
|
|
||||||
{
|
|
||||||
QDropEvent* e = static_cast<QDropEvent*>(event);
|
|
||||||
dropEvent( e );
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
return QObject::eventFilter( obj, event );
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
QList<PlaylistUpdaterInterface*>
|
QList<PlaylistUpdaterInterface*>
|
||||||
PlaylistView::updaters() const
|
PlaylistView::updaters() const
|
||||||
{
|
{
|
||||||
|
@@ -50,7 +50,6 @@ signals:
|
|||||||
|
|
||||||
protected:
|
protected:
|
||||||
void keyPressEvent( QKeyEvent* event );
|
void keyPressEvent( QKeyEvent* event );
|
||||||
bool eventFilter( QObject* obj, QEvent* event );
|
|
||||||
|
|
||||||
private slots:
|
private slots:
|
||||||
void onMenuTriggered( int action );
|
void onMenuTriggered( int action );
|
||||||
|
@@ -474,6 +474,38 @@ TrackView::resizeEvent( QResizeEvent* event )
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
bool
|
||||||
|
TrackView::eventFilter( QObject* obj, QEvent* event )
|
||||||
|
{
|
||||||
|
if ( event->type() == QEvent::DragEnter )
|
||||||
|
{
|
||||||
|
QDragEnterEvent* e = static_cast<QDragEnterEvent*>(event);
|
||||||
|
dragEnterEvent( e );
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
if ( event->type() == QEvent::DragMove )
|
||||||
|
{
|
||||||
|
QDragMoveEvent* e = static_cast<QDragMoveEvent*>(event);
|
||||||
|
dragMoveEvent( e );
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
if ( event->type() == QEvent::DragLeave )
|
||||||
|
{
|
||||||
|
QDragLeaveEvent* e = static_cast<QDragLeaveEvent*>(event);
|
||||||
|
dragLeaveEvent( e );
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
if ( event->type() == QEvent::Drop )
|
||||||
|
{
|
||||||
|
QDropEvent* e = static_cast<QDropEvent*>(event);
|
||||||
|
dropEvent( e );
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
return QObject::eventFilter( obj, event );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
void
|
void
|
||||||
TrackView::dragEnterEvent( QDragEnterEvent* event )
|
TrackView::dragEnterEvent( QDragEnterEvent* event )
|
||||||
{
|
{
|
||||||
|
@@ -106,6 +106,7 @@ signals:
|
|||||||
|
|
||||||
protected:
|
protected:
|
||||||
virtual void resizeEvent( QResizeEvent* event );
|
virtual void resizeEvent( QResizeEvent* event );
|
||||||
|
virtual bool eventFilter( QObject* obj, QEvent* event );
|
||||||
|
|
||||||
virtual void startDrag( Qt::DropActions supportedActions );
|
virtual void startDrag( Qt::DropActions supportedActions );
|
||||||
virtual void dragEnterEvent( QDragEnterEvent* event );
|
virtual void dragEnterEvent( QDragEnterEvent* event );
|
||||||
|
Reference in New Issue
Block a user