Refactored some stuff with messages deleting.

This commit is contained in:
Martin Rotter 2015-12-10 13:40:45 +01:00
parent 7bfbdca4e9
commit 68a9355223
6 changed files with 18 additions and 18 deletions

View file

@ -372,17 +372,17 @@ bool MessagesModel::switchBatchMessageImportance(const QModelIndexList &messages
bool MessagesModel::setBatchMessagesDeleted(const QModelIndexList &messages) { bool MessagesModel::setBatchMessagesDeleted(const QModelIndexList &messages) {
QStringList message_ids; QStringList message_ids;
QList<int> message_ids_num; QList<Message> msgs;
// Obtain IDs of all desired messages. // Obtain IDs of all desired messages.
foreach (const QModelIndex &message, messages) { foreach (const QModelIndex &message, messages) {
int message_id = messageId(message.row()); Message msg = messageAt(message.row());
message_ids_num.append(message_id); msgs.append(msg);
message_ids.append(QString::number(message_id)); message_ids.append(QString::number(msg.m_id));
} }
if (!m_selectedItem->getParentServiceRoot()->onBeforeMessagesDelete(m_selectedItem, message_ids_num)) { if (!m_selectedItem->getParentServiceRoot()->onBeforeMessagesDelete(m_selectedItem, msgs)) {
return false; return false;
} }
@ -400,7 +400,7 @@ bool MessagesModel::setBatchMessagesDeleted(const QModelIndexList &messages) {
if (query_read_msg.exec(sql_delete_query)) { if (query_read_msg.exec(sql_delete_query)) {
fetchAllData(); fetchAllData();
return m_selectedItem->getParentServiceRoot()->onAfterMessagesDelete(m_selectedItem, message_ids_num); return m_selectedItem->getParentServiceRoot()->onAfterMessagesDelete(m_selectedItem, msgs);
} }
else { else {
return false; return false;

View file

@ -121,11 +121,11 @@ class ServiceRoot : public RootItem {
// Called BEFORE the list of messages is about to be deleted // Called BEFORE the list of messages is about to be deleted
// by the user from message list. // by the user from message list.
virtual bool onBeforeMessagesDelete(RootItem *selected_item, QList<int> message_db_ids) = 0; virtual bool onBeforeMessagesDelete(RootItem *selected_item, const QList<Message> &messages) = 0;
// Called AFTER the list of messages was deleted // Called AFTER the list of messages was deleted
// by the user from message list. // by the user from message list.
virtual bool onAfterMessagesDelete(RootItem *selected_item, QList<int> message_db_ids) = 0; virtual bool onAfterMessagesDelete(RootItem *selected_item, const QList<Message> &messages) = 0;
// Called BEFORE the list of messages is about to be restored from recycle bin // Called BEFORE the list of messages is about to be restored from recycle bin
// by the user from message list. // by the user from message list.

View file

@ -539,15 +539,15 @@ bool StandardServiceRoot::onAfterSwitchMessageImportance(RootItem *selected_item
return true; return true;
} }
bool StandardServiceRoot::onBeforeMessagesDelete(RootItem *selected_item, QList<int> message_db_ids) { bool StandardServiceRoot::onBeforeMessagesDelete(RootItem *selected_item, const QList<Message> &messages) {
Q_UNUSED(selected_item) Q_UNUSED(selected_item)
Q_UNUSED(message_db_ids) Q_UNUSED(messages)
return true; return true;
} }
bool StandardServiceRoot::onAfterMessagesDelete(RootItem *selected_item, QList<int> message_db_ids) { bool StandardServiceRoot::onAfterMessagesDelete(RootItem *selected_item, const QList<Message> &messages) {
Q_UNUSED(message_db_ids) Q_UNUSED(messages)
// User deleted some messages he selected in message list. // User deleted some messages he selected in message list.
selected_item->updateCounts(true); selected_item->updateCounts(true);

View file

@ -69,8 +69,8 @@ class StandardServiceRoot : public ServiceRoot {
bool onBeforeSwitchMessageImportance(RootItem *selected_item, const QList<QPair<Message,RootItem::Importance> > &changes); bool onBeforeSwitchMessageImportance(RootItem *selected_item, const QList<QPair<Message,RootItem::Importance> > &changes);
bool onAfterSwitchMessageImportance(RootItem *selected_item, const QList<QPair<Message,RootItem::Importance> > &changes); bool onAfterSwitchMessageImportance(RootItem *selected_item, const QList<QPair<Message,RootItem::Importance> > &changes);
bool onBeforeMessagesDelete(RootItem *selected_item, QList<int> message_db_ids); bool onBeforeMessagesDelete(RootItem *selected_item, const QList<Message> &messages);
bool onAfterMessagesDelete(RootItem *selected_item, QList<int> message_db_ids); bool onAfterMessagesDelete(RootItem *selected_item, const QList<Message> &messages);
bool onBeforeMessagesRestoredFromBin(RootItem *selected_item, QList<int> message_db_ids); bool onBeforeMessagesRestoredFromBin(RootItem *selected_item, QList<int> message_db_ids);
bool onAfterMessagesRestoredFromBin(RootItem *selected_item, QList<int> message_db_ids); bool onAfterMessagesRestoredFromBin(RootItem *selected_item, QList<int> message_db_ids);

View file

@ -202,11 +202,11 @@ bool TtRssServiceRoot::onAfterSwitchMessageImportance(RootItem *selected_item, c
return true; return true;
} }
bool TtRssServiceRoot::onBeforeMessagesDelete(RootItem *selected_item, QList<int> message_db_ids) { bool TtRssServiceRoot::onBeforeMessagesDelete(RootItem *selected_item, const QList<Message> &messages) {
return false; return false;
} }
bool TtRssServiceRoot::onAfterMessagesDelete(RootItem *selected_item, QList<int> message_db_ids) { bool TtRssServiceRoot::onAfterMessagesDelete(RootItem *selected_item, const QList<Message> &messages) {
return false; return false;
} }

View file

@ -60,8 +60,8 @@ class TtRssServiceRoot : public ServiceRoot {
bool onBeforeSwitchMessageImportance(RootItem *selected_item, const QList<QPair<Message,RootItem::Importance> > &changes); bool onBeforeSwitchMessageImportance(RootItem *selected_item, const QList<QPair<Message,RootItem::Importance> > &changes);
bool onAfterSwitchMessageImportance(RootItem *selected_item, const QList<QPair<Message,RootItem::Importance> > &changes); bool onAfterSwitchMessageImportance(RootItem *selected_item, const QList<QPair<Message,RootItem::Importance> > &changes);
bool onBeforeMessagesDelete(RootItem *selected_item, QList<int> message_db_ids); bool onBeforeMessagesDelete(RootItem *selected_item, const QList<Message> &messages);
bool onAfterMessagesDelete(RootItem *selected_item, QList<int> message_db_ids); bool onAfterMessagesDelete(RootItem *selected_item, const QList<Message> &messages);
bool onBeforeMessagesRestoredFromBin(RootItem *selected_item, QList<int> message_db_ids); bool onBeforeMessagesRestoredFromBin(RootItem *selected_item, QList<int> message_db_ids);
bool onAfterMessagesRestoredFromBin(RootItem *selected_item, QList<int> message_db_ids); bool onAfterMessagesRestoredFromBin(RootItem *selected_item, QList<int> message_db_ids);