on 5bc8421 help sign in
unity8/plugins/Unity/previewaction.h
71 lines 2.0 kB history raw
1/*
2 * Copyright (C) 2013 Canonical, Ltd.
3 *
4 * Authors:
5 * Pawel Stolowski <pawel.stolowski@canonical.com>
6 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation; version 3.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program. If not, see <http://www.gnu.org/licenses/>.
18 */
20#ifndef PREVIEWACTION_H
21#define PREVIEWACTION_H
23// Qt
24#include <QObject>
25#include <QList>
27// libuinity-core
28#include <UnityCore/Preview.h>
30enum LayoutHint // keep in sync with unty::dash::LayoutHint
32 None,
33 Left,
34 Right,
35 Top,
36 Bottom
37};
39class Q_DECL_EXPORT PreviewAction : public QObject
41 Q_OBJECT
43 Q_PROPERTY(QString id READ id NOTIFY previewActionChanged)
44 Q_PROPERTY(QString displayName READ displayName NOTIFY previewActionChanged)
45 Q_PROPERTY(QString iconHint READ iconHint NOTIFY previewActionChanged)
46 Q_PROPERTY(QString extraText READ extraText NOTIFY previewActionChanged)
47 Q_PROPERTY(QString activationUri READ activationUri NOTIFY previewActionChanged)
48 Q_PROPERTY(LayoutHint layoutHint READ layoutHint NOTIFY previewActionChanged)
50public:
51 explicit PreviewAction(QObject *parent = 0);
52 void setUnityAction(unity::dash::Preview::ActionPtr unityAction);
54 QString id() const;
55 QString displayName() const;
56 QString iconHint() const;
57 QString extraText() const;
58 QString activationUri() const;
59 LayoutHint layoutHint() const;
61Q_SIGNALS:
62 void previewActionChanged();
64private:
65 unity::dash::Preview::ActionPtr m_unityAction;
66};
68Q_DECLARE_METATYPE(PreviewAction *)
69Q_DECLARE_METATYPE(LayoutHint)
71#endif