[SCM] ktp-accounts-kcm packaging branch, master, updated. debian/15.12.1-1-1157-gc4589c5

Maximiliano Curia maxy at moszumanska.debian.org
Sat May 28 00:03:18 UTC 2016


Gitweb-URL: http://git.debian.org/?p=pkg-kde/applications/ktp-accounts-kcm.git;a=commitdiff;h=f979cb3

The following commit has been merged in the master branch:
commit f979cb3fe2936a689c834b04ef1a8d27ffaabaa5
Author: Daniele E. Domenichelli <daniele.domenichelli at gmail.com>
Date:   Thu Feb 23 19:12:46 2012 +0100

    Handle display name and default display name in AccountEditWidget
---
 src/KCMTelepathyAccounts/account-edit-widget.cpp | 65 ++++++++++++++++++++++++
 src/KCMTelepathyAccounts/account-edit-widget.h   | 11 ++++
 2 files changed, 76 insertions(+)

diff --git a/src/KCMTelepathyAccounts/account-edit-widget.cpp b/src/KCMTelepathyAccounts/account-edit-widget.cpp
index 312a4c9..6f84692 100644
--- a/src/KCMTelepathyAccounts/account-edit-widget.cpp
+++ b/src/KCMTelepathyAccounts/account-edit-widget.cpp
@@ -3,6 +3,7 @@
  *
  * Copyright (C) 2010 Collabora Ltd. <info at collabora.com>
  * Copyright (C) 2011 Dominik Schmidt <kde at dominik-schmidt.de>
+ * Copyright (C) 2012 Daniele E. Domenichelli <daniele.domenichelli at gmail.com>
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -48,6 +49,7 @@ public:
     QString connectionManager;
     QString protocol;
     QString serviceName;
+    QString displayName;
 
     QCheckBox *connectOnAdd;
 
@@ -151,6 +153,10 @@ void AccountEditWidget::loadWidgets()
         d->mainOptionsWidget->layout()->setContentsMargins(0, 0, 0, 0);
         d->ui->advancedButton->setVisible(d->accountUi->hasAdvancedOptionsWidget());
         d->ui->verticalLayout->insertWidget(2, d->mainOptionsWidget);
+        connect(d->mainOptionsWidget,
+                SIGNAL(defaultDisplayNameChanged(QString,QString)),
+                SLOT(onDefaultDisplayNameChanged(QString,QString)));
+        d->mainOptionsWidget->updateDefaultDisplayName();
 
         // check if all the parameters the UI supports are available in the CM plugin
         // also verify if the UI handle all mandatory parameters
@@ -183,6 +189,10 @@ void AccountEditWidget::loadWidgets()
         d->ui->advancedButton->setVisible(false);
         d->ui->verticalLayout->insertWidget(2, d->mainOptionsWidget);
         d->ui->verticalLayout->setStretch(2, 1);
+        connect(d->mainOptionsWidget,
+                SIGNAL(defaultDisplayNameChanged(QString,QString)),
+                SLOT(onDefaultDisplayNameChanged(QString,QString)));
+        d->mainOptionsWidget->updateDefaultDisplayName();
     }
 }
 
@@ -245,4 +255,59 @@ bool AccountEditWidget::connectOnAdd()
     }
 }
 
+QString AccountEditWidget::defaultDisplayName() const
+{
+    return d->mainOptionsWidget->defaultDisplayName();
+}
+
+QString AccountEditWidget::displayName() const
+{
+    if (d->displayName.isEmpty()) {
+        return d->mainOptionsWidget->defaultDisplayName();
+    }
+
+    return d->displayName;
+}
+
+void AccountEditWidget::setDisplayName(const QString &displayName)
+{
+    QString oldDisplayName;
+    QString newDisplayName;
+
+    if (d->displayName.isEmpty()) {
+        oldDisplayName = defaultDisplayName();
+    } else {
+        oldDisplayName = d->displayName;
+    }
+
+    if (displayName.isEmpty()) {
+        newDisplayName = defaultDisplayName();
+    } else {
+        newDisplayName = displayName;
+    }
+
+    if (newDisplayName != oldDisplayName) {
+        d->displayName = displayName;
+        Q_EMIT displayNameChanged(oldDisplayName, newDisplayName);
+    }
+}
+
+void AccountEditWidget::onDefaultDisplayNameChanged(const QString &oldDefaultDisplayName,
+                                                    const QString &newDefaultDisplayName)
+{
+    Q_EMIT defaultDisplayNameChanged(oldDefaultDisplayName, newDefaultDisplayName);
+
+    QString oldDisplayName = displayName();
+    // If the display name is empty or is the old default one the value is
+    // cleared (empty displayName = use default one). If the display name
+    // contains the old default value (probably the user added something, the
+    // default part is replaced and the rest is not changed. Otherwise display
+    // name was customized, therefore we leave it unchanged.
+    if (oldDisplayName.isEmpty() || oldDisplayName == oldDefaultDisplayName) {
+        setDisplayName(QString());
+    } else if (!oldDefaultDisplayName.isEmpty() && oldDisplayName.contains(oldDefaultDisplayName)) {
+        setDisplayName(oldDisplayName.replace(oldDefaultDisplayName, newDefaultDisplayName));
+    }
+}
+
 #include "account-edit-widget.moc"
diff --git a/src/KCMTelepathyAccounts/account-edit-widget.h b/src/KCMTelepathyAccounts/account-edit-widget.h
index 5db8119..91080d7 100644
--- a/src/KCMTelepathyAccounts/account-edit-widget.h
+++ b/src/KCMTelepathyAccounts/account-edit-widget.h
@@ -3,6 +3,7 @@
  *
  * Copyright (C) 2010 Collabora Ltd. <info at collabora.com>
  * Copyright (C) 2011 Dominik Schmidt <kde at dominik-schmidt.de>
+ * Copyright (C) 2012 Daniele E. Domenichelli <daniele.domenichelli at gmail.com>
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -53,14 +54,24 @@ public:
     virtual QVariantMap parametersSet() const;
     virtual QStringList parametersUnset() const;
 
+    virtual QString defaultDisplayName() const;
+    virtual QString displayName() const;
+    virtual void setDisplayName(const QString &displayName);
+
 protected:
     ParameterEditModel *parameterModel() const;
 
 private Q_SLOTS:
     void onAdvancedClicked();
+    void onDefaultDisplayNameChanged(const QString &oldDefaultDisplayName,
+                                     const QString &newDefaultDisplayName);
 
 Q_SIGNALS:
     void feedbackMessage(const QString &text, const QString &comment, KMessageWidget::MessageType);
+    void displayNameChanged(const QString &oldDisplayName,
+                            const QString &newDisplayName);
+    void defaultDisplayNameChanged(const QString &oldDefaultDisplayName,
+                                   const QString &newDefaultDisplayName);
 
 private:
     Q_DISABLE_COPY(AccountEditWidget);

-- 
ktp-accounts-kcm packaging



More information about the pkg-kde-commits mailing list