aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2021-01-16 17:32:44 +0000
committertrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2021-01-16 17:32:44 +0000
commit4762863d93e56b9d4766e65a0247c8811b4c6756 (patch)
tree61ced28e1c95f416a69a983bd1bfb20ad2bda798
parentb552e201821ddc027caaf30df4d686592818e8e4 (diff)
downloadqmmp-4762863d93e56b9d4766e65a0247c8811b4c6756.tar.gz
qmmp-4762863d93e56b9d4766e65a0247c8811b4c6756.tar.bz2
qmmp-4762863d93e56b9d4766e65a0247c8811b4c6756.zip
skinned: refactoring
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@9645 90c681e8-e032-0410-971d-27865f9a5e38
-rw-r--r--src/plugins/Ui/skinned/listwidget.cpp17
1 files changed, 12 insertions, 5 deletions
diff --git a/src/plugins/Ui/skinned/listwidget.cpp b/src/plugins/Ui/skinned/listwidget.cpp
index 841fda37d..c6cd1a700 100644
--- a/src/plugins/Ui/skinned/listwidget.cpp
+++ b/src/plugins/Ui/skinned/listwidget.cpp
@@ -493,24 +493,31 @@ void ListWidget::updateSkin()
void ListWidget::dragEnterEvent(QDragEnterEvent *event)
{
- if (event->mimeData()->hasFormat("text/uri-list"))
+ if(event->mimeData()->hasFormat("text/uri-list") || event->mimeData()->hasFormat("application/json"))
event->acceptProposedAction();
}
void ListWidget::dropEvent(QDropEvent *event)
{
- if (event->mimeData()->hasUrls())
+ if(event->mimeData()->hasUrls() || event->mimeData()->hasFormat("application/json"))
{
- QList<QUrl> list_urls = event->mimeData()->urls();
event->acceptProposedAction();
QApplication::restoreOverrideCursor();
int index = indexAt(event->pos().y());
if(index == INVALID_INDEX)
- {
index = qMin(m_first + m_row_count, m_model->count());
+
+ if(event->mimeData()->hasUrls())
+ {
+ QList<QUrl> list_urls = event->mimeData()->urls();
+ m_model->insert(index, list_urls);
+ }
+ else if(event->mimeData()->hasFormat("application/json"))
+ {
+ QByteArray json = event->mimeData()->data("application/json");
+ m_model->insert(index, json);
}
- m_model->insert(index, list_urls);
}
m_drop_index = INVALID_INDEX;
}