mirror of
https://github.com/tomahawk-player/tomahawk.git
synced 2025-08-06 14:16:32 +02:00
* OverlayWidget uses PlaylistView as an event-filter for Drag-n-Drop events.
This commit is contained in:
@@ -97,6 +97,38 @@ 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 );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
void
|
void
|
||||||
PlaylistView::deleteItems()
|
PlaylistView::deleteItems()
|
||||||
{
|
{
|
||||||
|
@@ -50,6 +50,7 @@ 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 );
|
||||||
|
@@ -66,6 +66,9 @@ OverlayWidget::~OverlayWidget()
|
|||||||
void
|
void
|
||||||
OverlayWidget::init()
|
OverlayWidget::init()
|
||||||
{
|
{
|
||||||
|
installEventFilter( m_parent );
|
||||||
|
setAcceptDrops( true );
|
||||||
|
|
||||||
setAttribute( Qt::WA_TranslucentBackground, true );
|
setAttribute( Qt::WA_TranslucentBackground, true );
|
||||||
m_opacity = 0.00;
|
m_opacity = 0.00;
|
||||||
setOpacity( m_opacity );
|
setOpacity( m_opacity );
|
||||||
|
Reference in New Issue
Block a user