libsolidcontrol
networkmanager.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef SOLID_IFACES_NETWORKMANAGER
00021 #define SOLID_IFACES_NETWORKMANAGER
00022
00023 #include <QtCore/QObject>
00024 #include <QtCore/QStringList>
00025 #include <solid/networking.h>
00026 #include "../solid_control_export.h"
00027 #include "../networkmanager.h"
00028
00029 namespace Solid
00030 {
00031 namespace Control
00032 {
00033 namespace Ifaces
00034 {
00043 class SOLIDCONTROLIFACES_EXPORT NetworkManager : public QObject
00044 {
00045 Q_OBJECT
00046 public:
00052 NetworkManager(QObject * parent = 0);
00056 virtual ~NetworkManager();
00057
00061 virtual Solid::Networking::Status status() const = 0;
00062
00069 virtual QStringList networkInterfaces() const = 0;
00070
00077 virtual QObject *createNetworkInterface(const QString &uni) = 0;
00078
00084 virtual bool isNetworkingEnabled() const = 0;
00085
00091 virtual bool isWirelessEnabled() const = 0;
00092
00100 virtual bool isWirelessHardwareEnabled() const = 0;
00101
00102 virtual void activateConnection(const QString & interfaceUni, const QString & connectionUni, const QVariantMap & connectionParameters ) = 0;
00103
00104 virtual void deactivateConnection(const QString & activeConnection) = 0;
00105
00109 virtual QStringList activeConnections() const = 0;
00110
00111 public Q_SLOTS:
00117 virtual void setNetworkingEnabled(bool enabled) = 0;
00118
00124 virtual void setWirelessEnabled(bool enabled) = 0;
00125
00126 Q_SIGNALS:
00130 void statusChanged(Solid::Networking::Status status);
00131
00137 void networkInterfaceAdded(const QString & uni);
00138
00144 void networkInterfaceRemoved(const QString & uni);
00145
00149 void wirelessEnabledChanged(bool enabled);
00150
00154 void wirelessHardwareEnabledChanged(bool enabled);
00155
00159 void activeConnectionsChanged();
00160 };
00161
00162 }
00163
00164 }
00165
00166 }
00167
00168 Q_DECLARE_INTERFACE(Solid::Control::Ifaces::NetworkManager, "org.kde.Solid.Control.Ifaces.NetworkManager/0.1")
00169
00170 #endif