mirror of
https://github.com/RetroShare/RetroShare.git
synced 2025-02-27 10:21:40 -05:00
fixed a few more bugs in post version UI
This commit is contained in:
parent
8deeec61c5
commit
5bf8376dd1
@ -45,12 +45,13 @@
|
|||||||
#define CREATEGXSFORUMMSG_FORUMINFO 1
|
#define CREATEGXSFORUMMSG_FORUMINFO 1
|
||||||
#define CREATEGXSFORUMMSG_PARENTMSG 2
|
#define CREATEGXSFORUMMSG_PARENTMSG 2
|
||||||
#define CREATEGXSFORUMMSG_CIRCLENFO 3
|
#define CREATEGXSFORUMMSG_CIRCLENFO 3
|
||||||
|
#define CREATEGXSFORUMMSG_ORIGMSG 4
|
||||||
|
|
||||||
//#define ENABLE_GENERATE
|
//#define ENABLE_GENERATE
|
||||||
|
|
||||||
/** Constructor */
|
/** Constructor */
|
||||||
CreateGxsForumMsg::CreateGxsForumMsg(const RsGxsGroupId &fId, const RsGxsMessageId &pId,const RsGxsMessageId& mOId)
|
CreateGxsForumMsg::CreateGxsForumMsg(const RsGxsGroupId &fId, const RsGxsMessageId &pId,const RsGxsMessageId& mOId,const RsGxsId& posterId)
|
||||||
: QDialog(NULL, Qt::WindowSystemMenuHint | Qt::WindowTitleHint | Qt::WindowMinMaxButtonsHint | Qt::WindowCloseButtonHint), mForumId(fId), mParentId(pId), mOrigMsgId(mOId)
|
: QDialog(NULL, Qt::WindowSystemMenuHint | Qt::WindowTitleHint | Qt::WindowMinMaxButtonsHint | Qt::WindowCloseButtonHint), mForumId(fId), mParentId(pId), mOrigMsgId(mOId),mPosterId(posterId)
|
||||||
{
|
{
|
||||||
/* Invoke the Qt Designer generated object setup routine */
|
/* Invoke the Qt Designer generated object setup routine */
|
||||||
ui.setupUi(this);
|
ui.setupUi(this);
|
||||||
@ -75,6 +76,13 @@ CreateGxsForumMsg::CreateGxsForumMsg(const RsGxsGroupId &fId, const RsGxsMessage
|
|||||||
mStateHelper->addLoadPlaceholder(CREATEGXSFORUMMSG_PARENTMSG, ui.forumSubject);
|
mStateHelper->addLoadPlaceholder(CREATEGXSFORUMMSG_PARENTMSG, ui.forumSubject);
|
||||||
mStateHelper->addClear(CREATEGXSFORUMMSG_PARENTMSG, ui.forumName);
|
mStateHelper->addClear(CREATEGXSFORUMMSG_PARENTMSG, ui.forumName);
|
||||||
|
|
||||||
|
mStateHelper->addWidget(CREATEGXSFORUMMSG_ORIGMSG, ui.buttonBox->button(QDialogButtonBox::Ok));
|
||||||
|
mStateHelper->addWidget(CREATEGXSFORUMMSG_ORIGMSG, ui.innerFrame);
|
||||||
|
mStateHelper->addLoadPlaceholder(CREATEGXSFORUMMSG_ORIGMSG, ui.forumName);
|
||||||
|
mStateHelper->addLoadPlaceholder(CREATEGXSFORUMMSG_ORIGMSG, ui.forumSubject);
|
||||||
|
mStateHelper->addClear(CREATEGXSFORUMMSG_ORIGMSG, ui.forumName);
|
||||||
|
|
||||||
|
|
||||||
QString text = mOId.isNull()?(pId.isNull() ? tr("Start New Thread") : tr("Post Forum Message")):tr("Edit Message");
|
QString text = mOId.isNull()?(pId.isNull() ? tr("Start New Thread") : tr("Post Forum Message")):tr("Edit Message");
|
||||||
setWindowTitle(text);
|
setWindowTitle(text);
|
||||||
|
|
||||||
@ -129,13 +137,24 @@ void CreateGxsForumMsg::newMsg()
|
|||||||
|
|
||||||
//std::cerr << "Initing ID chooser. Sign flags = " << std::hex << mForumMeta.mSignFlags << std::dec << std::endl;
|
//std::cerr << "Initing ID chooser. Sign flags = " << std::hex << mForumMeta.mSignFlags << std::dec << std::endl;
|
||||||
|
|
||||||
ui.idChooser->loadIds(IDCHOOSER_ID_REQUIRED, RsGxsId());
|
if(!mPosterId.isNull())
|
||||||
|
{
|
||||||
|
std::set<RsGxsId> id_set ;
|
||||||
|
id_set.insert(mPosterId) ;
|
||||||
|
|
||||||
|
ui.idChooser->loadIds(IDCHOOSER_ID_REQUIRED | IDCHOOSER_NO_CREATE, mPosterId);
|
||||||
|
ui.idChooser->setIdConstraintSet(id_set);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
ui.idChooser->loadIds(IDCHOOSER_ID_REQUIRED, mPosterId);
|
||||||
|
|
||||||
if (mForumId.isNull()) {
|
if (mForumId.isNull()) {
|
||||||
mStateHelper->setActive(CREATEGXSFORUMMSG_FORUMINFO, false);
|
mStateHelper->setActive(CREATEGXSFORUMMSG_FORUMINFO, false);
|
||||||
mStateHelper->setActive(CREATEGXSFORUMMSG_PARENTMSG, false);
|
mStateHelper->setActive(CREATEGXSFORUMMSG_PARENTMSG, false);
|
||||||
|
mStateHelper->setActive(CREATEGXSFORUMMSG_ORIGMSG, false);
|
||||||
mStateHelper->clear(CREATEGXSFORUMMSG_FORUMINFO);
|
mStateHelper->clear(CREATEGXSFORUMMSG_FORUMINFO);
|
||||||
mStateHelper->clear(CREATEGXSFORUMMSG_PARENTMSG);
|
mStateHelper->clear(CREATEGXSFORUMMSG_PARENTMSG);
|
||||||
|
mStateHelper->clear(CREATEGXSFORUMMSG_ORIGMSG);
|
||||||
ui.forumName->setText(tr("No Forum"));
|
ui.forumName->setText(tr("No Forum"));
|
||||||
return;
|
return;
|
||||||
}//if ( mForumId.isNull())
|
}//if ( mForumId.isNull())
|
||||||
@ -174,11 +193,53 @@ void CreateGxsForumMsg::newMsg()
|
|||||||
uint32_t token;
|
uint32_t token;
|
||||||
mForumQueue->requestMsgInfo(token, RS_TOKREQ_ANSTYPE_DATA, opts, msgIds, CREATEGXSFORUMMSG_PARENTMSG);
|
mForumQueue->requestMsgInfo(token, RS_TOKREQ_ANSTYPE_DATA, opts, msgIds, CREATEGXSFORUMMSG_PARENTMSG);
|
||||||
}//if (mParentId.isNull())
|
}//if (mParentId.isNull())
|
||||||
|
|
||||||
|
if (mOrigMsgId.isNull()) {
|
||||||
|
mStateHelper->setActive(CREATEGXSFORUMMSG_ORIGMSG, true);
|
||||||
|
mOrigMsgLoaded = true;
|
||||||
|
} else {
|
||||||
|
mStateHelper->setLoading(CREATEGXSFORUMMSG_ORIGMSG, true);
|
||||||
|
|
||||||
|
RsTokReqOptions opts;
|
||||||
|
opts.mReqType = GXS_REQUEST_TYPE_MSG_DATA;
|
||||||
|
|
||||||
|
GxsMsgReq msgIds;
|
||||||
|
std::vector<RsGxsMessageId> &vect = msgIds[mForumId];
|
||||||
|
vect.push_back(mOrigMsgId);
|
||||||
|
|
||||||
|
//std::cerr << "ForumsV2Dialog::newMsg() Requesting Parent Summary(" << mParentId << ")";
|
||||||
|
//std::cerr << std::endl;
|
||||||
|
|
||||||
|
uint32_t token;
|
||||||
|
mForumQueue->requestMsgInfo(token, RS_TOKREQ_ANSTYPE_DATA, opts, msgIds, CREATEGXSFORUMMSG_ORIGMSG);
|
||||||
|
}//if (mParentId.isNull())
|
||||||
}
|
}
|
||||||
|
|
||||||
void CreateGxsForumMsg::loadFormInformation()
|
void CreateGxsForumMsg::loadFormInformation()
|
||||||
{
|
{
|
||||||
if (!mParentId.isNull()) {
|
if (!mOrigMsgId.isNull())
|
||||||
|
{
|
||||||
|
if (mOrigMsgLoaded) {
|
||||||
|
mStateHelper->setActive(CREATEGXSFORUMMSG_ORIGMSG, true);
|
||||||
|
mStateHelper->setLoading(CREATEGXSFORUMMSG_ORIGMSG, false);
|
||||||
|
} else {
|
||||||
|
//std::cerr << "CreateGxsForumMsg::loadMsgInformation() ParentMsg not Loaded Yet";
|
||||||
|
//std::cerr << std::endl;
|
||||||
|
|
||||||
|
mStateHelper->setActive(CREATEGXSFORUMMSG_ORIGMSG, false);
|
||||||
|
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
mStateHelper->setActive(CREATEGXSFORUMMSG_ORIGMSG, true);
|
||||||
|
mStateHelper->setLoading(CREATEGXSFORUMMSG_ORIGMSG, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if (!mParentId.isNull())
|
||||||
|
{
|
||||||
if (mParentMsgLoaded) {
|
if (mParentMsgLoaded) {
|
||||||
mStateHelper->setActive(CREATEGXSFORUMMSG_PARENTMSG, true);
|
mStateHelper->setActive(CREATEGXSFORUMMSG_PARENTMSG, true);
|
||||||
mStateHelper->setLoading(CREATEGXSFORUMMSG_PARENTMSG, false);
|
mStateHelper->setLoading(CREATEGXSFORUMMSG_PARENTMSG, false);
|
||||||
@ -190,7 +251,9 @@ void CreateGxsForumMsg::loadFormInformation()
|
|||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
} else {
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
mStateHelper->setActive(CREATEGXSFORUMMSG_PARENTMSG, true);
|
mStateHelper->setActive(CREATEGXSFORUMMSG_PARENTMSG, true);
|
||||||
mStateHelper->setLoading(CREATEGXSFORUMMSG_PARENTMSG, false);
|
mStateHelper->setLoading(CREATEGXSFORUMMSG_PARENTMSG, false);
|
||||||
}
|
}
|
||||||
@ -212,17 +275,22 @@ void CreateGxsForumMsg::loadFormInformation()
|
|||||||
|
|
||||||
//std::cerr << "CreateGxsForumMsg::loadMsgInformation() using signFlags=" << std::hex << mForumMeta.mSignFlags << std::dec << std::endl;
|
//std::cerr << "CreateGxsForumMsg::loadMsgInformation() using signFlags=" << std::hex << mForumMeta.mSignFlags << std::dec << std::endl;
|
||||||
|
|
||||||
|
uint32_t fl = IDCHOOSER_ID_REQUIRED ;
|
||||||
|
|
||||||
if( (mForumMeta.mSignFlags & GXS_SERV::FLAG_AUTHOR_AUTHENTICATION_GPG) || (mForumMeta.mSignFlags & GXS_SERV::FLAG_AUTHOR_AUTHENTICATION_GPG_KNOWN))
|
if( (mForumMeta.mSignFlags & GXS_SERV::FLAG_AUTHOR_AUTHENTICATION_GPG) || (mForumMeta.mSignFlags & GXS_SERV::FLAG_AUTHOR_AUTHENTICATION_GPG_KNOWN))
|
||||||
ui.idChooser->setFlags(IDCHOOSER_ID_REQUIRED | IDCHOOSER_NON_ANONYMOUS) ;
|
fl |= IDCHOOSER_NON_ANONYMOUS ;
|
||||||
else
|
|
||||||
ui.idChooser->setFlags(IDCHOOSER_ID_REQUIRED) ;
|
if(!mPosterId.isNull())
|
||||||
|
fl |= IDCHOOSER_NO_CREATE;
|
||||||
|
|
||||||
|
ui.idChooser->setFlags(fl) ;
|
||||||
|
|
||||||
QString name = QString::fromUtf8(mForumMeta.mGroupName.c_str());
|
QString name = QString::fromUtf8(mForumMeta.mGroupName.c_str());
|
||||||
QString subj;
|
QString subj;
|
||||||
|
|
||||||
if(!mOrigMsgId.isNull())
|
if(!mOrigMsgId.isNull())
|
||||||
{
|
{
|
||||||
subj = QString::fromUtf8(mParentMsg.mMeta.mMsgName.c_str());
|
subj = QString::fromUtf8(mOrigMsg.mMeta.mMsgName.c_str());
|
||||||
}
|
}
|
||||||
else if (!mParentId.isNull())
|
else if (!mParentId.isNull())
|
||||||
{
|
{
|
||||||
@ -240,6 +308,7 @@ void CreateGxsForumMsg::loadFormInformation()
|
|||||||
|
|
||||||
ui.forumName->setText(misc::removeNewLine(name));
|
ui.forumName->setText(misc::removeNewLine(name));
|
||||||
ui.forumSubject->setText(misc::removeNewLine(subj));
|
ui.forumSubject->setText(misc::removeNewLine(subj));
|
||||||
|
ui.forumSubject->setReadOnly(!mOrigMsgId.isNull());
|
||||||
|
|
||||||
if (ui.forumSubject->text().isEmpty())
|
if (ui.forumSubject->text().isEmpty())
|
||||||
{
|
{
|
||||||
@ -380,7 +449,7 @@ void CreateGxsForumMsg::reject()
|
|||||||
QMessageBox::StandardButton ret;
|
QMessageBox::StandardButton ret;
|
||||||
ret = QMessageBox::warning(this, tr("Cancel Forum Message"),
|
ret = QMessageBox::warning(this, tr("Cancel Forum Message"),
|
||||||
tr("Forum Message has not been sent yet!\n"
|
tr("Forum Message has not been sent yet!\n"
|
||||||
"Please confirm that you want to discard this message?"),
|
"Do you want to discard this message?"),
|
||||||
QMessageBox::Yes | QMessageBox::No);
|
QMessageBox::Yes | QMessageBox::No);
|
||||||
switch (ret) {
|
switch (ret) {
|
||||||
case QMessageBox::Yes:
|
case QMessageBox::Yes:
|
||||||
@ -522,6 +591,35 @@ void CreateGxsForumMsg::loadForumCircleInfo(const uint32_t& token)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void CreateGxsForumMsg::loadOrigMsg(const uint32_t &token)
|
||||||
|
{
|
||||||
|
//std::cerr << "CreateGxsForumMsg::loadParentMsg()";
|
||||||
|
//std::cerr << std::endl;
|
||||||
|
|
||||||
|
// Only grab one.... ignore more (shouldn't be any).
|
||||||
|
std::vector<RsGxsForumMsg> msgs;
|
||||||
|
if (rsGxsForums->getMsgData(token, msgs))
|
||||||
|
{
|
||||||
|
if (msgs.size() != 1)
|
||||||
|
{
|
||||||
|
/* error */
|
||||||
|
std::cerr << "CreateGxsForumMsg::loadOrigMsg() ERROR wrong number of msgs";
|
||||||
|
std::cerr << std::endl;
|
||||||
|
|
||||||
|
mStateHelper->setActive(CREATEGXSFORUMMSG_ORIGMSG, false);
|
||||||
|
mStateHelper->setLoading(CREATEGXSFORUMMSG_ORIGMSG, false);
|
||||||
|
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
mOrigMsg = msgs[0];
|
||||||
|
mOrigMsgLoaded = true;
|
||||||
|
|
||||||
|
loadFormInformation();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
void CreateGxsForumMsg::loadParentMsg(const uint32_t &token)
|
void CreateGxsForumMsg::loadParentMsg(const uint32_t &token)
|
||||||
{
|
{
|
||||||
//std::cerr << "CreateGxsForumMsg::loadParentMsg()";
|
//std::cerr << "CreateGxsForumMsg::loadParentMsg()";
|
||||||
@ -563,6 +661,9 @@ void CreateGxsForumMsg::loadRequest(const TokenQueue *queue, const TokenRequest
|
|||||||
case CREATEGXSFORUMMSG_FORUMINFO:
|
case CREATEGXSFORUMMSG_FORUMINFO:
|
||||||
loadForumInfo(req.mToken);
|
loadForumInfo(req.mToken);
|
||||||
break;
|
break;
|
||||||
|
case CREATEGXSFORUMMSG_ORIGMSG:
|
||||||
|
loadOrigMsg(req.mToken);
|
||||||
|
break;
|
||||||
case CREATEGXSFORUMMSG_PARENTMSG:
|
case CREATEGXSFORUMMSG_PARENTMSG:
|
||||||
loadParentMsg(req.mToken);
|
loadParentMsg(req.mToken);
|
||||||
break;
|
break;
|
||||||
|
@ -36,7 +36,7 @@ class CreateGxsForumMsg : public QDialog, public TokenResponse
|
|||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
||||||
public:
|
public:
|
||||||
CreateGxsForumMsg(const RsGxsGroupId &fId, const RsGxsMessageId &pId, const RsGxsMessageId &moId);
|
CreateGxsForumMsg(const RsGxsGroupId &fId, const RsGxsMessageId &pId, const RsGxsMessageId &moId, const RsGxsId &posterId = RsGxsId());
|
||||||
~CreateGxsForumMsg();
|
~CreateGxsForumMsg();
|
||||||
|
|
||||||
void newMsg(); /* cleanup */
|
void newMsg(); /* cleanup */
|
||||||
@ -61,18 +61,22 @@ private:
|
|||||||
|
|
||||||
void loadForumInfo(const uint32_t &token);
|
void loadForumInfo(const uint32_t &token);
|
||||||
void loadParentMsg(const uint32_t &token);
|
void loadParentMsg(const uint32_t &token);
|
||||||
|
void loadOrigMsg(const uint32_t &token);
|
||||||
void loadForumCircleInfo(const uint32_t &token);
|
void loadForumCircleInfo(const uint32_t &token);
|
||||||
|
|
||||||
RsGxsGroupId mForumId;
|
RsGxsGroupId mForumId;
|
||||||
RsGxsCircleId mCircleId ;
|
RsGxsCircleId mCircleId ;
|
||||||
RsGxsMessageId mParentId;
|
RsGxsMessageId mParentId;
|
||||||
RsGxsMessageId mOrigMsgId;
|
RsGxsMessageId mOrigMsgId;
|
||||||
|
RsGxsId mPosterId;
|
||||||
|
|
||||||
bool mParentMsgLoaded;
|
bool mParentMsgLoaded;
|
||||||
|
bool mOrigMsgLoaded;
|
||||||
bool mForumMetaLoaded;
|
bool mForumMetaLoaded;
|
||||||
bool mForumCircleLoaded ;
|
bool mForumCircleLoaded ;
|
||||||
|
|
||||||
RsGxsForumMsg mParentMsg;
|
RsGxsForumMsg mParentMsg;
|
||||||
|
RsGxsForumMsg mOrigMsg;
|
||||||
RsGroupMetaData mForumMeta;
|
RsGroupMetaData mForumMeta;
|
||||||
RsGxsCircleGroup mForumCircleData ;
|
RsGxsCircleGroup mForumCircleData ;
|
||||||
|
|
||||||
|
@ -200,7 +200,7 @@ GxsForumThreadWidget::GxsForumThreadWidget(const RsGxsGroupId &forumId, QWidget
|
|||||||
|
|
||||||
ui->threadTreeWidget->setItemDelegateForColumn(COLUMN_THREAD_DISTRIBUTION,new DistributionItemDelegate()) ;
|
ui->threadTreeWidget->setItemDelegateForColumn(COLUMN_THREAD_DISTRIBUTION,new DistributionItemDelegate()) ;
|
||||||
|
|
||||||
connect(ui->versions_CB, SIGNAL(currentIndexChanged(int)), this, SLOT(changedThread()));
|
connect(ui->versions_CB, SIGNAL(currentIndexChanged(int)), this, SLOT(changedVersion()));
|
||||||
connect(ui->threadTreeWidget, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(threadListCustomPopupMenu(QPoint)));
|
connect(ui->threadTreeWidget, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(threadListCustomPopupMenu(QPoint)));
|
||||||
connect(ui->postText, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(contextMenuTextBrowser(QPoint)));
|
connect(ui->postText, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(contextMenuTextBrowser(QPoint)));
|
||||||
|
|
||||||
@ -690,6 +690,17 @@ void GxsForumThreadWidget::togglethreadview_internal()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void GxsForumThreadWidget::changedVersion()
|
||||||
|
{
|
||||||
|
mThreadId = RsGxsMessageId(ui->versions_CB->itemData(ui->versions_CB->currentIndex()).toString().toStdString()) ;
|
||||||
|
|
||||||
|
if (mFillThread) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
ui->postText->resetImagesStatus(Settings->getForumLoadEmbeddedImages()) ;
|
||||||
|
insertMessage();
|
||||||
|
}
|
||||||
|
|
||||||
void GxsForumThreadWidget::changedThread()
|
void GxsForumThreadWidget::changedThread()
|
||||||
{
|
{
|
||||||
/* just grab the ids of the current item */
|
/* just grab the ids of the current item */
|
||||||
@ -697,20 +708,10 @@ void GxsForumThreadWidget::changedThread()
|
|||||||
|
|
||||||
if (!item || !item->isSelected()) {
|
if (!item || !item->isSelected()) {
|
||||||
mThreadId.clear();
|
mThreadId.clear();
|
||||||
|
mOrigThreadId.clear();
|
||||||
} else {
|
} else {
|
||||||
mThreadId.clear();
|
|
||||||
|
|
||||||
if(ui->versions_CB->count() > 0)
|
mThreadId = mOrigThreadId = RsGxsMessageId(item->data(COLUMN_THREAD_MSGID, Qt::DisplayRole).toString().toStdString());
|
||||||
{
|
|
||||||
mThreadId = RsGxsMessageId(ui->versions_CB->itemData(ui->versions_CB->currentIndex()).toString().toStdString()) ;
|
|
||||||
mOrigThreadId = RsGxsMessageId(ui->versions_CB->itemData(0).toString().toStdString()) ;
|
|
||||||
}
|
|
||||||
|
|
||||||
if(mThreadId.isNull())
|
|
||||||
{
|
|
||||||
mThreadId = RsGxsMessageId(item->data(COLUMN_THREAD_MSGID, Qt::DisplayRole).toString().toStdString());
|
|
||||||
mOrigThreadId = mThreadId ;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (mFillThread) {
|
if (mFillThread) {
|
||||||
@ -1603,7 +1604,7 @@ void GxsForumThreadWidget::insertMessage()
|
|||||||
|
|
||||||
for(uint32_t i=0;i<(*it).size();++i)
|
for(uint32_t i=0;i<(*it).size();++i)
|
||||||
{
|
{
|
||||||
ui->versions_CB->insertItem(i,DateTime::formatLongDateTime( (*it)[i].first));
|
ui->versions_CB->insertItem(i, ((i==0)?tr("(Latest) "):tr("(Old) "))+" "+DateTime::formatLongDateTime( (*it)[i].first));
|
||||||
ui->versions_CB->setItemData(i,QString::fromStdString((*it)[i].second.toStdString()));
|
ui->versions_CB->setItemData(i,QString::fromStdString((*it)[i].second.toStdString()));
|
||||||
|
|
||||||
std::cerr << " added new post version " << (*it)[i].first << " " << (*it)[i].second << std::endl;
|
std::cerr << " added new post version " << (*it)[i].first << " " << (*it)[i].second << std::endl;
|
||||||
@ -2176,7 +2177,7 @@ void GxsForumThreadWidget::editForumMessageData(const RsGxsForumMsg& msg)
|
|||||||
|
|
||||||
if (!msg.mMeta.mAuthorId.isNull())
|
if (!msg.mMeta.mAuthorId.isNull())
|
||||||
{
|
{
|
||||||
CreateGxsForumMsg *cfm = new CreateGxsForumMsg(groupId(), msg.mMeta.mParentId, msg.mMeta.mMsgId);
|
CreateGxsForumMsg *cfm = new CreateGxsForumMsg(groupId(), msg.mMeta.mParentId, msg.mMeta.mMsgId, msg.mMeta.mAuthorId);
|
||||||
|
|
||||||
cfm->insertPastedText(QString::fromUtf8(msg.mMsg.c_str())) ;
|
cfm->insertPastedText(QString::fromUtf8(msg.mMsg.c_str())) ;
|
||||||
cfm->show();
|
cfm->show();
|
||||||
|
@ -75,6 +75,7 @@ private slots:
|
|||||||
void contextMenuTextBrowser(QPoint point);
|
void contextMenuTextBrowser(QPoint point);
|
||||||
|
|
||||||
void changedThread();
|
void changedThread();
|
||||||
|
void changedVersion();
|
||||||
void clickedThread (QTreeWidgetItem *item, int column);
|
void clickedThread (QTreeWidgetItem *item, int column);
|
||||||
|
|
||||||
void reply_with_private_message();
|
void reply_with_private_message();
|
||||||
|
@ -210,7 +210,9 @@ void GxsForumsFillThread::run()
|
|||||||
{
|
{
|
||||||
// Ensuring that the post exists allows to only collect the existing data.
|
// Ensuring that the post exists allows to only collect the existing data.
|
||||||
|
|
||||||
|
if(mPostVersions[msgIt->second.mMeta.mOrigMsgId].empty())
|
||||||
mPostVersions[msgIt->second.mMeta.mOrigMsgId].push_back(QPair<time_t,RsGxsMessageId>(msgIt2->second.mMeta.mPublishTs,msgIt2->second.mMeta.mMsgId)) ;
|
mPostVersions[msgIt->second.mMeta.mOrigMsgId].push_back(QPair<time_t,RsGxsMessageId>(msgIt2->second.mMeta.mPublishTs,msgIt2->second.mMeta.mMsgId)) ;
|
||||||
|
|
||||||
mPostVersions[msgIt->second.mMeta.mOrigMsgId].push_back(QPair<time_t,RsGxsMessageId>(msgIt->second.mMeta.mPublishTs,msgIt->second.mMeta.mMsgId)) ;
|
mPostVersions[msgIt->second.mMeta.mOrigMsgId].push_back(QPair<time_t,RsGxsMessageId>(msgIt->second.mMeta.mPublishTs,msgIt->second.mMeta.mMsgId)) ;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user