kmbroadcaststatus.cpp
00001
00002
00003
00004
00005
00006
00007
00008
00009 #ifdef HAVE_CONFIG_H
00010 #include <config.h>
00011 #endif
00012
00013 #include <qdatetime.h>
00014
00015 #include <klocale.h>
00016 #include <kglobal.h>
00017
00018 #include "kmbroadcaststatus.h"
00019 #include "progressmanager.h"
00020
00021
00022
00023 KMBroadcastStatus* KMBroadcastStatus::instance_ = 0;
00024
00025 KMBroadcastStatus* KMBroadcastStatus::instance()
00026 {
00027 if (!instance_)
00028 instance_ = new KMBroadcastStatus();
00029 return instance_;
00030 }
00031
00032 KMBroadcastStatus::KMBroadcastStatus()
00033 {
00034 }
00035
00036 void KMBroadcastStatus::setStatusMsg( const QString& message )
00037 {
00038 mStatusMsg = message;
00039 emit statusMsg( message );
00040 }
00041
00042 void KMBroadcastStatus::setStatusMsgWithTimestamp( const QString& message )
00043 {
00044 KLocale* locale = KGlobal::locale();
00045 setStatusMsg( i18n( "%1 is a time, %2 is a status message", "[%1] %2" )
00046 .arg( locale->formatTime( QTime::currentTime(),
00047 true ) )
00048 .arg( message ) );
00049 }
00050
00051 void KMBroadcastStatus::setStatusMsgTransmissionCompleted( int numMessages,
00052 int numBytes,
00053 int numBytesRead,
00054 int numBytesToRead,
00055 bool mLeaveOnServer,
00056 KPIM::ProgressItem* item )
00057 {
00058 QString statusMsg;
00059 if( numMessages > 0 ) {
00060 if( numBytes != -1 ) {
00061 if( ( numBytesToRead != numBytes ) && mLeaveOnServer )
00062 statusMsg = i18n( "Transmission complete. %n new message in %1 KB "
00063 "(%2 KB remaining on the server).",
00064 "Transmission complete. %n new messages in %1 KB "
00065 "(%2 KB remaining on the server).",
00066 numMessages )
00067 .arg( numBytesRead / 1024 )
00068 .arg( numBytes / 1024 );
00069 else
00070 statusMsg = i18n( "Transmission complete. %n message in %1 KB.",
00071 "Transmission complete. %n messages in %1 KB.",
00072 numMessages )
00073 .arg( numBytesRead / 1024 );
00074 }
00075 else
00076 statusMsg = i18n( "Transmission complete. %n new message.",
00077 "Transmission complete. %n new messages.",
00078 numMessages );
00079 }
00080 else
00081 statusMsg = i18n( "Transmission complete. No new messages." );
00082
00083 setStatusMsgWithTimestamp( statusMsg );
00084 if ( item )
00085 item->setStatus( statusMsg );
00086 }
00087
00088 void KMBroadcastStatus::setStatusMsgTransmissionCompleted( const QString& account,
00089 int numMessages,
00090 int numBytes,
00091 int numBytesRead,
00092 int numBytesToRead,
00093 bool mLeaveOnServer,
00094 KPIM::ProgressItem* item )
00095 {
00096 QString statusMsg;
00097 if( numMessages > 0 ) {
00098 if( numBytes != -1 ) {
00099 if( ( numBytesToRead != numBytes ) && mLeaveOnServer )
00100 statusMsg = i18n( "Transmission for account %3 complete. "
00101 "%n new message in %1 KB "
00102 "(%2 KB remaining on the server).",
00103 "Transmission for account %3 complete. "
00104 "%n new messages in %1 KB "
00105 "(%2 KB remaining on the server).",
00106 numMessages )
00107 .arg( numBytesRead / 1024 )
00108 .arg( numBytes / 1024 )
00109 .arg( account );
00110 else
00111 statusMsg = i18n( "Transmission for account %2 complete. "
00112 "%n message in %1 KB.",
00113 "Transmission for account %2 complete. "
00114 "%n messages in %1 KB.",
00115 numMessages )
00116 .arg( numBytesRead / 1024 )
00117 .arg( account );
00118 }
00119 else
00120 statusMsg = i18n( "Transmission for account %1 complete. "
00121 "%n new message.",
00122 "Transmission for account %1 complete. "
00123 "%n new messages.",
00124 numMessages )
00125 .arg( account );
00126 }
00127 else
00128 statusMsg = i18n( "Transmission for account %1 complete. No new messages.")
00129 .arg( account );
00130
00131 setStatusMsgWithTimestamp( statusMsg );
00132 if ( item )
00133 item->setStatus( statusMsg );
00134 }
00135
00136 #include "kmbroadcaststatus.moc"
This file is part of the documentation for kmail Library Version 3.3.2.