Warning, file /plasma/plasma-nm/libs/declarative/connectionicon.h was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001 /* 0002 SPDX-FileCopyrightText: 2013 Jan Grulich <jgrulich@redhat.com> 0003 0004 SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 0005 */ 0006 0007 #ifndef PLASMA_NM_CONNECTION_ICON_H 0008 #define PLASMA_NM_CONNECTION_ICON_H 0009 0010 #include <ModemManagerQt/Modem> 0011 #include <NetworkManagerQt/ActiveConnection> 0012 #include <NetworkManagerQt/Manager> 0013 #include <NetworkManagerQt/VpnConnection> 0014 #include <NetworkManagerQt/WirelessNetwork> 0015 0016 class ConnectionIcon : public QObject 0017 { 0018 Q_PROPERTY(bool connecting READ connecting NOTIFY connectingChanged) 0019 Q_PROPERTY(QString connectionIcon READ connectionIcon NOTIFY connectionIconChanged) 0020 Q_PROPERTY(QString connectionTooltipIcon READ connectionTooltipIcon NOTIFY connectionTooltipIconChanged) 0021 Q_PROPERTY(bool needsPortal READ needsPortal NOTIFY needsPortalChanged) 0022 0023 Q_OBJECT 0024 public: 0025 explicit ConnectionIcon(QObject *parent = nullptr); 0026 ~ConnectionIcon() override; 0027 0028 bool connecting() const; 0029 QString connectionIcon() const; 0030 QString connectionTooltipIcon() const; 0031 0032 bool needsPortal() const 0033 { 0034 return m_needsPortal; 0035 } 0036 0037 private Q_SLOTS: 0038 void activatingConnectionChanged(const QString &connection); 0039 void activeConnectionAdded(const QString &activeConnection); 0040 void activeConnectionDestroyed(); 0041 void activeConnectionStateChanged(NetworkManager::ActiveConnection::State state); 0042 void carrierChanged(bool carrier); 0043 void connectivityChanged(NetworkManager::Connectivity connectivity); 0044 void deviceAdded(const QString &device); 0045 void deviceRemoved(const QString &device); 0046 void networkingEnabledChanged(bool enabled); 0047 void primaryConnectionChanged(const QString &connection); 0048 void modemNetworkRemoved(); 0049 void modemSignalChanged(ModemManager::SignalQualityPair signalQuality); 0050 void setIconForModem(); 0051 void statusChanged(NetworkManager::Status status); 0052 void setWirelessIconForSignalStrength(int strength); 0053 void vpnConnectionStateChanged(NetworkManager::VpnConnection::State state, NetworkManager::VpnConnection::StateChangeReason reason); 0054 void wirelessEnabledChanged(bool enabled); 0055 void wirelessNetworkAppeared(const QString &network); 0056 void wwanEnabledChanged(bool enabled); 0057 Q_SIGNALS: 0058 void connectingChanged(bool connecting); 0059 void connectionIconChanged(const QString &icon); 0060 void connectionTooltipIconChanged(const QString &icon); 0061 void needsPortalChanged(bool needsPortal); 0062 0063 private: 0064 void addActiveConnection(const QString &activeConnection); 0065 void setConnecting(bool connecting); 0066 void setConnectionIcon(const QString &icon); 0067 void setConnectionTooltipIcon(const QString &icon); 0068 void setVpn(bool vpn); 0069 void setLimited(bool limited); 0070 uint m_signal = 0; 0071 NetworkManager::WirelessNetwork::Ptr m_wirelessNetwork; 0072 0073 bool m_connecting = false; 0074 bool m_limited = false; 0075 bool m_vpn = false; 0076 QString m_connectionIcon; 0077 QString m_connectionTooltipIcon; 0078 bool m_needsPortal = false; 0079 0080 void setDisconnectedIcon(); 0081 void setIcons(); 0082 void setStates(); 0083 void setWirelessIcon(const NetworkManager::Device::Ptr &device, const QString &ssid); 0084 ModemManager::Modem::Ptr m_modemNetwork; 0085 void setModemIcon(const NetworkManager::Device::Ptr &device); 0086 }; 0087 0088 #endif // PLASMA_NM_CONNECTION_ICON_H