4 #include "gui/dropbase.h"
16 CDropBase::CDropBase() {}
18 CDropBase::~CDropBase() {}
20 void CDropBase::setAcceptedMetaTypeIds(
const QList<int> &ids) { m_acceptedMetaTypes = ids; }
22 void CDropBase::addAcceptedMetaTypeId(
int id) { m_acceptedMetaTypes.append(
id); }
24 bool CDropBase::acceptDrop(
const QMimeData *mime)
const
26 if (!mime) {
return false; }
27 if (!m_allowDrop) {
return false; }
28 if (m_acceptedMetaTypes.isEmpty()) {
return false; }
30 if (m_acceptJsonFile && CGuiUtility::isMimeRepresentingReadableJsonFile(mime))
36 if (!CGuiUtility::hasSwiftVariantMimeType(mime)) {
return false; }
37 const int metaTypeId = CGuiUtility::metaTypeIdFromSwiftDragAndDropData(mime);
38 if (metaTypeId == QMetaType::UnknownType) {
return false; }
39 const bool accept = m_acceptedMetaTypes.contains(metaTypeId);
43 CVariant CDropBase::toCVariant(
const QMimeData *mime)
const {
return CGuiUtility::fromSwiftDragAndDropData(mime); }
Wrapper around QVariant which provides transparent access to CValueObject methods of the contained ob...
Free functions in swift::misc.