File indexing completed on 2024-05-12 05:37:16

0001 /*
0002     SPDX-FileCopyrightText: 2009 Chani Armitage <chani@kde.org>
0003 
0004     SPDX-License-Identifier: LGPL-2.0-or-later
0005 */
0006 
0007 #pragma once
0008 
0009 #include <plasma/containmentactions.h>
0010 
0011 #include <plasmaactivities/consumer.h>
0012 #include <plasmaactivities/controller.h>
0013 
0014 class QAction;
0015 
0016 class SwitchActivity : public Plasma::ContainmentActions
0017 {
0018     Q_OBJECT
0019 public:
0020     SwitchActivity(QObject *parent, const QVariantList &args);
0021     ~SwitchActivity() override;
0022 
0023     QList<QAction *> contextualActions() override;
0024 
0025     void performNextAction() override;
0026     void performPreviousAction() override;
0027 
0028 private Q_SLOTS:
0029     void switchTo(QAction *action);
0030     void makeMenu();
0031 
0032 private:
0033     QList<QAction *> m_actions;
0034     KActivities::Consumer m_consumer;
0035     KActivities::Controller m_controller;
0036 };