mirror of
https://github.com/YACReader/yacreader
synced 2025-07-18 21:14:33 -04:00
Support drag&drop for setting a custom cover in the properties dialog
This commit is contained in:
31
custom_widgets/yacreader_cover_label.cpp
Normal file
31
custom_widgets/yacreader_cover_label.cpp
Normal file
@ -0,0 +1,31 @@
|
||||
#include "yacreader_cover_label.h"
|
||||
#include "yacreader_global_gui.h"
|
||||
|
||||
YACReader::CoverLabel::CoverLabel(QWidget *parent)
|
||||
: QLabel(parent)
|
||||
{
|
||||
setAcceptDrops(true);
|
||||
}
|
||||
|
||||
void YACReader::CoverLabel::dragEnterEvent(QDragEnterEvent *event)
|
||||
{
|
||||
if (event->mimeData()->hasUrls() && !YACReader::imagePathFromMimeData(event->mimeData()).isEmpty()) {
|
||||
event->acceptProposedAction();
|
||||
}
|
||||
}
|
||||
|
||||
void YACReader::CoverLabel::dragMoveEvent(QDragMoveEvent *event)
|
||||
{
|
||||
if (event->mimeData()->hasUrls()) {
|
||||
event->acceptProposedAction();
|
||||
}
|
||||
}
|
||||
|
||||
void YACReader::CoverLabel::dropEvent(QDropEvent *event)
|
||||
{
|
||||
QString path = YACReader::imagePathFromMimeData(event->mimeData());
|
||||
if (!path.isEmpty()) {
|
||||
emit imageDropped(path);
|
||||
event->acceptProposedAction();
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user