[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