You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
42 lines
771 B
42 lines
771 B
/* |
|
SPDX-FileCopyrightText: 2009 Chani Armitage <chani@kde.org> |
|
|
|
SPDX-License-Identifier: LGPL-2.0-only |
|
*/ |
|
|
|
#pragma once |
|
|
|
// plasma |
|
#include <Plasma/DataContainer> |
|
|
|
#include <KService> |
|
#include <KServiceGroup> |
|
|
|
/** |
|
* App Source |
|
*/ |
|
class AppSource : public Plasma::DataContainer |
|
{ |
|
Q_OBJECT |
|
|
|
public: |
|
AppSource(const KServiceGroup::Ptr &startup, QObject *parent); |
|
AppSource(const KService::Ptr &app, QObject *parent); |
|
~AppSource() override; |
|
|
|
protected: |
|
Plasma::Service *createService(); |
|
KService::Ptr getApp(); |
|
bool isApp() const; |
|
|
|
private Q_SLOTS: |
|
void updateGroup(); |
|
void updateApp(); |
|
|
|
private: |
|
friend class AppsEngine; |
|
friend class AppJob; |
|
KServiceGroup::Ptr m_group; |
|
KService::Ptr m_app; |
|
bool m_isApp; |
|
};
|
|
|