mirror of
https://invent.kde.org/marcoa/shift-shell.git
synced 2026-04-26 14:23:09 +00:00
Having the KCMs that are mobile specific here makes more sense than in the settings application. Historically plasma-settings had a faster release cycle than Plasma, but the application is now moving to the Plasma release schedule and so it makes sense do this now.
79 lines
2.4 KiB
C++
79 lines
2.4 KiB
C++
// SPDX-FileCopyrightText: 2021-2022 Devin Lin <espidev@gmail.com>
|
|
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
|
|
#pragma once
|
|
|
|
#include "cellularnetworksettings.h"
|
|
#include "modemdetails.h"
|
|
#include "sim.h"
|
|
|
|
#include <QList>
|
|
#include <QString>
|
|
|
|
#include <NetworkManagerQt/CdmaSetting>
|
|
#include <NetworkManagerQt/ConnectionSettings>
|
|
#include <NetworkManagerQt/GsmSetting>
|
|
#include <NetworkManagerQt/Manager>
|
|
#include <NetworkManagerQt/ModemDevice>
|
|
#include <NetworkManagerQt/Settings>
|
|
|
|
#include <ModemManagerQt/GenericTypes>
|
|
#include <ModemManagerQt/Manager>
|
|
#include <ModemManagerQt/Modem3Gpp>
|
|
#include <ModemManagerQt/ModemDevice>
|
|
|
|
class ProfileSettings : public QObject
|
|
{
|
|
Q_OBJECT
|
|
Q_PROPERTY(QString name READ name NOTIFY nameChanged)
|
|
Q_PROPERTY(QString apn READ apn WRITE setApn NOTIFY apnChanged)
|
|
Q_PROPERTY(QString user READ user WRITE setUser NOTIFY userChanged)
|
|
Q_PROPERTY(QString password READ password WRITE setPassword NOTIFY passwordChanged)
|
|
Q_PROPERTY(QString networkType READ networkType WRITE setNetworkType NOTIFY networkTypeChanged)
|
|
Q_PROPERTY(QString connectionUni READ connectionUni NOTIFY connectionUniChanged)
|
|
|
|
public:
|
|
ProfileSettings(QObject *parent = nullptr)
|
|
: QObject{parent}
|
|
{
|
|
}
|
|
ProfileSettings(QObject *parent,
|
|
QString name,
|
|
QString apn,
|
|
QString user,
|
|
QString password,
|
|
NetworkManager::GsmSetting::NetworkType networkType,
|
|
QString connectionUni);
|
|
ProfileSettings(QObject *parent, NetworkManager::Setting::Ptr settings, NetworkManager::Connection::Ptr connection);
|
|
|
|
QString name();
|
|
QString apn();
|
|
void setApn(QString apn);
|
|
QString user();
|
|
void setUser(QString user);
|
|
QString password();
|
|
void setPassword(QString password);
|
|
QString networkType();
|
|
void setNetworkType(QString ipType);
|
|
QString connectionUni();
|
|
|
|
// utilities
|
|
static QString networkTypeStr(NetworkManager::GsmSetting::NetworkType networkType);
|
|
static NetworkManager::GsmSetting::NetworkType networkTypeFlag(const QString &networkType);
|
|
|
|
Q_SIGNALS:
|
|
void nameChanged();
|
|
void apnChanged();
|
|
void userChanged();
|
|
void passwordChanged();
|
|
void networkTypeChanged();
|
|
void connectionUniChanged();
|
|
|
|
private:
|
|
QString m_name;
|
|
QString m_apn;
|
|
QString m_user;
|
|
QString m_password;
|
|
QString m_networkType;
|
|
QString m_connectionUni;
|
|
};
|