/***************************************************************************
- * Copyright (C) 2005-2016 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 *
#include "client.h"
#include "signalproxy.h"
+#include "bufferwidget.h"
+#include "coresessionwidget.h"
CoreInfoDlg::CoreInfoDlg(QWidget *parent)
: QDialog(parent),
ui.labelCoreVersionDate->setText(_coreInfo["quasselBuildDate"].toString()); // "BuildDate" for compatibility
ui.labelClientCount->setNum(_coreInfo["sessionConnectedClients"].toInt());
- /*
- qWarning() << _coreInfo["sessionConnectedClientData"];
-
- int lastPeerId = -1;
- QMap<QString, QVariant> lastPeerData;
+ auto coreSessionSupported = false;
for (const auto &peerData : _coreInfo["sessionConnectedClientData"].toList()) {
- lastPeerData = peerData.toMap();
- lastPeerId = lastPeerData["id"].toInt();
- }
+ coreSessionSupported = true;
- if (lastPeerId != -1) {
- qWarning() << "Kicking client " << lastPeerId;
- Client::kickClient(lastPeerId);
+ 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);
+ 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);
+}