Akonadi
dragdropmanager.cpp
34 auto collection = m_view->model()->data(index, EntityTreeModel::CollectionRole).value<Collection>();
38 collection = m_view->model()->data(index.parent(), EntityTreeModel::CollectionRole).value<Collection>();
60 if (!supportedContentTypes.contains(Collection::mimeType()) && !supportedContentTypes.contains(Collection::virtualMimeType())) {
134 if ((targetCollection.rights() & (Collection::CanCreateCollection | Collection::CanCreateItem)) && (event->possibleActions() & Qt::MoveAction)) {
137 if ((targetCollection.rights() & (Collection::CanCreateCollection | Collection::CanCreateItem)) && (event->possibleActions() & Qt::CopyAction)) {
141 if ((targetCollection.rights() & Collection::CanLinkItem) && (event->possibleActions() & Qt::LinkAction)) {
152 qCDebug(AKONADIWIDGETS_LOG) << "Cannot drop here:" << event->possibleActions() << m_view->model()->supportedDragActions()
158 if ((QApplication::keyboardModifiers() & Qt::ControlModifier) && (QApplication::keyboardModifiers() & Qt::ShiftModifier)) {
182 qCDebug(AKONADIWIDGETS_LOG) << "Selecting drop action" << defaultAction << ", there are no other possibilities";
211 moveDropAction = popup.addAction(QIcon::fromTheme(QStringLiteral("edit-move"), QIcon::fromTheme(QStringLiteral("go-jump"))),
218 copyDropAction = popup.addAction(QIcon::fromTheme(QStringLiteral("edit-copy")), i18n("&Copy Here") + QLatin1Char('\t') + sequence);
224 linkAction = popup.addAction(QIcon::fromTheme(QStringLiteral("edit-link")), i18n("&Link Here") + QLatin1Char('\t') + sequence);
228 QAction *cancelAction = popup.addAction(QIcon::fromTheme(QStringLiteral("process-stop")), i18n("C&ancel") + QLatin1Char('\t') + QKeySequence(Qt::Key_Escape).toString());
263 (source.rights() & Collection::CanDeleteCollection) && !source.hasAttribute<SpecialCollectionAttribute>() && !source.isVirtual();
295 if ((QApplication::keyboardModifiers() & Qt::ControlModifier) && (QApplication::keyboardModifiers() & Qt::ShiftModifier)) {
Qt::KeyboardModifiers keyboardModifiers()
static Collection fromUrl(const QUrl &url)
Creates a collection from the given url.
Definition: collection.cpp:267
DecorationRole
virtual QVariant data(const QModelIndex &index, int role) const const=0
int count(const T &value) const const
T value() const const
bool contains(const QString &str, Qt::CaseSensitivity cs) const const
QIcon fromTheme(const QString &name)
void chop(int n)
KSERVICE_EXPORT KService::List query(FilterFunc filterFunc)
QVariant data(int role) const const
ItemIsDragEnabled
QString i18n(const char *text, const TYPE &arg...)
char * toString(const T &value)
QString toString(QKeySequence::SequenceFormat format) const const
bool hasAttribute(const QByteArray &name) const
Returns true if the collection has an attribute of the given type name, false otherwise.
Definition: collection.cpp:161
const T & at(int i) const const
static QString virtualMimeType()
Returns the mimetype used for virtual collections.
Definition: collection.cpp:297
AKONADI_CALENDAR_EXPORT KCalendarCore::Event::Ptr event(const Akonadi::Item &item)
An Attribute that stores the special collection type of a collection.
Definition: specialcollectionattribute.h:28
Key_Escape
bool isValid() const const
bool isNull() const const
QList< QUrl > urls() const const
VehicleSection::Type type(QStringView coachNumber, QStringView coachClassification)
DropAction
QPixmap pixmap(const QSize &size, QIcon::Mode mode, QIcon::State state) const const
QModelIndex parent() const const
ControlModifier
@ CanLinkItem
Can create links to existing items in this virtual collection.
Definition: collection.h:97
const QAbstractItemModel * model() const const
QList< QPair< QString, QString > > queryItems(QUrl::ComponentFormattingOptions encoding) const const
Helper integration between Akonadi and Qt.
This file is part of the KDE documentation.
Documentation copyright © 1996-2022 The KDE developers.
Generated on Mon Jun 27 2022 04:01:06 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006
Documentation copyright © 1996-2022 The KDE developers.
Generated on Mon Jun 27 2022 04:01:06 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.