X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fqtui%2Fcoreinfodlg.cpp;h=82816a050deb088a8ec2cc98b5a9799eaa1d9ca0;hb=b8e812857ca64834078e1f620bf98fffa48b7768;hp=0ab8a814925c43b4d370ca25451be4e5edd9ce5b;hpb=04315f46a16fc3627218377071e008b6b9744992;p=quassel.git diff --git a/src/qtui/coreinfodlg.cpp b/src/qtui/coreinfodlg.cpp index 0ab8a814..82816a05 100644 --- a/src/qtui/coreinfodlg.cpp +++ b/src/qtui/coreinfodlg.cpp @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2005-2013 by the Quassel Project * + * Copyright (C) 2005-2016 by the Quassel Project * * devel@quassel-irc.org * * * * This program is free software; you can redistribute it and/or modify * @@ -24,6 +24,8 @@ #include "client.h" #include "signalproxy.h" +#include "bufferwidget.h" +#include "coresessionwidget.h" CoreInfoDlg::CoreInfoDlg(QWidget *parent) : QDialog(parent), @@ -38,8 +40,23 @@ CoreInfoDlg::CoreInfoDlg(QWidget *parent) void CoreInfoDlg::coreInfoAvailable() { ui.labelCoreVersion->setText(_coreInfo["quasselVersion"].toString()); - ui.labelCoreBuildDate->setText(_coreInfo["quasselBuildDate"].toString()); + ui.labelCoreVersionDate->setText(_coreInfo["quasselBuildDate"].toString()); // "BuildDate" for compatibility ui.labelClientCount->setNum(_coreInfo["sessionConnectedClients"].toInt()); + + auto coreSessionSupported = false; + for (const auto &peerData : _coreInfo["sessionConnectedClientData"].toList()) { + coreSessionSupported = true; + + auto coreSessionWidget = new CoreSessionWidget(ui.coreSessionScrollContainer); + coreSessionWidget->setData(peerData.toMap()); + ui.coreSessionContainer->addWidget(coreSessionWidget); + connect(coreSessionWidget, SIGNAL(disconnectClicked(int)), this, SLOT(disconnectClicked(int))); + } + + ui.coreSessionScrollArea->setVisible(coreSessionSupported); + + ui.coreSessionContainer->addStretch(1); + updateUptime(); startTimer(1000); } @@ -58,3 +75,7 @@ void CoreInfoDlg::updateUptime() + tr(" %1:%2:%3 (since %4)").arg(uphours, 2, 10, QChar('0')).arg(upmins, 2, 10, QChar('0')).arg(uptime, 2, 10, QChar('0')).arg(startTime.toLocalTime().toString(Qt::TextDate)); ui.labelUptime->setText(uptimeText); } +void CoreInfoDlg::disconnectClicked(int peerId) +{ + Client::kickClient(peerId); +}