1 /*
2     This file is part of the KDE libraries
3     SPDX-FileCopyrightText: 2000-2012 David Faure <faure@kde.org>
4     SPDX-FileCopyrightText: 2006 Thiago Macieira <thiago@kde.org>
5 
6     SPDX-License-Identifier: LGPL-2.0-or-later
7 */
8 
9 #include "kdirnotify.h"
10 #include <QUrl>
11 
12 /*
13  * Implementation of interface class OrgKdeKDirNotifyInterface
14  */
15 
OrgKdeKDirNotifyInterface(const QString & service,const QString & path,const QDBusConnection & connection,QObject * parent)16 OrgKdeKDirNotifyInterface::OrgKdeKDirNotifyInterface(const QString &service, const QString &path, const QDBusConnection &connection, QObject *parent)
17     : QDBusAbstractInterface(service, path, staticInterfaceName(), connection, parent)
18 {
19 }
20 
~OrgKdeKDirNotifyInterface()21 OrgKdeKDirNotifyInterface::~OrgKdeKDirNotifyInterface()
22 {
23 }
24 
emitSignal(const QString & signalName,const QVariantList & args)25 static void emitSignal(const QString &signalName, const QVariantList &args)
26 {
27     QDBusMessage message = QDBusMessage::createSignal(QStringLiteral("/"), QLatin1String(org::kde::KDirNotify::staticInterfaceName()), signalName);
28     message.setArguments(args);
29     QDBusConnection::sessionBus().send(message);
30 }
31 
emitFileRenamed(const QUrl & src,const QUrl & dst)32 void OrgKdeKDirNotifyInterface::emitFileRenamed(const QUrl &src, const QUrl &dst)
33 {
34     emitSignal(QStringLiteral("FileRenamed"), QVariantList{src.toString(), dst.toString()});
35     emitSignal(QStringLiteral("FileRenamedWithLocalPath"), QVariantList{src.toString(), dst.toString(), QString()});
36 }
37 
emitFileRenamedWithLocalPath(const QUrl & src,const QUrl & dst,const QString & dstPath)38 void OrgKdeKDirNotifyInterface::emitFileRenamedWithLocalPath(const QUrl &src, const QUrl &dst, const QString &dstPath)
39 {
40     emitSignal(QStringLiteral("FileRenamed"), QVariantList{src.toString(), dst.toString()});
41     emitSignal(QStringLiteral("FileRenamedWithLocalPath"), QVariantList{src.toString(), dst.toString(), dstPath});
42 }
43 
emitFileMoved(const QUrl & src,const QUrl & dst)44 void OrgKdeKDirNotifyInterface::emitFileMoved(const QUrl &src, const QUrl &dst)
45 {
46     emitSignal(QStringLiteral("FileMoved"), QVariantList{src.toString(), dst.toString()});
47 }
48 
emitFilesAdded(const QUrl & directory)49 void OrgKdeKDirNotifyInterface::emitFilesAdded(const QUrl &directory)
50 {
51     emitSignal(QStringLiteral("FilesAdded"), QVariantList{QVariant(directory.toString())});
52 }
53 
emitFilesChanged(const QList<QUrl> & fileList)54 void OrgKdeKDirNotifyInterface::emitFilesChanged(const QList<QUrl> &fileList)
55 {
56     emitSignal(QStringLiteral("FilesChanged"), QVariantList{QVariant(QUrl::toStringList(fileList))});
57 }
58 
emitFilesRemoved(const QList<QUrl> & fileList)59 void OrgKdeKDirNotifyInterface::emitFilesRemoved(const QList<QUrl> &fileList)
60 {
61     emitSignal(QStringLiteral("FilesRemoved"), QVariantList{QVariant(QUrl::toStringList(fileList))});
62 }
63 
emitEnteredDirectory(const QUrl & url)64 void OrgKdeKDirNotifyInterface::emitEnteredDirectory(const QUrl &url)
65 {
66     emitSignal(QStringLiteral("enteredDirectory"), QVariantList{QVariant(url.toString())});
67 }
68 
emitLeftDirectory(const QUrl & url)69 void OrgKdeKDirNotifyInterface::emitLeftDirectory(const QUrl &url)
70 {
71     emitSignal(QStringLiteral("leftDirectory"), QVariantList{QVariant(url.toString())});
72 }
73