My Project
Loading...
Searching...
No Matches
PreviewModelInterface.h
1/*
2 * Copyright (C) 2014 Canonical, Ltd.
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU 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 General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#ifndef UNITY_SHELL_SCOPES_PREVIEWMODELINTERFACE_H
18#define UNITY_SHELL_SCOPES_PREVIEWMODELINTERFACE_H
19
20#include <unity/SymbolExport.h>
21
22#include <QAbstractListModel>
23
24namespace unity
25{
26namespace shell
27{
28namespace scopes
29{
30
37class UNITY_API PreviewModelInterface : public QAbstractListModel
38{
39 Q_OBJECT
40
48 Q_PROPERTY(int widgetColumnCount READ widgetColumnCount WRITE setWidgetColumnCount NOTIFY widgetColumnCountChanged)
49
50
53 Q_PROPERTY(bool loaded READ loaded NOTIFY loadedChanged)
54
62 Q_PROPERTY(bool processingAction READ processingAction NOTIFY processingActionChanged)
63
64protected:
66 explicit PreviewModelInterface(QObject* parent = 0) : QAbstractListModel(parent) { }
68
69public:
73 enum Roles {
74 RoleColumnModel
75 };
76 Q_ENUM(Roles)
77
78 // @cond
79 virtual void setWidgetColumnCount(int count) = 0;
80 virtual int widgetColumnCount() const = 0;
81 virtual bool loaded() const = 0;
82 virtual bool processingAction() const = 0;
83 QHash<int, QByteArray> roleNames() const override
84 {
85 QHash<int, QByteArray> roles;
86 roles[RoleColumnModel] = "columnModel";
87 return roles;
88 }
89 // @endcond
90
91Q_SIGNALS:
92 // @cond
93 void widgetColumnCountChanged();
94 void loadedChanged();
95 void processingActionChanged();
96 // @endcond
97
104 void triggered(QString const&, QString const&, QVariantMap const&);
105};
106
107}
108}
109}
110
112
113#endif
A list of PreviewWidgetModelInterface instances.
Definition PreviewModelInterface.h:38
void triggered(QString const &, QString const &, QVariantMap const &)
Signal emitted when user triggers an action.
Roles
The roles supported by this model.
Definition PreviewModelInterface.h:73
Top-level namespace for all things Unity-related.
Definition Version.h:38