on bb09f86 help sign in
83 lines 2.4 kB history raw
1/*
2 * Copyright 2014-2015 Canonical Ltd.
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU Lesser General Public License as published by
6 * the Free Software Foundation; version 3.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU Lesser General Public License for more details.
12 *
13 * You should have received a copy of the GNU Lesser General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
17#ifndef LAUNCHERITEM_H
18#define LAUNCHERITEM_H
20#include "quicklistmodel.h"
22#include <unity/shell/launcher/LauncherItemInterface.h>
24class QuickListModel;
26using namespace unity::shell::launcher;
28class LauncherItem: public LauncherItemInterface
30 Q_OBJECT
31public:
32 LauncherItem(const QString &appId, const QString &name, const QString &icon, QObject *parent = 0);
34 QString appId() const override;
35 QString name() const override;
36 QString icon() const override;
37 QStringList keywords() const override;
38 bool pinned() const override;
39 bool running() const override;
40 bool recent() const override;
41 int progress() const override;
42 int count() const override;
43 bool countVisible() const override;
44 bool focused() const override;
45 bool alerting() const override;
46 int surfaceCount() const override;
48 unity::shell::launcher::QuickListModelInterface *quickList() const override;
50private:
51 void setName(const QString &name);
52 void setIcon(const QString &icon);
53 void setKeywords(const QStringList &keywords);
54 void setPinned(bool pinned);
55 void setRunning(bool running);
56 void setRecent(bool recent);
57 void setProgress(int progress);
58 void setCount(int count);
59 void setCountVisible(bool countVisible);
60 void setFocused(bool focused);
61 void setAlerting(bool alerting);
62 void setSurfaceCount(int surfaceCount);
64private:
65 QString m_appId;
66 QString m_name;
67 QString m_icon;
68 QStringList m_keywords;
69 bool m_pinned;
70 bool m_running;
71 bool m_recent;
72 int m_progress;
73 int m_count;
74 bool m_countVisible;
75 bool m_focused;
76 bool m_alerting;
77 int m_surfaceCount;
78 QuickListModel *m_quickList;
80 friend class LauncherModel;
81};
83#endif // LAUNCHERITEM_H