20 #ifndef LAUNCHERMODEL_H
21 #define LAUNCHERMODEL_H
23 #include <unity/shell/launcher/LauncherModelInterface.h>
24 #include <unity/shell/application/ApplicationManagerInterface.h>
26 #include <QAbstractListModel>
35 class LauncherModel:
public LauncherModelInterface
40 LauncherModel(QObject *parent = 0);
43 int rowCount(
const QModelIndex &parent = QModelIndex())
const;
45 QVariant data(
const QModelIndex &index,
int role)
const;
47 Q_INVOKABLE unity::shell::launcher::LauncherItemInterface*
get(
int index)
const;
48 Q_INVOKABLE
void move(
int oldIndex,
int newIndex);
49 Q_INVOKABLE
void pin(
const QString &appId,
int index = -1);
50 Q_INVOKABLE
void quickListActionInvoked(
const QString &appId,
int actionIndex);
51 Q_INVOKABLE
void setUser(
const QString &username);
52 Q_INVOKABLE QString getUrlForAppId(
const QString &appId)
const;
54 unity::shell::application::ApplicationManagerInterface* applicationManager()
const;
55 void setApplicationManager(unity::shell::application::ApplicationManagerInterface *appManager);
57 int findApplication(
const QString &appId);
60 void requestRemove(
const QString &appId);
66 void countChanged(
const QString &appId,
int count);
67 void countVisibleChanged(
const QString &appId,
int count);
68 void progressChanged(
const QString &appId,
int progress);
71 void applicationAdded(
const QModelIndex &parent,
int row);
72 void applicationRemoved(
const QModelIndex &parent,
int row);
73 void focusedAppIdChanged();
76 QList<LauncherItem*> m_list;
78 GSettings *m_settings;
79 DBusInterface *m_dbusIface;
81 ApplicationManagerInterface *m_appManager;
84 #endif // LAUNCHERMODEL_H