{
Q_OBJECT
+ // General properties
+ Q_PROPERTY (QString logText READ getLogText WRITE setLogText NOTIFY logTextChanged)
+
+ // Configuration properties
Q_PROPERTY (QString server READ getServer WRITE setServer NOTIFY serverChanged)
Q_PROPERTY (unsigned int port READ getPort WRITE setPort NOTIFY portChanged)
Q_PROPERTY (bool compressed READ getCompressed WRITE setCompressed NOTIFY compressedChanged)
Q_PROPERTY (QString clientCertFile READ getClientCertFile WRITE setClientCertFile NOTIFY clientCertFileChanged)
Q_PROPERTY (QString clientKeyFile READ getClientKeyFile WRITE setClientKeyFile NOTIFY clientKeyFileChanged)
Q_PROPERTY (QString tlsKeyFile READ getTlsKeyFile WRITE setTlsKeyFile NOTIFY tlsKeyFileChanged)
-
- Q_PROPERTY (QString logText READ getLogText WRITE setLogText NOTIFY logTextChanged)
+ Q_PROPERTY (QString configFile READ getConfigFile WRITE setConfigFile NOTIFY configFileChanged)
private:
+ // General variables
QProcess * vpnProcess;
VPNSTATUS vpnStatus;
QStringList arguments;
QString clientCertFile;
QString clientKeyFile;
QString tlsKeyFile;
+ QString configFile;
+ // Internal methods
void collectArguments ();
void setStatus (VPNSTATUS newStatus);
void addArgument (QString key, QString value);
void settingsSetValue (QString key, int value);
public:
+ // General methods
explicit VPNControl(QObject *parent = 0);
void initialise();
+ QString getLogText() const;
+
+ // Configuration retreival methods
QString getServer() const;
unsigned int getPort() const;
bool getCompressed() const;
QString getClientCertFile () const;
QString getClientKeyFile () const;
QString getTlsKeyFile () const;
-
- QString getLogText() const;
+ QString getConfigFile () const;
signals:
+ // General signals
void statusChanged(int status);
+ void logTextChanged (QString &logText);
+
+ // Configuration change signals
void serverChanged(QString &server);
void portChanged(unsigned int port);
void compressedChanged(bool compressed);
void clientCertFileChanged(QString &clientCertFile);
void clientKeyFileChanged(QString &clientKeyFile);
void tlsKeyFileChanged(QString &tlsKeyFile);
-
- void logTextChanged (QString &logText);
+ void configFileChanged(QString &configFile);
public slots:
+ // General methods
void vpnConnect ();
void vpnDisconnect ();
void readData ();
void finished (int code);
void readError (QProcess::ProcessError error);
void updateConfiguration ();
+ void setLogText(const QString &value);
+ void logAppend(const QString &text);
+
+ // Configuration setting
void setServer(const QString &value);
void setPort(unsigned int value);
void setCompressed(bool value);
void setClientCertFile(const QString &value);
void setClientKeyFile(const QString &value);
void setTlsKeyFile(const QString &value);
-
- void setLogText(const QString &value);
- void logAppend(const QString &text);
+ void setConfigFile(const QString &value);
};
#endif // VPNCONTROL_H