19 #ifndef LAUNCHERBACKEND_H
20 #define LAUNCHERBACKEND_H
22 #include "common/quicklistentry.h"
26 #include <QStringList>
27 #include <QDBusVirtualObject>
29 class AccountsServiceDBusAdaptor;
35 class LauncherBackendItem;
36 class LauncherBackendTest;
38 class LauncherBackend :
public QDBusVirtualObject
42 friend LauncherBackendTest;
45 LauncherBackend(QObject *parent = 0);
46 virtual ~LauncherBackend();
52 QStringList storedApplications()
const;
63 void setStoredApplications(
const QStringList &appIds);
72 QString desktopFile(
const QString &appId)
const;
82 QString displayName(
const QString &appId)
const;
92 QString icon(
const QString &appId)
const;
99 QList<QuickListEntry> quickList(
const QString &appId)
const;
106 void triggerQuickListAction(
const QString &appId,
const QString &entryId);
113 int progress(
const QString &appId)
const;
120 int count(
const QString &appId)
const;
127 void setCount(
const QString &appId,
int count)
const;
134 bool countVisible(
const QString &appId)
const;
141 void setCountVisible(
const QString &appId,
bool visible)
const;
147 void setUser(
const QString &username);
155 virtual bool handleMessage(
const QDBusMessage& message,
const QDBusConnection& connection);
162 virtual QString introspect (
const QString &path)
const;
165 void quickListChanged(
const QString &appId,
const QList<QuickListEntry> &quickList)
const;
166 void progressChanged(
const QString &appId,
int progress)
const;
167 void countChanged(
const QString &appId,
int count)
const;
168 void countVisibleChanged(
const QString &appId,
bool visible)
const;
171 QString findDesktopFile(
const QString &appId)
const;
172 LauncherBackendItem* parseDesktopFile(
const QString &desktopFile)
const;
174 QVariantMap itemToVariant(
const QString &appId)
const;
175 void loadFromVariant(
const QVariantMap &details);
177 bool isDefaultsItem(
const QList<QVariantMap> &apps)
const;
178 void syncFromAccounts();
179 void syncToAccounts();
181 QList<QString> m_storedApps;
182 mutable QHash<QString, LauncherBackendItem*> m_itemCache;
184 AccountsServiceDBusAdaptor *m_accounts;
187 void emitPropChangedDbus(
const QString& appId,
const QString& property, QVariant &value)
const;
190 LauncherBackendItem* getItem(
const QString& appId)
const;
192 static QString decodeAppId(
const QString& path);
193 static QString encodeAppId(
const QString& appId);
196 #endif // LAUNCHERBACKEND_H