MCPcopy Create free account
hub / github.com/cc20110101/RedisView / treeClicked

Method treeClicked

src/RedisView/AppView/MainWidget.cpp:973–1057  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

971}
972
973void MainWidget::treeClicked(const QModelIndex &index) {
974
975 if(!_displayViewTab)
976 return;
977
978 if(_vTaskId.indexOf(THREAD_DEL_KEY_TASK) != -1) {
979 QMessageBox::critical(this, tr("提示"), tr("后台删键任务未结束,请稍后进行键刷新操作!"));
980 return;
981 }
982
983 if(_vTaskId.indexOf(THREAD_SCAN_KEY_TASK) != -1) {
984 QMessageBox::critical(this, tr("提示"), tr("后台扫描键任务未结束,请稍后进行键刷新操作!"));
985 return;
986 }
987
988 int dbIndex = 0;
989 _subTreeItem = _itemKeyModel->itemFromIndex(index);
990 QString key = _subTreeItem->text();
991 if(_treeItemKey == _subTreeItem)
992 return;
993 if(!_isClusterMode) {
994 dbIndex = _vTreeItemKey.indexOf(_subTreeItem);
995 if(dbIndex != -1)
996 return;
997 dbIndex = _vTreeItemKey.indexOf(_subTreeItem->parent());
998 if(dbIndex == -1)
999 return;
1000 }
1001
1002 QByteArray byteArray;
1003 _qLongLong = 0;
1004
1005 _dataView->clearData();
1006 _dataView->setKey(key);
1007 _dataView->setDbIndex(dbIndex);
1008
1009 if(dbIndex >= 0) {
1010 if(!_redisClient->select(dbIndex)) {
1011 QMessageBox::critical(this, tr("错误"), _redisClient->getErrorInfo());
1012 return;
1013 }
1014 }
1015
1016 if(!_redisClient->type(key, byteArray)) {
1017 QMessageBox::critical(this, tr("错误"), tr("获取键类型失败!"));
1018 return;
1019 }
1020
1021 int keyType = PubLib::getKeyType(byteArray);
1022 _dataView->setType(keyType);
1023
1024 if(keyType == KEY_STRING) {
1025 if(!_redisClient->get(key, byteArray)) {
1026 QMessageBox::critical(this, tr("错误"), tr("获取键值失败!"));
1027 return;
1028 }
1029 _dataView->setValue(QTextCodec::codecForLocale()->toUnicode(byteArray));
1030 }

Callers

nothing calls this directly

Calls 15

itemFromIndexMethod · 0.80
clearDataMethod · 0.80
setDbIndexMethod · 0.80
setValueMethod · 0.80
setTimeMsMethod · 0.80
setRefcountMethod · 0.80
setIdleTimeSMethod · 0.80
setIndexMethod · 0.80
getClientIndexMethod · 0.80
textMethod · 0.45
parentMethod · 0.45
setKeyMethod · 0.45

Tested by

no test coverage detected