Messagelib
urlhandlermanager.cpp
6 SPDX-FileCopyrightText: 2002-2003, 2009 Klarälvdalens Datakonsult AB, a KDAB Group company, [email protected]
75 for_each(mHandlers.begin(), mHandlers.end(), [](QVector<const Interface::BodyPartURLHandler *> &handlers) {
80 void BodyPartURLHandlerManager::registerHandler(const Interface::BodyPartURLHandler *handler, const QString &mimeType)
137 QVector<const Interface::BodyPartURLHandler *> BodyPartURLHandlerManager::handlersForPart(KMime::Content *node) const
161 MimeTreeParser::PartNodeBodyPart part(nullptr, nullptr, w->message().data(), node, w->nodeHelper());
174 bool BodyPartURLHandlerManager::handleContextMenuRequest(const QUrl &url, const QPoint &p, ViewerPrivate *w) const
182 MimeTreeParser::PartNodeBodyPart part(nullptr, nullptr, w->message().data(), node, w->nodeHelper());
202 MimeTreeParser::PartNodeBodyPart part(nullptr, nullptr, w->message().data(), node, w->nodeHelper());
265 void URLHandlerManager::registerHandler(const Interface::BodyPartURLHandler *handler, const QString &mimeType)
324 bool URLHandlerManager::handleContextMenuRequest(const QUrl &url, const QPoint &p, ViewerPrivate *w) const
469 bool foundSMIMEData(const QString &aUrl, QString &displayName, QString &libName, QString &keyId)
514 if (!foundSMIMEData(url.path() + QLatin1Char('#') + QUrl::fromPercentEncoding(url.fragment().toLatin1()), displayName, libName, keyId)) {
518 lst << QStringLiteral("--parent-windowid") << QString::number(static_cast<qlonglong>(w->viewer()->mainWindow()->winId())) << QStringLiteral("--query")
538 if (!foundSMIMEData(url.path() + QLatin1Char('#') + QUrl::fromPercentEncoding(url.fragment().toLatin1()), displayName, libName, keyId)) {
567 job->setQuery(Akonadi::ContactSearchJob::ContactUid, uid, Akonadi::ContactSearchJob::ExactMatch);
593 bool ContactUidURLHandler::handleContextMenuRequest(const QUrl &url, const QPoint &p, ViewerPrivate *) const
600 QAction *open = menu.addAction(QIcon::fromTheme(QStringLiteral("view-pim-contacts")), i18n("&Open in Address Book"));
602 QAction *copy = menu.addAction(QIcon::fromTheme(QStringLiteral("edit-copy")), i18n("&Copy Email Address"));
696 if (MessageViewer::Util::saveMessageInMboxAndGetUrl(newUrl, Akonadi::Item::List() << item, window->viewer())) {
766 f.setPermissions(QFile::ReadOwner | QFile::WriteOwner | QFile::ReadUser | QFile::ReadGroup | QFile::ReadOther);
783 bool AttachmentURLHandler::handleContextMenuRequest(const QUrl &url, const QPoint &p, ViewerPrivate *w) const
805 return i18n("Encapsulated Message (Subject: %1)", node->header<KMime::Headers::Subject>()->asUnicodeString());
833 bool ShowAuditLogURLHandler::handleContextMenuRequest(const QUrl &url, const QPoint &, ViewerPrivate *w) const
874 QStandardPaths::locate(QStandardPaths::GenericDataLocation, QStringLiteral("libmessageviewer/pics/"), QStandardPaths::LocateDirectory);
881 if ((scheme == QLatin1String("http")) || (scheme == QLatin1String("https")) || (scheme == QLatin1String("ftp")) || (scheme == QLatin1String("file"))
882 || (scheme == QLatin1String("ftps")) || (scheme == QLatin1String("sftp")) || (scheme == QLatin1String("help")) || (scheme == QLatin1String("vnc"))
883 || (scheme == QLatin1String("smb")) || (scheme == QLatin1String("fish")) || (scheme == QLatin1String("news")) || (scheme == QLatin1String("tel"))
886 QTimer::singleShot(2s, PimCommon::BroadcastStatus::instance(), &PimCommon::BroadcastStatus::reset);
890 if (mime.name() == QLatin1String("application/x-desktop") || mime.name() == QLatin1String("application/x-executable")
891 || mime.name() == QLatin1String("application/x-ms-dos-executable") || mime.name() == QLatin1String("application/x-shellscript")) {
894 xi18nc("@info", "Do you really want to execute <filename>%1</filename>?", url.toDisplayString(QUrl::PreferLocalFile)),
bool isNull() const const
ContactUid
QString xi18nc(const char *context, const char *text, const TYPE &arg...)
bool save(const QString &fileName=QString())
static QString fileName(const KMime::Content *node)
Returns a usable filename for a node, that can be the filename from the content disposition header,...
Definition: mimetreeparser/src/nodehelper.cpp:632
QString number(int n, int base)
LocateDirectory
QMimeType mimeTypeForUrl(const QUrl &url) const const
QByteArray mimeType() const
bool remove()
Content * parent() const
bool hasQuery() const const
QString scheme() const const
singleShot
QStringList split(const QString &sep, QString::SplitBehavior behavior, Qt::CaseSensitivity cs) const const
bool bodyIsMessage() const
int length() const const
void clear()
T * header(bool create=false)
QString asUnicodeString() const override
QIcon fromTheme(const QString &name)
QString fromPercentEncoding(const QByteArray &input)
void setMimeType(const QString &mimeType)
QString query(QUrl::ComponentFormattingOptions options) const const
QByteArray toLatin1() const const
KCALUTILS_EXPORT QString mimeType()
bool hasFragment() const const
an implementation of the BodyPart interface using KMime::Content's
Definition: partnodebodypart.h:31
MBoxEntry appendMessage(const KMime::Message::Ptr &message)
QString locate(QStandardPaths::StandardLocation type, const QString &fileName, QStandardPaths::LocateOptions options)
Small
AKONADI_MIME_EXPORT void copyMessageFlags(KMime::Message &from, Akonadi::Item &to)
QString findExecutable(const QString &executableName, const QStringList &paths)
void push_back(char ch)
KGuiItem cancel()
KSERVICE_EXPORT KService::List query(FilterFunc filterFunc)
QClipboard * clipboard()
KCODECS_EXPORT QString decodeMailtoUrl(const QUrl &mailtoUrl)
int size() const const
static QString mimeType()
QString i18n(const char *text, const TYPE &arg...)
PreferLocalFile
bool isEmpty() const const
bool load(const QString &fileName)
QUrl fromLocalFile(const QString &localFile)
QString toDisplayString(QUrl::FormattingOptions options) const const
const T & at(int i) const const
int toInt(bool *ok, int base) const const
KGuiItem remove()
ReadOwner
ButtonCode warningTwoActions(QWidget *parent, const QString &text, const QString &title, const KGuiItem &primaryAction, const KGuiItem &secondaryAction, const QString &dontAskAgainName=QString(), Options options=Options(Notify|Dangerous))
int indexOf(QChar ch, int from, Qt::CaseSensitivity cs) const const
void setText(const QString &text, QClipboard::Mode mode)
Clipboard
void error(QWidget *parent, const QString &text, const QString &title, const KGuiItem &buttonOk, Options options=Notify)
AKONADI_CALENDAR_EXPORT QString displayName(Akonadi::ETMCalendar *calendar, const Akonadi::Collection &collection)
bool startsWith(const QString &s, Qt::CaseSensitivity cs) const const
QSharedPointer< Message > bodyAsMessage() const
bool startDetached(qint64 *pid)
QString host(QUrl::ComponentFormattingOptions options) const const
GenericDataLocation
Singleton to manage the list of URLHandlers.
Definition: urlhandlermanager.h:39
QString fragment(QUrl::ComponentFormattingOptions options) const const
QString path(QUrl::ComponentFormattingOptions options) const const
QString fullEmail(const QString &email=QString()) const
QString path(const QString &relativePath)
QString name(StandardShortcut id)
AddresseeList List
Headers::ContentType * contentType(bool create=true)
bool contains(QChar ch, Qt::CaseSensitivity cs) const const
KJOBWIDGETS_EXPORT QWidget * window(KJob *job)
QString mid(int position, int n) const const
const QList< QKeySequence > & open()
QString message
const QList< QKeySequence > & end()
const QList< QKeySequence > & copy()
An interface to body part reader link handlers.
Definition: bodyparturlhandler.h:56
ExactMatch
void setPayload(const T &p)
QVector< Content * > contents() const
T payload() const
QByteArray & insert(int i, char ch)
This file is part of the KDE documentation.
Documentation copyright © 1996-2023 The KDE developers.
Generated on Wed Mar 22 2023 04:07:15 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006
Documentation copyright © 1996-2023 The KDE developers.
Generated on Wed Mar 22 2023 04:07:15 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.