diff --git a/src/gui/qt/gametable/gametableimpl.cpp b/src/gui/qt/gametable/gametableimpl.cpp index 0cacb8fd..b4f3195c 100755 --- a/src/gui/qt/gametable/gametableimpl.cpp +++ b/src/gui/qt/gametable/gametableimpl.cpp @@ -862,7 +862,7 @@ void gameTableImpl::setPlayerAvatar(int myID, QString myAvatar) { boost::shared_ptr tmpPlayer = myStartWindow->getSession()->getCurrentGame()->getPlayerByUniqueId(myID); if (tmpPlayer.get()) { - QFile myAvatarFile(myAvatar); + QFile myAvatarFile(myAvatar); if(myAvatarFile.exists()) { playerAvatarLabelArray[tmpPlayer->getMyID()]->setPixmap(myAvatar); tmpPlayer->setMyAvatar(myAvatar.toUtf8().constData()); @@ -3053,6 +3053,7 @@ void gameTableImpl::leaveCurrentNetworkGame() { if (myStartWindow->getSession()->isNetworkClientRunning()) { myMessageDialogImpl dialog(myConfig, this); + dialog.setParent(this); if(!dialog.checkIfMesssageWillBeDisplayed(1)) { diff --git a/src/gui/qt/gametable/myavatarlabel.cpp b/src/gui/qt/gametable/myavatarlabel.cpp index 6950d1dc..c0fea6b5 100644 --- a/src/gui/qt/gametable/myavatarlabel.cpp +++ b/src/gui/qt/gametable/myavatarlabel.cpp @@ -29,9 +29,13 @@ MyAvatarLabel::MyAvatarLabel(QGroupBox* parent) myContextMenu->addAction(action_VoteForKick); action_IgnorePlayer = new QAction(QIcon(":/gfx/im-ban-user.png"), tr("Ignore Player"), myContextMenu); myContextMenu->addAction(action_IgnorePlayer); + action_ReportBadAvatar = new QAction(QIcon(":/gfx/emblem-important.png"), tr("Report bad Avatar"), myContextMenu); + myContextMenu->addAction(action_ReportBadAvatar); + connect( action_VoteForKick, SIGNAL ( triggered() ), this, SLOT ( sendTriggerVoteOnKickSignal() ) ); connect( action_IgnorePlayer, SIGNAL ( triggered() ), this, SLOT ( putPlayerOnIgnoreList() ) ); + connect( action_ReportBadAvatar, SIGNAL ( triggered() ), this, SLOT ( reportBadAvatar() ) ); } @@ -119,13 +123,13 @@ void MyAvatarLabel::setPixmapAndCountry ( const QPixmap &pix,QString countryStri int showCountryFlags = myW->getMyConfig()->readConfigInt("ShowCountryFlagInAvatar"); if(showCountryFlags && !countryString.isEmpty()) { - if(seatPlace<=2||seatPlace>=8) + if(seatPlace<=2||seatPlace>=8) { - painter.drawPixmap(resultAvatar.width()-(QPixmap(countryString)).width(),resultAvatar.height()-(QPixmap(countryString)).height(),QPixmap(countryString)); + painter.drawPixmap(resultAvatar.width()-(QPixmap(countryString)).width(),resultAvatar.height()-(QPixmap(countryString)).height(),QPixmap(countryString)); } else { - painter.drawPixmap(resultAvatar.width()-(QPixmap(countryString)).width(),0,QPixmap(countryString)); + painter.drawPixmap(resultAvatar.width()-(QPixmap(countryString)).width(),0,QPixmap(countryString)); } } painter.end(); @@ -183,3 +187,29 @@ void MyAvatarLabel::putPlayerOnIgnoreList() { } } } + +void MyAvatarLabel::reportBadAvatar() { + + Game *currentGame = myW->getSession()->getCurrentGame(); + int j=0; + PlayerListConstIterator it_c; + for (it_c=currentGame->getSeatsList()->begin(); it_c!=currentGame->getSeatsList()->end(); it_c++) { + + if(myId == j) { + + QString avatar = QString::fromUtf8((*it_c)->getMyAvatar().c_str()); + if(!avatar.isEmpty()) { + + QString nick = QString::fromUtf8((*it_c)->getMyName().c_str()); + int ret = QMessageBox::question(this, tr("PokerTH - Question"), + tr("Are you sure you want to report the avatar of \"%1\" as inappropriate?").arg(nick), + QMessageBox::Yes | QMessageBox::No); + + QFileInfo fi(avatar); +// tue_irgendwas_in_session(myId, fi.baseName()); + } + break; + } + j++; + } +} diff --git a/src/gui/qt/gametable/myavatarlabel.h b/src/gui/qt/gametable/myavatarlabel.h index 4464374b..f4e37cee 100644 --- a/src/gui/qt/gametable/myavatarlabel.h +++ b/src/gui/qt/gametable/myavatarlabel.h @@ -39,9 +39,11 @@ public slots: void setVoteRunning ( bool theValue ) { voteRunning = theValue; } void setPixmap ( const QPixmap &, const bool = FALSE); void setPixmapAndCountry ( const QPixmap &, QString country, int seatPlace, const bool = FALSE); + void setPixmapPath ( const QString theValue) { myPath = theValue; } void paintEvent(QPaintEvent*); void putPlayerOnIgnoreList(); bool playerIsOnIgnoreList(QString playerName); + void reportBadAvatar(); private: @@ -49,8 +51,10 @@ private: QMenu *myContextMenu; QAction *action_VoteForKick; QAction *action_IgnorePlayer; + QAction *action_ReportBadAvatar; QPixmap myPixmap; + QString myPath; int myId; bool myContextMenuEnabled;