auto coreSessionWidget = new CoreSessionWidget(ui.coreSessionScrollContainer);
coreSessionWidget->setData(peerData.toMap());
ui.coreSessionContainer->addWidget(coreSessionWidget);
+ connect(coreSessionWidget, SIGNAL(disconnectClicked(int)), this, SLOT(disconnectClicked(int)));
}
ui.coreSessionContainer->addStretch(1);
+ 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);
+}
#include "coresessionwidget.h"
-#include <QLayout>
-#include <QVariant>
-#include <QtCore/QMap>
-#include <QtWidgets/QLabel>
-#include <QtWidgets/QPushButton>
#include <QtCore/QDateTime>
+#include <client.h>
CoreSessionWidget::CoreSessionWidget(QWidget *parent)
ui.setupUi(this);
layout()->setContentsMargins(0, 0, 0, 0);
layout()->setSpacing(0);
+ connect(ui.disconnectButton, SIGNAL(released()), this, SLOT(disconnectClicked()));
}
void CoreSessionWidget::setData(QMap<QString, QVariant> map)
{
QLabel *iconSecure = ui.iconSecure;
- QPushButton *disconnectButton = ui.disconnectButton;
ui.labelRemoteAddress->setText(map["remoteAddress"].toString());
ui.labelLocation->setText(map["location"].toString());
ui.labelLocation->hide();
ui.labelLocationTitle->hide();
}
+
+ bool success = false;
+ _peerId = map["id"].toInt(&success);
+ if (!success) _peerId = -1;
+}
+
+void CoreSessionWidget::disconnectClicked()
+{
+ emit disconnectClicked(_peerId);
}
void setData(QMap<QString, QVariant>);
+signals:
+ void disconnectClicked(int);
+
+private slots:
+ void disconnectClicked();
+
private:
Ui::CoreSessionWidget ui;
+ int _peerId;
};
#endif //CORESESSIONWIDGET_H