Update new account dialog to have Port field.
[vlc-remote] / newaccountdialog.cpp
index 4f9c39e..8950467 100644 (file)
@@ -8,8 +8,11 @@ NewAccountDialog::NewAccountDialog(QWidget *parent)
 {
     this->setWindowTitle(tr("Add account"));
 
-    mMyKeyLineEdit = new QLineEdit;
-    mMyIpLineEdit = new QLineEdit;
+    mKeyLineEdit = new QLineEdit;
+    mIpLineEdit = new QLineEdit;
+    mPortLineEdit = new QLineEdit;
+    mPortLineEdit->setText("8080");
+    mPortLineEdit->setReadOnly(true);
 
     mButtonBox = new QDialogButtonBox;
     mButtonBox->addButton(QDialogButtonBox::Save);
@@ -20,8 +23,9 @@ NewAccountDialog::NewAccountDialog(QWidget *parent)
 
     QFormLayout *layout = new QFormLayout;
     layout->expandingDirections();
-    layout->addRow(tr("Name:"), mMyKeyLineEdit);
-    layout->addRow(tr("Ip:"), mMyIpLineEdit);
+    layout->addRow(tr("Name:"), mKeyLineEdit);
+    layout->addRow(tr("Ip:"), mIpLineEdit);
+    layout->addRow(tr("Port:"), mPortLineEdit);
     layout->addWidget(mButtonBox);
 
     setLayout(layout);
@@ -29,8 +33,9 @@ NewAccountDialog::NewAccountDialog(QWidget *parent)
 
 void NewAccountDialog::save()
 {
-    QString myKey = mMyKeyLineEdit->text();
-    QString myIp = mMyIpLineEdit->text();
+    QString myKey = mKeyLineEdit->text();
+    QString myIp = mIpLineEdit->text();
+    QString myPort = mPortLineEdit->text();
 
     QSettings settings;
     settings.beginGroup("account");
@@ -39,7 +44,10 @@ void NewAccountDialog::save()
     }
 
     if (!myIp.isEmpty() && !myKey.isEmpty()) {
-        settings.setValue(myKey, myIp);
+        if (myPort.isEmpty()) {
+            myPort = "8080";
+        }
+        settings.setValue(myKey, myIp+":"+myPort);
         // Rajouter des tests pour vĂ©rifier qu'on est sur Maemo
         //QMaemo5InformationBox::information(this, tr("Account saved"), QMaemo5InformationBox::DefaultTimeout);
     }
@@ -52,11 +60,20 @@ void NewAccountDialog::edit(QString &key, QString &ip)
 {
     this->setWindowTitle(tr("Edit account"));
 
+    QSettings settings;
+    settings.beginGroup("account");
+    QString value = settings.value(key).toString();
+    settings.endGroup();
+
+    QStringList values = value.split(":");
+
     mEditKey = key;
-    mEditIp = ip;
+    mEditIp = values.first();
+    mEditPort = values.last();
 
-    mMyKeyLineEdit->setText(key);
-    mMyKeyLineEdit->setDisabled(true);
-    mMyIpLineEdit->setText(ip);
+    mKeyLineEdit->setText(mEditKey);
+    mKeyLineEdit->setDisabled(true);
+    mIpLineEdit->setText(mEditIp);
+    mPortLineEdit->setText(mEditPort);
 }