moved showAuthorInPeople to PostedListWidgetWithModel, out of share menu, and disabled edit for now

This commit is contained in:
csoler 2020-10-09 23:27:44 +02:00
parent e2b9100380
commit 725c000ce7
4 changed files with 37 additions and 22 deletions

View File

@ -147,23 +147,6 @@ void BoardPostDisplayWidgetBase::readToggled()
emit changeReadStatusRequested(mPost.mMeta.mMsgId,s); emit changeReadStatusRequested(mPost.mMeta.mMsgId,s);
} }
void BoardPostDisplayWidgetBase::showAuthorInPeople()
{
if(mPost.mMeta.mAuthorId.isNull())
{
std::cerr << "(EE) GxsForumThreadWidget::loadMsgData_showAuthorInPeople() ERROR Missing Message Data...";
std::cerr << std::endl;
}
/* window will destroy itself! */
IdDialog *idDialog = dynamic_cast<IdDialog*>(MainWindow::getPage(MainWindow::People));
if (!idDialog)
return ;
MainWindow::showWindow(MainWindow::People);
idDialog->navigate(RsGxsId(mPost.mMeta.mAuthorId));
}
void BoardPostDisplayWidgetBase::setup() void BoardPostDisplayWidgetBase::setup()
{ {
@ -188,9 +171,6 @@ void BoardPostDisplayWidgetBase::setup()
QAction *CopyLinkAction = new QAction(QIcon(""),tr("Copy RetroShare Link"), this); QAction *CopyLinkAction = new QAction(QIcon(""),tr("Copy RetroShare Link"), this);
connect(CopyLinkAction, SIGNAL(triggered()), this, SLOT(handleCopyLinkClicked())); connect(CopyLinkAction, SIGNAL(triggered()), this, SLOT(handleCopyLinkClicked()));
QAction *showInPeopleAct = new QAction(QIcon(), tr("Show author in people tab"), this);
connect(showInPeopleAct, SIGNAL(triggered()), this, SLOT(showAuthorInPeople()));
int S = QFontMetricsF(font()).height() ; int S = QFontMetricsF(font()).height() ;
readButton()->setChecked(false); readButton()->setChecked(false);
@ -198,7 +178,6 @@ void BoardPostDisplayWidgetBase::setup()
QMenu *menu = new QMenu(); QMenu *menu = new QMenu();
menu->addAction(CopyLinkAction); menu->addAction(CopyLinkAction);
menu->addSeparator(); menu->addSeparator();
menu->addAction(showInPeopleAct);
shareButton()->setMenu(menu); shareButton()->setMenu(menu);
connect(shareButton(),SIGNAL(pressed()),this,SLOT(handleShareButtonClicked())); connect(shareButton(),SIGNAL(pressed()),this,SLOT(handleShareButtonClicked()));

View File

@ -83,7 +83,6 @@ protected slots:
virtual QFrame *mainFrame() =0; virtual QFrame *mainFrame() =0;
void loadComments(bool e); void loadComments(bool e);
void showAuthorInPeople();
void readToggled(); void readToggled();
void setReadStatus(bool isNew, bool isUnread) ; void setReadStatus(bool isNew, bool isUnread) ;
void makeUpVote() ; void makeUpVote() ;

View File

@ -37,12 +37,15 @@
#include "gui/settings/rsharesettings.h" #include "gui/settings/rsharesettings.h"
#include "gui/feeds/SubFileItem.h" #include "gui/feeds/SubFileItem.h"
#include "gui/notifyqt.h" #include "gui/notifyqt.h"
#include "gui/Identity/IdDialog.h"
#include "gui/RetroShareLink.h" #include "gui/RetroShareLink.h"
#include "util/HandleRichText.h" #include "util/HandleRichText.h"
#include "util/DateTime.h" #include "util/DateTime.h"
#include "util/qtthreadsutils.h" #include "util/qtthreadsutils.h"
#include "gui/common/FilesDefs.h" #include "gui/common/FilesDefs.h"
#include "gui/MainWindow.h"
#include "PostedListWidgetWithModel.h" #include "PostedListWidgetWithModel.h"
#include "PostedPostsModel.h" #include "PostedPostsModel.h"
#include "BoardPostDisplayWidget.h" #include "BoardPostDisplayWidget.h"
@ -64,6 +67,7 @@
// //
// //
#define IMAGE_COPYLINK ":/images/copyrslink.png" #define IMAGE_COPYLINK ":/images/copyrslink.png"
#define IMAGE_AUTHOR ":/images/user/personal64.png"
Q_DECLARE_METATYPE(RsPostedPost); Q_DECLARE_METATYPE(RsPostedPost);
@ -369,14 +373,46 @@ void PostedListWidgetWithModel::prev10Posts()
} }
} }
void PostedListWidgetWithModel::showAuthorInPeople()
{
QModelIndex index = ui->postsTree->selectionModel()->currentIndex();
if(!index.isValid())
throw std::runtime_error("No post under mouse!");
RsPostedPost post = index.data(Qt::UserRole).value<RsPostedPost>() ;
if(post.mMeta.mMsgId.isNull())
throw std::runtime_error("Post has empty MsgId!");
if(post.mMeta.mAuthorId.isNull())
{
std::cerr << "(EE) GxsForumThreadWidget::loadMsgData_showAuthorInPeople() ERROR Missing Message Data...";
std::cerr << std::endl;
}
/* window will destroy itself! */
IdDialog *idDialog = dynamic_cast<IdDialog*>(MainWindow::getPage(MainWindow::People));
if (!idDialog)
return ;
MainWindow::showWindow(MainWindow::People);
idDialog->navigate(RsGxsId(post.mMeta.mAuthorId));
}
void PostedListWidgetWithModel::postContextMenu(const QPoint&) void PostedListWidgetWithModel::postContextMenu(const QPoint&)
{ {
QMenu menu(this); QMenu menu(this);
menu.addAction(FilesDefs::getIconFromQtResourcePath(IMAGE_COPYLINK), tr("Copy RetroShare Link"), this, SLOT(copyMessageLink())); menu.addAction(FilesDefs::getIconFromQtResourcePath(IMAGE_COPYLINK), tr("Copy RetroShare Link"), this, SLOT(copyMessageLink()));
menu.addAction(FilesDefs::getIconFromQtResourcePath(IMAGE_AUTHOR), tr("Show author in People tab"), this, SLOT(showAuthorInPeople()));
#ifdef TODO
// This feature is not implemented yet in libretroshare.
if(IS_GROUP_PUBLISHER(mGroup.mMeta.mSubscribeFlags)) if(IS_GROUP_PUBLISHER(mGroup.mMeta.mSubscribeFlags))
menu.addAction(FilesDefs::getIconFromQtResourcePath(":/images/edit_16.png"), tr("Edit"), this, SLOT(editPost())); menu.addAction(FilesDefs::getIconFromQtResourcePath(":/images/edit_16.png"), tr("Edit"), this, SLOT(editPost()));
#endif
menu.exec(QCursor::pos()); menu.exec(QCursor::pos());
} }

View File

@ -132,6 +132,7 @@ protected:
virtual void setAllMessagesReadDo(bool read, uint32_t &token) override; virtual void setAllMessagesReadDo(bool read, uint32_t &token) override;
private slots: private slots:
void showAuthorInPeople();
void tabCloseRequested(int index); void tabCloseRequested(int index);
void updateSorting(int); void updateSorting(int);
void switchDisplayMode(); void switchDisplayMode();