void GlobalRouterStatistics::personDetails() { QTreeWidgetItem *item = treeWidget->currentItem(); std::string id = item->text(COL_DESTINATION).toStdString(); if (id.empty()) { return; } IdDetailsDialog *dialog = new IdDetailsDialog(RsGxsGroupId(id)); dialog->show(); }
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::editIdentity() { QTreeWidgetItem *item = ui->idTreeWidget->currentItem(); if (!item) { #ifdef ID_DEBUG std::cerr << "IdDialog::editIdentity() Invalid item"; std::cerr << std::endl; #endif return; } RsGxsGroupId keyId = RsGxsGroupId(item->text(RSID_COL_KEYID).toStdString()); if (keyId.isNull()) { return; } IdEditDialog dlg(this); dlg.setupExistingId(keyId); dlg.exec(); }
void CreateGxsForumMsg::loadForumInfo(const uint32_t &token) { //std::cerr << "CreateGxsForumMsg::loadForumInfo()"; //std::cerr << std::endl; std::list<RsGroupMetaData> groupInfo; rsGxsForums->getGroupSummary(token, groupInfo); if (groupInfo.size() == 1) { RsGroupMetaData fi = groupInfo.front(); mForumMeta = fi; mForumMetaLoaded = true; if(!fi.mCircleId.isNull()) { //std::cerr << "Circle ID is not null: " << fi.mCircleId << ": loading circle info to add constraint to the GXS ID chooser." << std::endl; RsTokReqOptions opts; opts.mReqType = GXS_REQUEST_TYPE_GROUP_DATA; std::list<RsGxsGroupId> groupIds; groupIds.push_back(RsGxsGroupId(fi.mCircleId)); uint32_t _token; mCirclesQueue->requestGroupInfo(_token, RS_TOKREQ_ANSTYPE_DATA, opts, groupIds, CREATEGXSFORUMMSG_CIRCLENFO); } loadFormInformation(); } else { std::cerr << "CreateGxsForumMsg::loadForumInfo() ERROR INVALID Number of Forums"; std::cerr << std::endl; mStateHelper->setActive(CREATEGXSFORUMMSG_FORUMINFO, false); mStateHelper->setLoading(CREATEGXSFORUMMSG_FORUMINFO, false); } }
void IdDialog::removeIdentity() { QTreeWidgetItem *item = ui->idTreeWidget->currentItem(); if (!item) { #ifdef ID_DEBUG std::cerr << "IdDialog::editIdentity() Invalid item"; std::cerr << std::endl; #endif return; } if ((QMessageBox::question(this, tr("Really delete?"), tr("Do you really want to delete this identity?"), QMessageBox::Yes|QMessageBox::No, QMessageBox::No))== QMessageBox::Yes) { std::string keyId = item->text(RSID_COL_KEYID).toStdString(); uint32_t dummyToken = 0; RsGxsIdGroup group; group.mMeta.mGroupId=RsGxsGroupId(keyId); rsIdentity->deleteIdentity(dummyToken, group); } }
void IdDialog::insertIdList(uint32_t token) { mStateHelper->setLoading(IDDIALOG_IDLIST, false); int accept = ui->filterComboBox->itemData(ui->filterComboBox->currentIndex()).toInt(); RsGxsIdGroup data; std::vector<RsGxsIdGroup> datavector; std::vector<RsGxsIdGroup>::iterator vit; if (!rsIdentity->getGroupData(token, datavector)) { #ifdef ID_DEBUG std::cerr << "IdDialog::insertIdList() Error getting GroupData"; std::cerr << std::endl; #endif mStateHelper->setActive(IDDIALOG_IDLIST, false); mStateHelper->clear(IDDIALOG_IDLIST); return; } mStateHelper->setActive(IDDIALOG_IDLIST, true); RsPgpId ownPgpId = rsPeers->getGPGOwnId(); /* Update existing and remove not existing items */ QTreeWidgetItemIterator itemIterator(ui->idTreeWidget); QTreeWidgetItem *item = NULL; while ((item = *itemIterator) != NULL) { ++itemIterator; for (vit = datavector.begin(); vit != datavector.end(); ++vit) { if (vit->mMeta.mGroupId == RsGxsGroupId(item->text(RSID_COL_KEYID).toStdString())) { break; } } if (vit == datavector.end()) { delete(item); } else { if (!fillIdListItem(*vit, item, ownPgpId, accept)) { delete(item); } datavector.erase(vit); } } /* Insert new items */ for (vit = datavector.begin(); vit != datavector.end(); ++vit) { data = (*vit); item = NULL; if (fillIdListItem(*vit, item, ownPgpId, accept)) { ui->idTreeWidget->addTopLevelItem(item); } } filterIds(); updateSelection(); }
void CreateCircleDialog::updateCircleGUI() { #ifdef DEBUG_CREATE_CIRCLE_DIALOG std::cerr << "CreateCircleDialog::updateCircleGUI()"; std::cerr << std::endl; #endif ui.circleName->setText(QString::fromUtf8(mCircleGroup.mMeta.mGroupName.c_str())); bool isExternal = true; #ifdef DEBUG_CREATE_CIRCLE_DIALOG std::cerr << "CreateCircleDialog::updateCircleGUI() : CIRCLETYPE: " << mCircleGroup.mMeta.mCircleType; std::cerr << std::endl; #endif ui.radioButton_Public->setChecked(false); ui.radioButton_Self->setChecked(false); ui.radioButton_Restricted->setChecked(false); switch(mCircleGroup.mMeta.mCircleType) { case GXS_CIRCLE_TYPE_LOCAL: #ifdef DEBUG_CREATE_CIRCLE_DIALOG std::cerr << "CreateCircleDialog::updateCircleGUI() : LOCAL CIRCLETYPE"; std::cerr << std::endl; #endif isExternal = false; break; case GXS_CIRCLE_TYPE_PUBLIC: #ifdef DEBUG_CREATE_CIRCLE_DIALOG std::cerr << "CreateCircleDialog::updateCircleGUI() : PUBLIC CIRCLETYPE"; std::cerr << std::endl; #endif ui.radioButton_Public->setChecked(true); break; case GXS_CIRCLE_TYPE_EXT_SELF: #ifdef DEBUG_CREATE_CIRCLE_DIALOG std::cerr << "CreateCircleDialog::updateCircleGUI() : EXT_SELF CIRCLE (fallthrough)"<< std::endl; #endif case GXS_CIRCLE_TYPE_EXTERNAL: #ifdef DEBUG_CREATE_CIRCLE_DIALOG std::cerr << "CreateCircleDialog::updateCircleGUI() : EXTERNAL CIRCLETYPE"<< std::endl; #endif if (RsGxsGroupId(mCircleGroup.mMeta.mCircleId) == mCircleGroup.mMeta.mGroupId) ui.radioButton_Self->setChecked(true); else ui.radioButton_Restricted->setChecked(true); ui.circleComboBox->loadCircles(GXS_CIRCLE_CHOOSER_EXTERNAL, mCircleGroup.mMeta.mCircleId); break; default: std::cerr << "CreateCircleDialog::updateCircleGUI() INVALID mCircleType"; std::cerr << std::endl; } /* setup personal or external circle */ if (isExternal) setupForExternalCircle(); else setupForPersonalCircle(); // set preferredId. std::cerr << "LoadCircle: setting author id to be " << mCircleGroup.mMeta.mAuthorId << std::endl; //ui.idChooser->loadIds(0,mCircleGroup.mMeta.mAuthorId); if(mReadOnly) { ui.circleAdminLabel->setId(mCircleGroup.mMeta.mAuthorId) ; ui.idChooser->setVisible(false) ; } else { //std::set<RsGxsId> ids ; //ids.insert(mCircleGroup.mMeta.mAuthorId) ; ui.idChooser->setDefaultId(mCircleGroup.mMeta.mAuthorId) ; ui.idChooser->setChosenId(mCircleGroup.mMeta.mAuthorId) ; //ui.idChooser->setIdConstraintSet(ids) ; ui.idChooser->setFlags(IDCHOOSER_NO_CREATE) ; ui.circleAdminLabel->setVisible(false) ; } }