[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:08 UTC 2016


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

The following commit has been merged in the master branch:
commit b1a7eb2bfe5721df174e0f9247920f28ae55754b
Author: Daniele E. Domenichelli <daniele.domenichelli at gmail.com>
Date:   Wed Dec 28 09:49:57 2011 +0100

    Add methods for handling default display name to AbstractAccountParametersWidget
---
 .../abstract-account-parameters-widget.cpp         | 36 ++++++++++++++++++++--
 .../abstract-account-parameters-widget.h           | 23 ++++++++++++--
 2 files changed, 54 insertions(+), 5 deletions(-)

diff --git a/src/KCMTelepathyAccounts/abstract-account-parameters-widget.cpp b/src/KCMTelepathyAccounts/abstract-account-parameters-widget.cpp
index c2b9a67..e5bd653 100644
--- a/src/KCMTelepathyAccounts/abstract-account-parameters-widget.cpp
+++ b/src/KCMTelepathyAccounts/abstract-account-parameters-widget.cpp
@@ -4,6 +4,7 @@
  * Copyright (C) 2009 Collabora Ltd. <info at collabora.com>
  * Copyright (C) 2011 Dominik Schmidt <kde at dominik-schmidt.de>
  * Copyright (C) 2011 Thomas Richard <thomas.richard at proan.be>
+ * 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:
     QList<QWidget*> mappedWidgets;
     QMap<QPersistentModelIndex,ValidatedLineEdit*> validatedWidgets;
     QString errorMessage;
+    QString defaultDisplayName;
 };
 
 AbstractAccountParametersWidget::AbstractAccountParametersWidget(ParameterEditModel *parameterModel,
@@ -87,19 +89,21 @@ bool AbstractAccountParametersWidget::validateParameterValues()
 void AbstractAccountParametersWidget::handleParameter(const QString &parameterName,
                                            QVariant::Type parameterType,
                                            QWidget* dataWidget,
-                                           QWidget* labelWidget = 0)
+                                           QWidget* labelWidget,
+                                           bool updatesDefaultDisplayName)
 {
     QList<QWidget*> labelWidgets;
     if (labelWidget) {
         labelWidgets << labelWidget;
     }
-    handleParameter(parameterName, parameterType, dataWidget, labelWidgets);
+    handleParameter(parameterName, parameterType, dataWidget, labelWidgets, updatesDefaultDisplayName);
 }
 
 void AbstractAccountParametersWidget::handleParameter(const QString &parameterName,
                                            QVariant::Type parameterType,
                                            QWidget* dataWidget,
-                                           const QList<QWidget*> &labelWidgets)
+                                           const QList<QWidget*> &labelWidgets,
+                                           bool updatesDefaultDisplayName)
 {
     kDebug() << parameterType << parameterName;
 
@@ -131,6 +135,13 @@ void AbstractAccountParametersWidget::handleParameter(const QString &parameterNa
         }
         d->mapper->toFirst();
 
+        QLineEdit *lineEdit = qobject_cast<QLineEdit*>(dataWidget);
+        if (lineEdit && updatesDefaultDisplayName) {
+            connect (lineEdit,
+                     SIGNAL(textChanged(QString)),
+                     SLOT(updateDefaultDisplayName()));
+        }
+
         // check if the passed parameter is a validated one.. If so we're going to set the model here
         ValidatedLineEdit *validated = qobject_cast<ValidatedLineEdit*>(dataWidget);
         if (validated) {
@@ -170,5 +181,24 @@ ParameterEditModel* AbstractAccountParametersWidget::parameterModel() const
     return d->parameterModel;
 }
 
+void AbstractAccountParametersWidget::updateDefaultDisplayName()
+{
+    kWarning() << "This method should be implemented by derived classed";
+}
+
+void AbstractAccountParametersWidget::setDefaultDisplayName(const QString& defaultDisplayName)
+{
+    if (d->defaultDisplayName != defaultDisplayName) {
+        QString oldDefaultDisplayName = d->defaultDisplayName;
+        d->defaultDisplayName = defaultDisplayName;
+        Q_EMIT defaultDisplayNameChanged(oldDefaultDisplayName, defaultDisplayName);
+    }
+}
+
+QString AbstractAccountParametersWidget::defaultDisplayName() const
+{
+    return d->defaultDisplayName;
+}
+
 
 #include "abstract-account-parameters-widget.moc"
diff --git a/src/KCMTelepathyAccounts/abstract-account-parameters-widget.h b/src/KCMTelepathyAccounts/abstract-account-parameters-widget.h
index 0c6cd95..04b6a5d 100644
--- a/src/KCMTelepathyAccounts/abstract-account-parameters-widget.h
+++ b/src/KCMTelepathyAccounts/abstract-account-parameters-widget.h
@@ -4,6 +4,7 @@
  * Copyright (C) 2009 Collabora Ltd. <info at collabora.com>
  * Copyright (C) 2011 Dominik Schmidt <kde at dominik-schmidt.de>
  * Copyright (C) 2011 Thomas Richard <thomas.richard at proan.be>
+ * 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
@@ -55,6 +56,16 @@ public:
 
     virtual bool validateParameterValues();
 
+    QString defaultDisplayName() const;
+
+public Q_SLOTS:
+    /** This method is called when the display name should be updated
+     *  Derivated classes should reimplement this method
+     */
+    virtual void updateDefaultDisplayName();
+
+Q_SIGNALS:
+    void defaultDisplayNameChanged(const QString &oldDisplayName, const QString &newDisplayName);
 
 protected:
     /** Map an input widget to a protocol parameter.
@@ -65,20 +76,28 @@ protected:
         \param parameterType The expected type for the parameter. If this does not match, the input will be hidden.
         \param dataWidget The user interface widget (QLineEdit/QSpinBox etc) that should be mapped to the parameter.
         \param labelWidgets Any additional labels that should be hidden if the parameter does not exist.
+        \param updatesDisplayName Set this to true if modifying this parameter the display Name should be modified. (valid only for QLineEdits)
     */
     void handleParameter(const QString &parameterName,
                          QVariant::Type parameterType,
                          QWidget *dataWidget,
-                         const QList<QWidget*> &labelWidgets);
+                         const QList<QWidget*> &labelWidgets,
+                         bool updatesDefaultDisplayName = false);
 
     void handleParameter(const QString &parameterName,
                          QVariant::Type parameterType,
                          QWidget *dataWidget,
-                         QWidget *labelWidget);
+                         QWidget *labelWidget = 0,
+                         bool updatesDefaultDisplayName = false);
 
     /** Returns the model containing all the protocol parameters*/
     ParameterEditModel *parameterModel() const;
 
+    /** Call this method from updateDefaultDisplayName() in derivated class to set
+     *  The display name and emit signals
+     */
+    void setDefaultDisplayName(const QString &defaultDisplayName);
+
 private:
     Q_DISABLE_COPY(AbstractAccountParametersWidget);
 

-- 
ktp-accounts-kcm packaging



More information about the pkg-kde-commits mailing list