X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fqtui%2Fsettingspages%2Fnetworkssettingspage.cpp;h=7c06ed48445e776a1918521ae616a372997fbd14;hp=8cd8715df29f82354e331ab54ba50fa4ed18c48e;hb=6026772458c5d3d405cf813395ca05090b967893;hpb=a9a4ddf68fd33be5e2f1bb85531577646b1ea86a diff --git a/src/qtui/settingspages/networkssettingspage.cpp b/src/qtui/settingspages/networkssettingspage.cpp index 8cd8715d..7c06ed48 100644 --- a/src/qtui/settingspages/networkssettingspage.cpp +++ b/src/qtui/settingspages/networkssettingspage.cpp @@ -42,9 +42,11 @@ NetworksSettingsPage::NetworksSettingsPage(QWidget *parent) : SettingsPage(tr("G QByteArray codec = QTextCodec::codecForMib(mib)->name(); ui.sendEncoding->addItem(codec); ui.recvEncoding->addItem(codec); + ui.serverEncoding->addItem(codec); } ui.sendEncoding->model()->sort(0); ui.recvEncoding->model()->sort(0); + ui.serverEncoding->model()->sort(0); currentId = 0; setEnabled(Client::isConnected()); // need a core connection! setWidgetStates(); @@ -63,6 +65,7 @@ NetworksSettingsPage::NetworksSettingsPage(QWidget *parent) : SettingsPage(tr("G connect(ui.useDefaultEncodings, SIGNAL(clicked(bool)), this, SLOT(widgetHasChanged())); connect(ui.sendEncoding, SIGNAL(currentIndexChanged(int)), this, SLOT(widgetHasChanged())); connect(ui.recvEncoding, SIGNAL(currentIndexChanged(int)), this, SLOT(widgetHasChanged())); + connect(ui.serverEncoding, SIGNAL(currentIndexChanged(int)), this, SLOT(widgetHasChanged())); connect(ui.autoReconnect, SIGNAL(clicked(bool)), this, SLOT(widgetHasChanged())); connect(ui.reconnectInterval, SIGNAL(valueChanged(int)), this, SLOT(widgetHasChanged())); connect(ui.reconnectRetries, SIGNAL(valueChanged(int)), this, SLOT(widgetHasChanged())); @@ -376,6 +379,7 @@ void NetworksSettingsPage::networkConnectionStateChanged(Network::ConnectionStat ui.connectNow->setEnabled(state == Network::Initialized || state == Network::Disconnected); } setItemState(net->networkId()); + setWidgetStates(); } void NetworksSettingsPage::networkConnectionError(const QString &) { @@ -425,10 +429,12 @@ void NetworksSettingsPage::displayNetwork(NetworkId id) { if(info.codecForEncoding.isEmpty()) { ui.sendEncoding->setCurrentIndex(ui.sendEncoding->findText(Network::defaultCodecForEncoding())); ui.recvEncoding->setCurrentIndex(ui.recvEncoding->findText(Network::defaultCodecForDecoding())); + ui.serverEncoding->setCurrentIndex(ui.serverEncoding->findText(Network::defaultCodecForServer())); ui.useDefaultEncodings->setChecked(true); } else { ui.sendEncoding->setCurrentIndex(ui.sendEncoding->findText(info.codecForEncoding)); ui.recvEncoding->setCurrentIndex(ui.recvEncoding->findText(info.codecForDecoding)); + ui.serverEncoding->setCurrentIndex(ui.serverEncoding->findText(info.codecForServer)); ui.useDefaultEncodings->setChecked(false); } ui.autoReconnect->setChecked(info.useAutoReconnect); @@ -459,9 +465,11 @@ void NetworksSettingsPage::saveToNetworkInfo(NetworkInfo &info) { if(ui.useDefaultEncodings->isChecked()) { info.codecForEncoding.clear(); info.codecForDecoding.clear(); + info.codecForServer.clear(); } else { info.codecForEncoding = ui.sendEncoding->currentText().toLatin1(); info.codecForDecoding = ui.recvEncoding->currentText().toLatin1(); + info.codecForServer = ui.serverEncoding->currentText().toLatin1(); } info.useAutoReconnect = ui.autoReconnect->isChecked(); info.autoReconnectInterval = ui.reconnectInterval->value(); @@ -688,6 +696,9 @@ SaveNetworksDlg::SaveNetworksDlg(const QList &toCreate, const QList connect(Client::instance(), SIGNAL(networkCreated(NetworkId)), this, SLOT(clientEvent())); connect(Client::instance(), SIGNAL(networkRemoved(NetworkId)), this, SLOT(clientEvent())); + foreach(NetworkId id, toRemove) { + Client::removeNetwork(id); + } foreach(NetworkInfo info, toCreate) { Client::createNetwork(info); } @@ -702,9 +713,6 @@ SaveNetworksDlg::SaveNetworksDlg(const QList &toCreate, const QList connect(net, SIGNAL(updatedRemotely()), this, SLOT(clientEvent())); Client::updateNetwork(info); } - foreach(NetworkId id, toRemove) { - Client::removeNetwork(id); - } } else { qWarning() << "Sync dialog called without stuff to change!"; accept();