20 #ifndef UNITY_SHELL_APPLICATION_APPLICATIONMANAGERINTERFACE_H
21 #define UNITY_SHELL_APPLICATION_APPLICATIONMANAGERINTERFACE_H
23 #include <unity/SymbolExport.h>
25 #include <QtCore/QObject>
26 #include <QtCore/QAbstractListModel>
35 class ApplicationInfoInterface;
53 Q_PROPERTY(
int count READ count NOTIFY countChanged)
60 Q_PROPERTY(QString focusedApplicationId READ focusedApplicationId NOTIFY focusedApplicationIdChanged)
66 m_roleNames.insert(RoleAppId,
"appId");
67 m_roleNames.insert(RoleName,
"name");
68 m_roleNames.insert(RoleComment,
"comment");
69 m_roleNames.insert(RoleIcon,
"icon");
70 m_roleNames.insert(RoleStage,
"stage");
71 m_roleNames.insert(RoleState,
"state");
72 m_roleNames.insert(RoleFocused,
"focused");
74 connect(
this, SIGNAL(rowsInserted(QModelIndex,
int,
int)), SIGNAL(countChanged()));
75 connect(
this, SIGNAL(rowsRemoved(QModelIndex,
int,
int)), SIGNAL(countChanged()));
76 connect(
this, SIGNAL(modelReset()), SIGNAL(countChanged()));
77 connect(
this, SIGNAL(layoutChanged()), SIGNAL(countChanged()));
88 RoleAppId = Qt::UserRole,
100 virtual QHash<int, QByteArray> roleNames()
const
109 virtual QString focusedApplicationId()
const = 0;
141 Q_INVOKABLE
virtual bool requestFocusApplication(
const QString &appId) = 0;
153 Q_INVOKABLE
virtual bool focusApplication(
const QString &appId) = 0;
158 Q_INVOKABLE
virtual void unfocusCurrentApplication() = 0;
175 Q_INVOKABLE
virtual bool stopApplication(
const QString &appId) = 0;
188 void focusRequested(
const QString &appId);
193 void focusedApplicationIdChanged();
200 void applicationAdded(
const QString &appId);
207 void applicationRemoved(
const QString &appId);
211 QHash<int, QByteArray> m_roleNames;
219 #endif // UNITY_SHELL_APPLICATIONMANAGER_APPLICATIONINFO_H
The Application manager.
Definition: ApplicationManagerInterface.h:43
Roles
The Roles supported by the model.
Definition: ApplicationManagerInterface.h:87
Top-level namespace for all things Unity-related.
Definition: Version.h:37
A class that holds information about applications.
Definition: ApplicationInfoInterface.h:40