tuntap, tunnel and vlan widgets have been completed

This commit is contained in:
arcan1s 2014-02-22 00:38:17 +04:00
parent 13c63163b1
commit 026f08d0cf
13 changed files with 154 additions and 6 deletions

View File

@ -47,9 +47,9 @@ QHash<QString, QString> BridgeWidget::getSettings()
if (isOk() == 0) { if (isOk() == 0) {
if (ui->checkBox_skip->checkState() == Qt::Checked) if (ui->checkBox_skip->checkState() == Qt::Checked)
bridgeSettings[QString("SkipForwardingDelay")] = QString("yes"); bridgeSettings[QString("SkipForwardingDelay")] = QString("yes");
clear();
} }
clear();
return bridgeSettings; return bridgeSettings;
} }

View File

@ -111,9 +111,9 @@ QHash<QString, QString> EthernetWidget::getSettings()
ethernetSettings[QString("TimeoutCarrier")] = QString(ui->spinBox_timeoutCarrier->value()); ethernetSettings[QString("TimeoutCarrier")] = QString(ui->spinBox_timeoutCarrier->value());
if (ui->spinBox_timeoutWpa->value() != 15) if (ui->spinBox_timeoutWpa->value() != 15)
ethernetSettings[QString("TimeoutWPA")] = QString(ui->spinBox_timeoutWpa->value()); ethernetSettings[QString("TimeoutWPA")] = QString(ui->spinBox_timeoutWpa->value());
clear();
} }
clear();
return ethernetSettings; return ethernetSettings;
} }

View File

@ -134,9 +134,9 @@ QHash<QString, QString> GeneralWidget::getSettings()
generalSettings[QString("ExecDownPre")] = ui->lineEdit_execDownPre->text(); generalSettings[QString("ExecDownPre")] = ui->lineEdit_execDownPre->text();
if (ui->checkBox_forceConnect->checkState() == Qt::Checked) if (ui->checkBox_forceConnect->checkState() == Qt::Checked)
generalSettings[QString("ForceConnect")] = QString("yes"); generalSettings[QString("ForceConnect")] = QString("yes");
clear();
} }
clear();
return generalSettings; return generalSettings;
} }

View File

@ -454,9 +454,9 @@ QHash<QString, QString> IpWidget::getSettings()
dnsOpt.append(QString("'") + ui->listWidget_dnsOptions->item(i)->text() + QString("'")); dnsOpt.append(QString("'") + ui->listWidget_dnsOptions->item(i)->text() + QString("'"));
ipSettings[QString("DNS")] = dnsOpt.join(QString(" ")); ipSettings[QString("DNS")] = dnsOpt.join(QString(" "));
} }
clear();
} }
clear();
return ipSettings; return ipSettings;
} }

View File

@ -111,9 +111,9 @@ QHash<QString, QString> MobileWidget::getSettings()
mobileSettings[QString("UsePeerDNS")] = QString("false"); mobileSettings[QString("UsePeerDNS")] = QString("false");
if (!ui->lineEdit_options->text().isEmpty()) if (!ui->lineEdit_options->text().isEmpty())
mobileSettings[QString("OptionsFile")] = ui->lineEdit_options->text(); mobileSettings[QString("OptionsFile")] = ui->lineEdit_options->text();
clear();
} }
clear();
return mobileSettings; return mobileSettings;
} }

View File

@ -152,9 +152,9 @@ QHash<QString, QString> PppoeWidget::getSettings()
pppoeSettings[QString("PPPoEMAC")] = QString("'") + ui->lineEdit_mac->text() + QString("'"); pppoeSettings[QString("PPPoEMAC")] = QString("'") + ui->lineEdit_mac->text() + QString("'");
if (ui->checkBox_ipv6->checkState() == Qt::Checked) if (ui->checkBox_ipv6->checkState() == Qt::Checked)
pppoeSettings[QString("PPPoEIP6")] = QString("yes"); pppoeSettings[QString("PPPoEIP6")] = QString("yes");
clear();
} }
clear();
return pppoeSettings; return pppoeSettings;
} }

View File

@ -33,10 +33,12 @@ public :
{ {
QThread::usleep(iSleepTime); QThread::usleep(iSleepTime);
} }
static void sleep(long iSleepTime) static void sleep(long iSleepTime)
{ {
QThread::sleep(iSleepTime); QThread::sleep(iSleepTime);
} }
static void msleep(long iSleepTime) static void msleep(long iSleepTime)
{ {
QThread::msleep(iSleepTime); QThread::msleep(iSleepTime);

View File

@ -24,6 +24,8 @@ TunnelWidget::TunnelWidget(QWidget *parent)
ui(new Ui::TunnelWidget) ui(new Ui::TunnelWidget)
{ {
ui->setupUi(this); ui->setupUi(this);
createFilter();
clear();
} }
@ -31,3 +33,66 @@ TunnelWidget::~TunnelWidget()
{ {
delete ui; delete ui;
} }
void TunnelWidget::clear()
{
ui->comboBox_mode->setCurrentIndex(0);
ui->lineEdit_local->clear();
ui->lineEdit_remote->clear();
}
void TunnelWidget::createFilter()
{
// using input mask because validators is not comfortable
// ipv4
ui->lineEdit_local->setInputMask(QString("999.999.999.999"));
ui->lineEdit_remote->setInputMask(QString("999.999.999.999"));
}
QString TunnelWidget::getIp(QString rawIp)
{
QStringList ip = rawIp.split(QString("."));
// fix empty fields
if (ip[0].isEmpty())
ip[0] = QString("127");
if (ip[1].isEmpty())
ip[1] = QString("0");
if (ip[2].isEmpty())
ip[2] = QString("0");
if (ip[3].isEmpty())
ip[3] = QString("1");
// fix numbers
for (int i=0; i<4; i++)
if (ip[i].toInt() > 255)
ip[i] = QString("255");
return ip.join(QString("."));
}
QHash<QString, QString> TunnelWidget::getSettings()
{
QHash<QString, QString> tunnelSettings;
if (isOk() == 0) {
tunnelSettings[QString("Mode")] = QString("'") + ui->comboBox_mode->currentText() + QString("'");
if (!ui->lineEdit_local->text().split(QString(".")).join(QString("")).remove(QString(" ")).isEmpty())
tunnelSettings[QString("Local")] = QString("'") + getIp(ui->lineEdit_local->text().remove(QString(" "))) + QString("'");
if (!ui->lineEdit_remote->text().split(QString(".")).join(QString("")).remove(QString(" ")).isEmpty())
tunnelSettings[QString("Remote")] = QString("'") + getIp(ui->lineEdit_remote->text().remove(QString(" "))) + QString("'");
clear();
}
return tunnelSettings;
}
int TunnelWidget::isOk()
{
// all fine
return 0;
}

View File

@ -32,9 +32,16 @@ class TunnelWidget : public QWidget
public: public:
explicit TunnelWidget(QWidget *parent = 0); explicit TunnelWidget(QWidget *parent = 0);
~TunnelWidget(); ~TunnelWidget();
QHash<QString, QString> getSettings();
int isOk();
public slots:
void clear();
private: private:
Ui::TunnelWidget *ui; Ui::TunnelWidget *ui;
void createFilter();
QString getIp(QString rawIp);
}; };

View File

@ -24,6 +24,7 @@ TuntapWidget::TuntapWidget(QWidget *parent)
ui(new Ui::TuntapWidget) ui(new Ui::TuntapWidget)
{ {
ui->setupUi(this); ui->setupUi(this);
clear();
} }
@ -31,3 +32,39 @@ TuntapWidget::~TuntapWidget()
{ {
delete ui; delete ui;
} }
void TuntapWidget::clear()
{
ui->comboBox_mode->setCurrentIndex(0);
ui->lineEdit_user->setText(QString("nobody"));
ui->lineEdit_group->setText(QString("nobody"));
}
QHash<QString, QString> TuntapWidget::getSettings()
{
QHash<QString, QString> tuntapSettings;
if (isOk() == 0) {
tuntapSettings[QString("Mode")] = QString("'") + ui->comboBox_mode->currentText() + QString("'");
tuntapSettings[QString("User")] = QString("'") + ui->lineEdit_user->text() + QString("'");
tuntapSettings[QString("Group")] = QString("'") + ui->lineEdit_group->text() + QString("'");
clear();
}
return tuntapSettings;
}
int TuntapWidget::isOk()
{
// empty username
if (ui->lineEdit_user->text().isEmpty())
return 1;
// empty group name
if (ui->lineEdit_group->text().isEmpty())
return 2;
// all fine
return 0;
}

View File

@ -32,6 +32,11 @@ class TuntapWidget : public QWidget
public: public:
explicit TuntapWidget(QWidget *parent = 0); explicit TuntapWidget(QWidget *parent = 0);
~TuntapWidget(); ~TuntapWidget();
QHash<QString, QString> getSettings();
int isOk();
public slots:
void clear();
private: private:
Ui::TuntapWidget *ui; Ui::TuntapWidget *ui;

View File

@ -24,6 +24,7 @@ VlanWidget::VlanWidget(QWidget *parent)
ui(new Ui::VlanWidget) ui(new Ui::VlanWidget)
{ {
ui->setupUi(this); ui->setupUi(this);
clear();
} }
@ -31,3 +32,29 @@ VlanWidget::~VlanWidget()
{ {
delete ui; delete ui;
} }
void VlanWidget::clear()
{
ui->spinBox_vlan->setValue(55);
}
QHash<QString, QString> VlanWidget::getSettings()
{
QHash<QString, QString> vlanSettings;
if (isOk() == 0) {
vlanSettings[QString("VLANID")] = QString(ui->spinBox_vlan->value());
clear();
}
return vlanSettings;
}
int VlanWidget::isOk()
{
// all fine
return 0;
}

View File

@ -32,6 +32,11 @@ class VlanWidget : public QWidget
public: public:
explicit VlanWidget(QWidget *parent = 0); explicit VlanWidget(QWidget *parent = 0);
~VlanWidget(); ~VlanWidget();
QHash<QString, QString> getSettings();
int isOk();
public slots:
void clear();
private: private:
Ui::VlanWidget *ui; Ui::VlanWidget *ui;