| 10 | #include "ui_clientdialog.h" |
| 11 | |
| 12 | ClientDialog::ClientDialog(RedisCluster *redisClient, QWidget *parent) : |
| 13 | QDialog(parent), |
| 14 | ui(new Ui::ClientDialog) |
| 15 | { |
| 16 | ui->setupUi(this); |
| 17 | setWindowTitle(tr("客户端信息")); |
| 18 | |
| 19 | QRect availableGeometry = QApplication::desktop()->availableGeometry(this); |
| 20 | resize(availableGeometry.width() * 6 / 7, availableGeometry.height() * 5 / 7); |
| 21 | move((availableGeometry.width() - width()) / 2, |
| 22 | (availableGeometry.height() - height()) / 2); |
| 23 | |
| 24 | QStringList header; |
| 25 | header<<"Node"<<"Ip"<<"Port"<<"Passwd"<<"Role"<<"Start Slot"<<"End Slot"<<"Slot Num"; |
| 26 | if(!redisClient) { |
| 27 | QMessageBox::critical(this, tr("提示"), tr("客户端连接为空!")); |
| 28 | return; |
| 29 | } |
| 30 | |
| 31 | QList<ClusterClient> clientInfo = redisClient->getClients(false); |
| 32 | ui->_tableWidget->setColumnCount(8); |
| 33 | ui->_tableWidget->setRowCount(clientInfo.size()); |
| 34 | ui->_tableWidget->setHorizontalHeaderLabels(header); |
| 35 | ui->_tableWidget->setSelectionBehavior(QAbstractItemView::SelectItems); |
| 36 | ui->_tableWidget->setEditTriggers(QAbstractItemView::NoEditTriggers); |
| 37 | ui->_tableWidget->verticalHeader()->setVisible(false); |
| 38 | ui->_tableWidget->horizontalHeader()->setVisible(true); |
| 39 | ui->_tableWidget->horizontalHeader()->setStretchLastSection(true); |
| 40 | ui->_tableWidget->horizontalHeader()->setSectionResizeMode(0, QHeaderView::ResizeToContents); |
| 41 | ui->_tableWidget->setFrameShape(QFrame::NoFrame); |
| 42 | |
| 43 | for(int i = 0; i < clientInfo.size(); ++i) { |
| 44 | ui->_tableWidget->setItem(i,0,new QTableWidgetItem(clientInfo[i]._nodeId.isEmpty() ? "Empty" : clientInfo[i]._nodeId)); |
| 45 | ui->_tableWidget->setItem(i,1,new QTableWidgetItem(clientInfo[i]._host)); |
| 46 | ui->_tableWidget->setItem(i,2,new QTableWidgetItem(QString::number(clientInfo[i]._port))); |
| 47 | ui->_tableWidget->setItem(i,3,new QTableWidgetItem(clientInfo[i]._passwd)); |
| 48 | ui->_tableWidget->setItem(i,4,new QTableWidgetItem(clientInfo[i]._master ? "Master" : "Slave")); |
| 49 | ui->_tableWidget->setItem(i,5,new QTableWidgetItem(QString::number(clientInfo[i]._startSlot))); |
| 50 | ui->_tableWidget->setItem(i,6,new QTableWidgetItem(QString::number(clientInfo[i]._endSlot))); |
| 51 | ui->_tableWidget->setItem(i,7,new QTableWidgetItem(QString::number(clientInfo[i]._slotNum))); |
| 52 | } |
| 53 | } |
| 54 | |
| 55 | ClientDialog::~ClientDialog() |
| 56 | { |
nothing calls this directly
no test coverage detected