void IdDialog::updateSelection() { QTreeWidgetItem *item = ui->idTreeWidget->currentItem(); RsGxsGroupId id; if (item) { id = RsGxsGroupId(item->text(RSID_COL_KEYID).toStdString()); } if (id != mId) { mId = id; requestIdDetails(); requestRepList(); } }
void IdDialog::updateDisplay(bool complete) { /* Update identity list */ if (complete) { /* Fill complete */ requestIdList(); requestIdDetails(); requestRepList(); return; } std::list<RsGxsGroupId> grpIds; getAllGrpIds(grpIds); if (!getGrpIds().empty()) { requestIdList(); if (!mId.isNull() && std::find(grpIds.begin(), grpIds.end(), mId) != grpIds.end()) { requestIdDetails(); requestRepList(); } } }
void IdDialog::insertIdDetails(uint32_t token) { mStateHelper->setLoading(IDDIALOG_IDDETAILS, false); /* get details from libretroshare */ RsGxsIdGroup data; std::vector<RsGxsIdGroup> datavector; if (!rsIdentity->getGroupData(token, datavector)) { mStateHelper->setActive(IDDIALOG_IDDETAILS, false); mStateHelper->setActive(IDDIALOG_REPLIST, false); mStateHelper->setLoading(IDDIALOG_REPLIST, false); mStateHelper->clear(IDDIALOG_IDDETAILS); mStateHelper->clear(IDDIALOG_REPLIST); ui.lineEdit_KeyId->setText("ERROR GETTING KEY!"); return; } if (datavector.size() != 1) { std::cerr << "IdDialog::insertIdDetails() Invalid datavector size"; mStateHelper->setActive(IDDIALOG_IDDETAILS, false); mStateHelper->setActive(IDDIALOG_REPLIST, false); mStateHelper->setLoading(IDDIALOG_REPLIST, false); mStateHelper->clear(IDDIALOG_IDDETAILS); mStateHelper->clear(IDDIALOG_REPLIST); ui.lineEdit_KeyId->setText("INVALID DV SIZE"); return; } mStateHelper->setActive(IDDIALOG_IDDETAILS, true); data = datavector[0]; /* get GPG Details from rsPeers */ std::string ownPgpId = rsPeers->getGPGOwnId(); ui.lineEdit_Nickname->setText(QString::fromUtf8(data.mMeta.mGroupName.c_str())); ui.lineEdit_KeyId->setText(QString::fromStdString(data.mMeta.mGroupId)); ui.lineEdit_GpgHash->setText(QString::fromStdString(data.mPgpIdHash)); ui.lineEdit_GpgId->setText(QString::fromStdString(data.mPgpId)); if (data.mPgpKnown) { RsPeerDetails details; rsPeers->getGPGDetails(data.mPgpId, details); ui.lineEdit_GpgName->setText(QString::fromUtf8(details.name.c_str())); } else { if (data.mMeta.mGroupFlags & RSGXSID_GROUPFLAG_REALID) { ui.lineEdit_GpgName->setText(tr("Unknown real name")); } else { ui.lineEdit_GpgName->setText(tr("Anonymous Id")); } } bool isOwnId = (data.mPgpKnown && (data.mPgpId == ownPgpId)) || (data.mMeta.mSubscribeFlags & GXS_SERV::GROUP_SUBSCRIBE_ADMIN); if (isOwnId) { ui.radioButton_IdYourself->setChecked(true); } else if (data.mMeta.mGroupFlags & RSGXSID_GROUPFLAG_REALID) { if (data.mPgpKnown) { if (rsPeers->isGPGAccepted(data.mPgpId)) { ui.radioButton_IdFriend->setChecked(true); } else { ui.radioButton_IdFOF->setChecked(true); } } else { ui.radioButton_IdOther->setChecked(true); } } else { ui.radioButton_IdPseudo->setChecked(true); } if (isOwnId) { mStateHelper->setWidgetEnabled(ui.toolButton_Reputation, false); // No Delete Ids yet! mStateHelper->setWidgetEnabled(ui.toolButton_Delete, /*true*/ false); // No Editing Ids yet! mStateHelper->setWidgetEnabled(ui.toolButton_EditId, /*true*/ false); } else { // No Reputation yet! mStateHelper->setWidgetEnabled(ui.toolButton_Reputation, /*true*/ false); mStateHelper->setWidgetEnabled(ui.toolButton_Delete, false); mStateHelper->setWidgetEnabled(ui.toolButton_EditId, false); } /* now fill in the reputation information */ ui.line_RatingOverall->setText("Overall Rating TODO"); ui.line_RatingOwn->setText("Own Rating TODO"); if (data.mPgpKnown) { ui.line_RatingImplicit->setText("+50 Known PGP"); } else if (data.mMeta.mGroupFlags & RSGXSID_GROUPFLAG_REALID) { ui.line_RatingImplicit->setText("+10 UnKnown PGP"); } else { ui.line_RatingImplicit->setText("+5 Anon Id"); } /* request network ratings */ requestRepList(data.mMeta.mGroupId); }