[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    playground/network/telepathy-accounts-kcm/src
From:       George Goldberg <grundleborg () googlemail ! com>
Date:       2009-08-03 13:18:02
Message-ID: 1249305482.705887.18209.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 1006308 by gberg:

Rely on the AbstractAccountParametersWidget classes to validate their parameter values.

 M  +15 -6     add-account-assistant.cpp  


--- trunk/playground/network/telepathy-accounts-kcm/src/add-account-assistant.cpp #1006307:1006308
@@ -228,17 +228,22 @@
         return;
     }
 
-    // Get the mandatory parameters.
-    QMap<Tp::ProtocolParameter*, QVariant> mandatoryParameterValues;
-    mandatoryParameterValues = d->mandatoryParametersWidget->parameterValues();
+    // Check all pages of parameters pass validation.
+    if (!d->mandatoryParametersWidget->validateParameterValues()) {
+        kDebug() << "A widget failed parameter validation. Not accepting wizard.";
+        return;
+    }
 
-    foreach (const QVariant &value, mandatoryParameterValues.values()) {
-        if (value.toString().isEmpty()) {
-            KMessageBox::error(this, i18n("Please enter all mandatory parameters."));
+    foreach (AbstractAccountParametersWidget *w, d->optionalParametersWidgets) {
+        if (!w->validateParameterValues()) {
+            kDebug() << "A widget failed parameter validation. Not accepting wizard.";
             return;
         }
     }
 
+    // Get the mandatory parameters.
+    QMap<Tp::ProtocolParameter*, QVariant> mandatoryParameterValues;
+    mandatoryParameterValues = d->mandatoryParametersWidget->parameterValues();
 
     // Get the optional properties
     QMap<Tp::ProtocolParameter*, QVariant> optionalParameterValues;
@@ -313,6 +318,7 @@
 void AddAccountAssistant::onAccountCreated(Tp::PendingOperation *op)
 {
     if (op->isError()) {
+        // TODO: User feedback in this case.
         kWarning() << "Adding Account failed:" << op->errorName() << op->errorMessage();
         return;
     }
@@ -320,3 +326,6 @@
     KAssistantDialog::accept();
 }
 
+
+#include "add-account-assistant.moc"
+
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic