X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fqtgui%2Fserverlist.cpp;h=a374dafdf3689273106bca3de15459c20e3a26e5;hb=9693b5238b76e6348413d68fa8c6ffc8c64fc12f;hp=ab12919d730e6892343b5b3410a29f6180cfc469;hpb=077d44f36d2f5c730283ef6be839aea7dd073d56;p=quassel.git diff --git a/src/qtgui/serverlist.cpp b/src/qtgui/serverlist.cpp index ab12919d..a374dafd 100644 --- a/src/qtgui/serverlist.cpp +++ b/src/qtgui/serverlist.cpp @@ -20,7 +20,8 @@ #include "serverlist.h" #include "identities.h" -#include "guiproxy.h" +#include "client.h" +#include "clientproxy.h" /* NOTE: This dialog holds not only the server list, but also the identities. * This makes perfect sense given the fact that connections are initiated from @@ -36,21 +37,23 @@ ServerListDlg::ServerListDlg(QWidget *parent) : QDialog(parent) { updateNetworkTree(); connect(ui.networkTree, SIGNAL(itemSelectionChanged()), this, SLOT(updateButtons())); + connect(Client::instance(), SIGNAL(sessionDataChanged(const QString &)), this, SLOT(updateNetworkTree())); settings.endGroup(); - // check if we already have a valid identity - if(!Global::data("Identities", VarMap()).toMap().contains("Default")) editIdentities(true); + connect(this, SIGNAL(requestConnect(QStringList)), ClientProxy::instance(), SLOT(gsRequestConnect(QStringList))); // Autoconnect + /* Should not be the client's task... :-P QStringList list; - VarMap networks = Global::data("Networks").toMap(); + VarMap networks = Client::retrieveSessionData("Networks").toMap(); foreach(QString net, networks.keys()) { if(networks[net].toMap()["AutoConnect"].toBool()) { list << net; } } if(!list.isEmpty()) emit requestConnect(list); + */ } ServerListDlg::~ServerListDlg() { @@ -58,7 +61,7 @@ ServerListDlg::~ServerListDlg() { } void ServerListDlg::updateNetworkTree() { - VarMap networks = Global::data("Networks").toMap(); + VarMap networks = Client::retrieveSessionData("Networks").toMap(); //QStringList headers; //headers << "Network" << "Autoconnect"; ui.networkTree->clear(); @@ -92,7 +95,7 @@ void ServerListDlg::updateNetworkTree() { //item->setCheckState(1, Qt::Unchecked); } ui.networkTree->sortItems(0, Qt::AscendingOrder); - + updateButtons(); } void ServerListDlg::updateButtons() { @@ -110,23 +113,23 @@ bool ServerListDlg::showOnStartup() { void ServerListDlg::on_addButton_clicked() { NetworkEditDlg dlg(this, VarMap()); if(dlg.exec() == QDialog::Accepted) { - VarMap networks = Global::data("Networks").toMap(); + VarMap networks = Client::retrieveSessionData("Networks").toMap(); VarMap net = dlg.getNetwork(); networks[net["Name"].toString()] = net; - Global::putData("Networks", networks); + Client::storeSessionData("Networks", networks); updateNetworkTree(); } } void ServerListDlg::on_editButton_clicked() { QString curnet = ui.networkTree->currentItem()->text(0); - VarMap networks = Global::data("Networks").toMap(); + VarMap networks = Client::retrieveSessionData("Networks").toMap(); NetworkEditDlg dlg(this, networks[curnet].toMap()); if(dlg.exec() == QDialog::Accepted) { VarMap net = dlg.getNetwork(); networks.remove(curnet); networks[net["Name"].toString()] = net; - Global::putData("Networks", networks); + Client::storeSessionData("Networks", networks); updateNetworkTree(); } } @@ -134,12 +137,12 @@ void ServerListDlg::on_editButton_clicked() { void ServerListDlg::on_deleteButton_clicked() { if(QMessageBox::warning(this, tr("Remove Network?"), tr("Are you sure you want to delete the selected network(s)?"), QMessageBox::Yes | QMessageBox::No) == QMessageBox::Yes) { - VarMap networks = Global::data("Networks").toMap(); + VarMap networks = Client::retrieveSessionData("Networks").toMap(); QList sel = ui.networkTree->selectedItems(); foreach(QTreeWidgetItem *item, sel) { networks.remove(item->text(0)); } - Global::putData("Networks", networks); + Client::storeSessionData("Networks", networks); updateNetworkTree(); } } @@ -183,14 +186,14 @@ NetworkEditDlg::NetworkEditDlg(QWidget *parent, VarMap _network) : QDialog(paren connect(ui.serverList, SIGNAL(itemSelectionChanged()), this, SLOT(updateServerButtons())); - VarMap identities = Global::data("Identities").toMap(); + VarMap identities = Client::retrieveSessionData("Identities").toMap(); ui.identityList->addItem(tr("Default Identity")); foreach(QString id, identities.keys()) { if(id != "Default") ui.identityList->addItem(id); } QStringList groups; groups << ""; - VarMap nets = Global::data("Networks").toMap(); + VarMap nets = Client::retrieveSessionData("Networks").toMap(); foreach(QString net, nets.keys()) { QString gr = nets[net].toMap()["Group"].toString(); if(!groups.contains(gr) && !gr.isEmpty()) { @@ -273,7 +276,7 @@ void NetworkEditDlg::accept() { QString NetworkEditDlg::checkValidity() { QString r; - VarMap nets = Global::data("Networks").toMap(); + VarMap nets = Client::retrieveSessionData("Networks").toMap(); if(ui.networkName->text() != oldName && nets.keys().contains(ui.networkName->text())) { r += tr(" Network name already exists."); } @@ -338,7 +341,7 @@ void NetworkEditDlg::on_editIdentities_clicked() { else id = "Default"; IdentitiesDlg dlg(this, id); if(dlg.exec() == QDialog::Accepted) { - VarMap identities = Global::data("Identities").toMap(); + VarMap identities = Client::retrieveSessionData("Identities").toMap(); ui.identityList->clear(); ui.identityList->addItem(tr("Default Identity")); foreach(QString i, identities.keys()) { @@ -355,7 +358,7 @@ void NetworkEditDlg::on_editIdentities_clicked() { /***************************************************************************/ -ServerEditDlg::ServerEditDlg(QWidget *parent, VarMap server) { +ServerEditDlg::ServerEditDlg(QWidget *parent, VarMap server) : QDialog(parent) { ui.setupUi(this); if(!server.isEmpty()) {