mirror of
https://github.com/RetroShare/RetroShare.git
synced 2024-10-01 02:35:48 -04:00
chatlobby id context menu - fix display conditions
This commit is contained in:
parent
36dbdee409
commit
10ba3a6364
@ -233,40 +233,33 @@ void ChatLobbyDialog::participantsTreeWidgetCustomPopupMenu(QPoint)
|
|||||||
contextMnu.addAction(banAct);
|
contextMnu.addAction(banAct);
|
||||||
contextMnu.addAction(showinpeopleAct);
|
contextMnu.addAction(showinpeopleAct);
|
||||||
|
|
||||||
|
distantChatAct->setEnabled(false);
|
||||||
|
sendMessageAct->setEnabled(false);
|
||||||
muteAct->setCheckable(true);
|
muteAct->setCheckable(true);
|
||||||
muteAct->setEnabled(false);
|
muteAct->setEnabled(false);
|
||||||
muteAct->setChecked(false);
|
muteAct->setChecked(false);
|
||||||
votePositiveAct->setEnabled(false);
|
votePositiveAct->setEnabled(false);
|
||||||
voteNeutralAct->setEnabled(false);
|
voteNeutralAct->setEnabled(false);
|
||||||
banAct->setEnabled(false);
|
banAct->setEnabled(false);
|
||||||
showinpeopleAct->setEnabled(true);
|
if(selectedItems.count()==1)
|
||||||
|
|
||||||
if (selectedItems.size())
|
|
||||||
{
|
{
|
||||||
|
sendMessageAct->setEnabled(true);
|
||||||
|
showinpeopleAct->setEnabled(true);
|
||||||
RsGxsId nickName;
|
RsGxsId nickName;
|
||||||
rsMsgs->getIdentityForChatLobby(lobbyId, nickName);
|
rsMsgs->getIdentityForChatLobby(lobbyId, nickName);
|
||||||
|
if(RsGxsId(selectedItems.at(0)->text(COLUMN_ID).toStdString())!=nickName)
|
||||||
if(selectedItems.count()>1 || (RsGxsId(selectedItems.at(0)->text(COLUMN_ID).toStdString())!=nickName))
|
|
||||||
{
|
{
|
||||||
muteAct->setEnabled(true);
|
distantChatAct->setEnabled(true);
|
||||||
votePositiveAct->setEnabled(true);
|
|
||||||
voteNeutralAct->setEnabled(true);
|
|
||||||
banAct->setEnabled(true);
|
|
||||||
|
|
||||||
QList<QTreeWidgetItem*>::iterator item;
|
|
||||||
for (item = selectedItems.begin(); item != selectedItems.end(); ++item) {
|
|
||||||
|
|
||||||
RsGxsId gxsid ;
|
RsGxsId gxsid ;
|
||||||
if ( dynamic_cast<GxsIdRSTreeWidgetItem*>(*item)->getId(gxsid) && isParticipantMuted(gxsid))
|
dynamic_cast<GxsIdRSTreeWidgetItem*>(*selectedItems.begin())->getId(gxsid);
|
||||||
{
|
votePositiveAct->setEnabled(rsIdentity->overallReputationLevel(gxsid) != RsReputations::REPUTATION_LOCALLY_POSITIVE);
|
||||||
|
voteNeutralAct->setEnabled((rsIdentity->overallReputationLevel(gxsid) == RsReputations::REPUTATION_LOCALLY_POSITIVE) || (rsIdentity->overallReputationLevel(gxsid) == RsReputations::REPUTATION_LOCALLY_NEGATIVE) );
|
||||||
|
banAct->setEnabled(rsIdentity->overallReputationLevel(gxsid) != RsReputations::REPUTATION_LOCALLY_NEGATIVE);
|
||||||
|
muteAct->setEnabled(true);
|
||||||
|
if(isParticipantMuted(gxsid))
|
||||||
muteAct->setChecked(true);
|
muteAct->setChecked(true);
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
distantChatAct->setEnabled(selectedItems.count()==1 && RsGxsId(selectedItems.front()->text(COLUMN_ID).toStdString())!=nickName) ;
|
|
||||||
}
|
|
||||||
|
|
||||||
contextMnu.exec(QCursor::pos());
|
contextMnu.exec(QCursor::pos());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user