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)
67 Q_PROPERTY(
bool suspended READ suspended WRITE setSuspended NOTIFY suspendedChanged)
73 m_roleNames.insert(RoleAppId,
"appId");
74 m_roleNames.insert(RoleName,
"name");
75 m_roleNames.insert(RoleComment,
"comment");
76 m_roleNames.insert(RoleIcon,
"icon");
77 m_roleNames.insert(RoleStage,
"stage");
78 m_roleNames.insert(RoleState,
"state");
79 m_roleNames.insert(RoleFocused,
"focused");
81 connect(
this, SIGNAL(rowsInserted(QModelIndex,
int,
int)), SIGNAL(countChanged()));
82 connect(
this, SIGNAL(rowsRemoved(QModelIndex,
int,
int)), SIGNAL(countChanged()));
83 connect(
this, SIGNAL(modelReset()), SIGNAL(countChanged()));
84 connect(
this, SIGNAL(layoutChanged()), SIGNAL(countChanged()));
95 RoleAppId = Qt::UserRole,
107 virtual QHash<int, QByteArray> roleNames()
const
116 virtual QString focusedApplicationId()
const = 0;
118 virtual bool suspended()
const = 0;
119 virtual void setSuspended(
bool suspended) = 0;
150 Q_INVOKABLE
virtual bool requestFocusApplication(
const QString &appId) = 0;
162 Q_INVOKABLE
virtual bool focusApplication(
const QString &appId) = 0;
167 Q_INVOKABLE
virtual void unfocusCurrentApplication() = 0;
184 Q_INVOKABLE
virtual bool stopApplication(
const QString &appId) = 0;
197 void focusRequested(
const QString &appId);
202 void focusedApplicationIdChanged();
207 void suspendedChanged();
214 void applicationAdded(
const QString &appId);
221 void applicationRemoved(
const QString &appId);
225 QHash<int, QByteArray> m_roleNames;
233 #endif // UNITY_SHELL_APPLICATIONMANAGER_APPLICATIONINFO_H
The Application manager.
Definition: ApplicationManagerInterface.h:43
Roles
The Roles supported by the model.
Definition: ApplicationManagerInterface.h:94
Top-level namespace for all things Unity-related.
Definition: Version.h:37
A class that holds information about applications.
Definition: ApplicationInfoInterface.h:42