1
/***************************************************************************
2
* Copyright (C) 2008 by Marco Martin <notmart@gmail.com> *
3
* Copyright (C) 2010 by Chani Armitage <chanika@gmail.com> *
5
* This program is free software; you can redistribute it and/or modify *
6
* it under the terms of the GNU General Public License as published by *
7
* the Free Software Foundation; either version 2 of the License, or *
8
* (at your option) any later version. *
10
* This program is distributed in the hope that it will be useful, *
11
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
13
* GNU General Public License for more details. *
15
* You should have received a copy of the GNU General Public License *
16
* along with this program; if not, write to the *
17
* Free Software Foundation, Inc., *
18
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA . *
19
***************************************************************************/
25
#include <Plasma/Applet>
26
#include <Plasma/DataEngine>
34
class ActivityBar : public Plasma::Applet
38
ActivityBar(QObject *parent, const QVariantList &args);
42
void constraintsEvent(Plasma::Constraints constraints);
43
//insert in m_containments, keeping it ordered by id()
44
void insertContainment(Plasma::Containment *cont);
45
void insertActivity(const QString &id);
48
bool eventFilter(QObject *watched, QEvent *event);
51
void switchContainment(int newActive);
52
void containmentAdded(Plasma::Containment *containment);
53
void containmentDestroyed(QObject *obj);
54
void screenChanged(int wasScreen, int isScreen, Plasma::Containment *containment);
55
void contextChanged(Plasma::Context *context);
56
void currentDesktopChanged(const int currentDesktop);
58
void switchActivity(int newActive);
59
void activityAdded(const QString &id);
60
void activityRemoved(const QString &id);
61
void dataUpdated(const QString &source, const Plasma::DataEngine::Data &data);
64
Plasma::TabBar *m_tabBar;
65
QList<Plasma::Containment*> m_containments;
66
QStringList m_activities;
67
Plasma::DataEngine *m_engine;
71
K_EXPORT_PLASMA_APPLET(activitybar, ActivityBar)