File indexing completed on 2024-05-05 16:58:23

0001 /*
0002  *  SPDX-FileCopyrightText: 2012 Alejandro Fiestas Olivares <afiestas@kde.org>
0003  *  SPDX-FileCopyrightText: 2015 Martin Klapetek <mklapetek@kde.org>
0004  *
0005  *  SPDX-License-Identifier: GPL-2.0-or-later
0006  */
0007 
0008 #ifndef OWNCLOUD_H
0009 #define OWNCLOUD_H
0010 
0011 #include <KPluginMetaData>
0012 #include <QHash>
0013 #include <QUrl>
0014 
0015 #include <KAccounts/KAccountsUiPlugin>
0016 
0017 class QQmlApplicationEngine;
0018 
0019 class OwnCloudWizard : public KAccounts::KAccountsUiPlugin
0020 {
0021     Q_OBJECT
0022     Q_PLUGIN_METADATA(IID "org.kde.kaccounts.UiPlugin")
0023     Q_INTERFACES(KAccounts::KAccountsUiPlugin)
0024 
0025 public:
0026     explicit OwnCloudWizard(QObject *parent = nullptr);
0027     virtual ~OwnCloudWizard();
0028 
0029     virtual void init(KAccountsUiPlugin::UiType type) override;
0030     virtual void setProviderName(const QString &providerName) override;
0031     virtual void showNewAccountDialog() override;
0032     virtual void showConfigureAccountDialog(const quint32 accountId) override;
0033     virtual QStringList supportedServicesForConfig() const override;
0034 
0035 private:
0036     QHash<QString, int> m_services;
0037     QQmlApplicationEngine *m_engine;
0038     KPluginMetaData m_data;
0039 };
0040 
0041 #endif // OWNCLOUD_H