/***************************************************************************
- * Copyright (C) 2005-09 by the Quassel Project *
+ * Copyright (C) 2005-2018 by the Quassel Project *
* devel@quassel-irc.org *
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
- * (at your option) any later version. *
+ * (at your option) version 3. *
* *
* This program is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* You should have received a copy of the GNU General Public License *
* along with this program; if not, write to the *
* Free Software Foundation, Inc., *
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
***************************************************************************/
#include "identitiessettingspage.h"
#include <QInputDialog>
#include <QMessageBox>
+#include <utility>
#include "client.h"
-#include "iconloader.h"
+#include "icon.h"
#include "signalproxy.h"
IdentitiesSettingsPage::IdentitiesSettingsPage(QWidget *parent)
- : SettingsPage(tr("IRC"), tr("Identities"), parent),
- _editSsl(false)
+ : SettingsPage(tr("IRC"), tr("Identities"), parent)
{
ui.setupUi(this);
- ui.renameIdentity->setIcon(BarIcon("edit-rename"));
- ui.addIdentity->setIcon(BarIcon("list-add-user"));
- ui.deleteIdentity->setIcon(BarIcon("list-remove-user"));
+ ui.renameIdentity->setIcon(icon::get("edit-rename"));
+ ui.addIdentity->setIcon(icon::get("list-add-user"));
+ ui.deleteIdentity->setIcon(icon::get("list-remove-user"));
coreConnectionStateChanged(Client::isConnected()); // need a core connection!
connect(Client::instance(), SIGNAL(coreConnectionStateChanged(bool)), this, SLOT(coreConnectionStateChanged(bool)));
_editSsl = true;
QHash<IdentityId, CertIdentity *>::iterator idIter;
- for (idIter = identities.begin(); idIter != identities.end(); idIter++) {
+ for (idIter = identities.begin(); idIter != identities.end(); ++idIter) {
idIter.value()->enableEditSsl();
}
if (currentId != 0) {
changedIdentities.removeAll(currentId);
CertIdentity temp(currentId, this);
+#ifdef HAVE_SSL
+ // we need to set the cert and key manually, as they aren't synced
+ CertIdentity *old = identities[currentId];
+ temp.setSslKey(old->sslKey());
+ temp.setSslCert(old->sslCert());
+#endif
ui.identityEditor->saveToIdentity(&temp);
temp.setIdentityName(identities[currentId]->identityName());
if (temp != *Client::identity(currentId) || temp.isDirty())
void IdentitiesSettingsPage::clientIdentityCreated(IdentityId id)
{
- CertIdentity *identity = new CertIdentity(*Client::identity(id), this);
+ auto *identity = new CertIdentity(*Client::identity(id), this);
#ifdef HAVE_SSL
identity->enableEditSsl(_editSsl);
#endif
void IdentitiesSettingsPage::on_identityList_currentIndexChanged(int index)
{
- CertIdentity *previousIdentity = 0;
+ CertIdentity *previousIdentity = nullptr;
if (currentId != 0 && identities.contains(currentId))
previousIdentity = identities[currentId];
if (index < 0) {
//ui.identityList->setEditable(false);
- ui.identityEditor->displayIdentity(0, previousIdentity);
+ ui.identityEditor->displayIdentity(nullptr, previousIdentity);
currentId = 0;
}
else {
if (!identities.keys().contains(-id.toInt())) break;
}
id = -id.toInt();
- CertIdentity *newId = new CertIdentity(id, this);
+ auto *newId = new CertIdentity(id, this);
#ifdef HAVE_SSL
newId->enableEditSsl(_editSsl);
#endif
: QDialog(parent)
{
ui.setupUi(this);
- ui.abort->setIcon(SmallIcon("dialog-cancel"));
+ ui.abort->setIcon(icon::get("dialog-cancel"));
numevents = toCreate.count() + toUpdate.count() + toRemove.count();
rcvevents = 0;
/*************************************************************************************************/
-NickEditDlg::NickEditDlg(const QString &old, const QStringList &exist, QWidget *parent)
- : QDialog(parent), oldNick(old), existing(exist)
+NickEditDlg::NickEditDlg(const QString &old, QStringList exist, QWidget *parent)
+ : QDialog(parent), oldNick(old), existing(std::move(exist))
{
ui.setupUi(this);
// define a regexp for valid nicknames
// TODO: add max nicklength according to ISUPPORT
QString letter = "A-Za-z";
- QString special = "\x5b-\x60\x7b-\x7d";
+ QString special = R"([-`{-})";
QRegExp rx(QString("[%1%2][%1%2\\d-]*").arg(letter, special));
ui.nickEdit->setValidator(new QRegExpValidator(rx, ui.nickEdit));
if (old.isEmpty()) {