diff --git a/kmacctexppop.cpp b/kmacctexppop.cpp index 8a885063d..79ebde453 100644 --- a/kmacctexppop.cpp +++ b/kmacctexppop.cpp @@ -616,7 +616,7 @@ void KMAcctExpPop::slotJobFinished() { bool canceled = KMBroadcastStatus::instance()->abortRequested() || mMailCheckProgressItem->canceled(); int numMessages = canceled ? indexOfCurrentMsg : idsOfMsgs.count(); KMBroadcastStatus::instance()->setStatusMsgTransmissionCompleted( - numMessages, numBytes, numBytesRead, numBytesToRead, mLeaveOnServer ); + numMessages, numBytes, numBytesRead, numBytesToRead, mLeaveOnServer, mMailCheckProgressItem ); mMailCheckProgressItem->setComplete(); mMailCheckProgressItem = 0; checkDone( ( numMessages > 0 ), canceled ? CheckAborted : CheckOK ); diff --git a/kmbroadcaststatus.cpp b/kmbroadcaststatus.cpp index f98dc588f..28321c990 100644 --- a/kmbroadcaststatus.cpp +++ b/kmbroadcaststatus.cpp @@ -16,7 +16,7 @@ #include #include "kmbroadcaststatus.h" - +#include "progressmanager.h" //----------------------------------------------------------------------------- @@ -57,7 +57,8 @@ void KMBroadcastStatus::setStatusMsgTransmissionCompleted( int numMessages, int numBytes, int numBytesRead, int numBytesToRead, - bool mLeaveOnServer ) + bool mLeaveOnServer, + KMail::ProgressItem* item ) { QString statusMsg; if( numMessages > 0 ) { @@ -85,6 +86,8 @@ void KMBroadcastStatus::setStatusMsgTransmissionCompleted( int numMessages, statusMsg = i18n( "Transmission complete. No new messages." ); setStatusMsgWithTimestamp( statusMsg ); + if ( item ) + item->setStatus( statusMsg ); } void KMBroadcastStatus::setStatusMsgTransmissionCompleted( const QString& account, @@ -92,7 +95,8 @@ void KMBroadcastStatus::setStatusMsgTransmissionCompleted( const QString& accoun int numBytes, int numBytesRead, int numBytesToRead, - bool mLeaveOnServer ) + bool mLeaveOnServer, + KMail::ProgressItem* item ) { QString statusMsg; if( numMessages > 0 ) { @@ -130,6 +134,8 @@ void KMBroadcastStatus::setStatusMsgTransmissionCompleted( const QString& accoun .arg( account ); setStatusMsgWithTimestamp( statusMsg ); + if ( item ) + item->setStatus( statusMsg ); } void KMBroadcastStatus::setStatusProgressEnable( const QString &id, diff --git a/kmbroadcaststatus.h b/kmbroadcaststatus.h index 6aaef78ea..79926f37a 100644 --- a/kmbroadcaststatus.h +++ b/kmbroadcaststatus.h @@ -13,6 +13,10 @@ #undef None +namespace KMail { + class ProgressItem; +} + /** When KMail is running it is possible to have multiple KMMainWin open at the same time. We want certain messages/information to be displayed in all active KMMainWins. KMBroadcastStatus make this possible, it @@ -38,13 +42,15 @@ public: int numBytes = -1, int numBytesRead = -1, int numBytesToRead = -1, - bool mLeaveOnServer = false ); + bool mLeaveOnServer = false, + KMail::ProgressItem* progressItem = 0 ); // set the same status in this progress item void setStatusMsgTransmissionCompleted( const QString& account, int numMessages, int numBytes = -1, int numBytesRead = -1, int numBytesToRead = -1, - bool mLeaveOnServer = false ); + bool mLeaveOnServer = false, + KMail::ProgressItem* progressItem = 0 ); // set the same status in this progress item /** Emit an enable progress widget(s) in status bar(s) signal */ void setStatusProgressEnable( const QString& id, bool enable ); /** Emit an update progress widget(s) percent completed signal */