X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fqtui%2Fsettingspages%2Fnetworkssettingspage.cpp;h=a886d92ef4a9353ff640611a40a57e3acda2f0c5;hp=050ffc55539666f6608d59e6ddb4f207fc9cc56d;hb=900cce213a6ed000b7131a05a0dec7d04b35b023;hpb=004c48c0d8c943f366b94651e5a75f5e568f8a57 diff --git a/src/qtui/settingspages/networkssettingspage.cpp b/src/qtui/settingspages/networkssettingspage.cpp index 050ffc55..a886d92e 100644 --- a/src/qtui/settingspages/networkssettingspage.cpp +++ b/src/qtui/settingspages/networkssettingspage.cpp @@ -32,6 +32,7 @@ #include "presetnetworks.h" #include "settingspagedlg.h" #include "util.h" +#include "widgethelpers.h" // IRCv3 capabilities #include "irccap.h" @@ -63,8 +64,6 @@ NetworksSettingsPage::NetworksSettingsPage(QWidget *parent) ui.downServer->setIcon(icon::get("go-down")); ui.editIdentities->setIcon(icon::get("configure")); - _ignoreWidgetChanges = false; - connectedIcon = icon::get("network-connect"); connectingIcon = icon::get("network-wired"); // FIXME network-connecting disconnectedIcon = icon::get("network-disconnect"); @@ -85,38 +84,37 @@ NetworksSettingsPage::NetworksSettingsPage(QWidget *parent) currentId = 0; setEnabled(Client::isConnected()); // need a core connection! setWidgetStates(); + + connectToWidgetsChangedSignals({ + ui.identityList, + ui.performEdit, + ui.sasl, + ui.saslAccount, + ui.saslPassword, + ui.autoIdentify, + ui.autoIdentifyService, + ui.autoIdentifyPassword, + ui.useCustomEncodings, + ui.sendEncoding, + ui.recvEncoding, + ui.serverEncoding, + ui.autoReconnect, + ui.reconnectInterval, + ui.reconnectRetries, + ui.unlimitedRetries, + ui.rejoinOnReconnect, + ui.useCustomMessageRate, + ui.messageRateBurstSize, + ui.messageRateDelay, + ui.unlimitedMessageRate + }, this, &NetworksSettingsPage::widgetHasChanged); + connect(Client::instance(), &Client::coreConnectionStateChanged, this, &NetworksSettingsPage::coreConnectionStateChanged); connect(Client::instance(), &Client::networkCreated, this, &NetworksSettingsPage::clientNetworkAdded); connect(Client::instance(), &Client::networkRemoved, this, &NetworksSettingsPage::clientNetworkRemoved); connect(Client::instance(), &Client::identityCreated, this, &NetworksSettingsPage::clientIdentityAdded); connect(Client::instance(), &Client::identityRemoved, this, &NetworksSettingsPage::clientIdentityRemoved); - connect(ui.identityList, selectOverload(&QComboBox::currentIndexChanged), this, &NetworksSettingsPage::widgetHasChanged); - //connect(ui.randomServer, &QAbstractButton::clicked, this, &NetworksSettingsPage::widgetHasChanged); - connect(ui.performEdit, &QTextEdit::textChanged, this, &NetworksSettingsPage::widgetHasChanged); - connect(ui.sasl, &QGroupBox::clicked, this, &NetworksSettingsPage::widgetHasChanged); - connect(ui.saslAccount, &QLineEdit::textEdited, this, &NetworksSettingsPage::widgetHasChanged); - connect(ui.saslPassword, &QLineEdit::textEdited, this, &NetworksSettingsPage::widgetHasChanged); - connect(ui.autoIdentify, &QGroupBox::clicked, this, &NetworksSettingsPage::widgetHasChanged); - connect(ui.autoIdentifyService, &QLineEdit::textEdited, this, &NetworksSettingsPage::widgetHasChanged); - connect(ui.autoIdentifyPassword, &QLineEdit::textEdited, this, &NetworksSettingsPage::widgetHasChanged); - connect(ui.useCustomEncodings, &QGroupBox::clicked, this, &NetworksSettingsPage::widgetHasChanged); - connect(ui.sendEncoding, selectOverload(&QComboBox::currentIndexChanged), this, &NetworksSettingsPage::widgetHasChanged); - connect(ui.recvEncoding, selectOverload(&QComboBox::currentIndexChanged), this, &NetworksSettingsPage::widgetHasChanged); - connect(ui.serverEncoding, selectOverload(&QComboBox::currentIndexChanged), this, &NetworksSettingsPage::widgetHasChanged); - connect(ui.autoReconnect, &QGroupBox::clicked, this, &NetworksSettingsPage::widgetHasChanged); - connect(ui.reconnectInterval, selectOverload(&QSpinBox::valueChanged), this, &NetworksSettingsPage::widgetHasChanged); - connect(ui.reconnectRetries, selectOverload(&QSpinBox::valueChanged), this, &NetworksSettingsPage::widgetHasChanged); - connect(ui.unlimitedRetries, &QAbstractButton::clicked, this, &NetworksSettingsPage::widgetHasChanged); - connect(ui.rejoinOnReconnect, &QAbstractButton::clicked, this, &NetworksSettingsPage::widgetHasChanged); - - // Core features can change during a reconnect. Always connect these here, delaying testing for - // the core feature flag in load(). - connect(ui.useCustomMessageRate, &QGroupBox::clicked, this, &NetworksSettingsPage::widgetHasChanged); - connect(ui.messageRateBurstSize, selectOverload(&QSpinBox::valueChanged), this, &NetworksSettingsPage::widgetHasChanged); - connect(ui.messageRateDelay, selectOverload(&QDoubleSpinBox::valueChanged), this, &NetworksSettingsPage::widgetHasChanged); - connect(ui.unlimitedMessageRate, &QAbstractButton::clicked, this, &NetworksSettingsPage::widgetHasChanged); - foreach(IdentityId id, Client::identityIds()) { clientIdentityAdded(id); }