mirror of
https://github.com/tomahawk-player/tomahawk.git
synced 2025-04-21 00:12:06 +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:
parent
0237d41d4a
commit
85e997322c
@ -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*>
|
||||
PlaylistView::updaters() const
|
||||
{
|
||||
|
@ -50,7 +50,6 @@ signals:
|
||||
|
||||
protected:
|
||||
void keyPressEvent( QKeyEvent* event );
|
||||
bool eventFilter( QObject* obj, QEvent* event );
|
||||
|
||||
private slots:
|
||||
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
|
||||
TrackView::dragEnterEvent( QDragEnterEvent* event )
|
||||
{
|
||||
|
@ -106,6 +106,7 @@ signals:
|
||||
|
||||
protected:
|
||||
virtual void resizeEvent( QResizeEvent* event );
|
||||
virtual bool eventFilter( QObject* obj, QEvent* event );
|
||||
|
||||
virtual void startDrag( Qt::DropActions supportedActions );
|
||||
virtual void dragEnterEvent( QDragEnterEvent* event );
|
||||
|
Loading…
x
Reference in New Issue
Block a user