[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 ¶meterName,
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 ¶meterName,
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 ¶meterNa
}
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 ¶meterName,
QVariant::Type parameterType,
QWidget *dataWidget,
- const QList<QWidget*> &labelWidgets);
+ const QList<QWidget*> &labelWidgets,
+ bool updatesDefaultDisplayName = false);
void handleParameter(const QString ¶meterName,
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