KActivities 5.109.0
info.h
1/*
2 SPDX-FileCopyrightText: 2010-2016 Ivan Cukic <ivan.cukic(at)kde.org>
3
4 SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
5*/
6
7#ifndef ACTIVITIES_INFO_H
8#define ACTIVITIES_INFO_H
9
10#include <QFuture>
11#include <QObject>
12#include <QString>
13
14#include "kactivities_export.h"
15
16namespace KActivities
17{
18class InfoPrivate;
19
56class KACTIVITIES_EXPORT Info : public QObject
57{
58 Q_OBJECT
59
60 Q_PROPERTY(QString id READ id)
61 Q_PROPERTY(QString name READ name NOTIFY nameChanged)
62 Q_PROPERTY(QString description READ description NOTIFY descriptionChanged)
63 Q_PROPERTY(QString icon READ icon NOTIFY iconChanged)
64 Q_PROPERTY(bool isCurrent READ isCurrent NOTIFY isCurrentChanged)
65 Q_PROPERTY(Info::State state READ state NOTIFY stateChanged)
66
67public:
68 explicit Info(const QString &activity, QObject *parent = nullptr);
69 ~Info() override;
70
74 bool isValid() const;
75
80 Nothing = 0,
81 BasicInfo = 1,
82 Everything = 2,
83 };
84
88 enum State {
89 Invalid = 0,
90 Unknown = 1,
91 Running = 2,
92 Starting = 3,
93 Stopped = 4,
94 Stopping = 5,
95 };
96
101
106 QString uri() const;
107
111 QString id() const;
112
116 bool isCurrent() const;
117
121 QString name() const;
122
126 QString description() const;
127
132 QString icon() const;
133
137 State state() const;
138
145 // QFuture<void> linkResource(const QString &resourceUri);
146
153 // QFuture<void> unlinkResource(const QString &resourceUri);
154
161 // QFuture<bool> isResourceLinked(const QString &resourceUri);
162
163Q_SIGNALS:
168
172 void nameChanged(const QString &name);
173
178 void isCurrentChanged(bool current);
179
183 void descriptionChanged(const QString &description);
184
188 void iconChanged(const QString &icon);
189
193 void added();
194
198 void removed();
199
203 void started();
204
208 void stopped();
209
215
216private:
217 const QScopedPointer<InfoPrivate> d;
218
219 Q_PRIVATE_SLOT(d, void activityStateChanged(const QString &, int))
220 Q_PRIVATE_SLOT(d, void added(const QString &))
221 Q_PRIVATE_SLOT(d, void removed(const QString &))
222 Q_PRIVATE_SLOT(d, void started(const QString &))
223 Q_PRIVATE_SLOT(d, void stopped(const QString &))
224 Q_PRIVATE_SLOT(d, void infoChanged(const QString &))
225 Q_PRIVATE_SLOT(d, void nameChanged(const QString &, const QString &))
226 Q_PRIVATE_SLOT(d, void descriptionChanged(const QString &, const QString &))
227 Q_PRIVATE_SLOT(d, void iconChanged(const QString &, const QString &))
228 Q_PRIVATE_SLOT(d, void setServiceStatus(Consumer::ServiceStatus))
229 Q_PRIVATE_SLOT(d, void setCurrentActivity(const QString &))
230
231 friend class InfoPrivate;
232};
233
234} // namespace KActivities
235
236#endif // ACTIVITIES_INFO_H
ServiceStatus
Different states of the activities service.
Definition consumer.h:75
This class provides info about an activity.
Definition info.h:57
void infoChanged()
Links the specified resource to the activity.
bool isValid() const
void stopped()
Emitted when the activity is stopped.
void added()
Emitted when the activity is added.
QString icon() const
State
State of the activity.
Definition info.h:88
void descriptionChanged(const QString &description)
Emitted when the description is changed.
void isCurrentChanged(bool current)
Emitted when the activity becomes the current one, or when it stops being the current one.
void started()
Emitted when the activity is started.
Availability availability() const
void nameChanged(const QString &name)
Emitted when the name is changed.
State state() const
Availability
Specifies which parts of this class are functional.
Definition info.h:79
QString id() const
void removed()
Emitted when the activity is removed.
void stateChanged(KActivities::Info::State state)
Emitted when the activity changes state.
void iconChanged(const QString &icon)
Emitted when the icon was changed.
QString description() const
bool isCurrent() const
QString name() const
QString uri() const
Namespace for everything in libkactivities.
Definition consumer.h:20