[prev in list] [next in list] [prev in thread] [next in thread]
List: kmail-devel
Subject: adding timestamp to transmission completed statusbar message
From: "Patrick S. Vogt" <patrick.vogt () unibas ! ch>
Date: 2003-02-22 18:05:00
[Download RAW message or body]
Hi,
first of all: thanks!
I use kmail for years now and I am happy with it!
Here is a small patch that adds a timestamp to the transmission completed
message.
This was a training for some new features I am intenting to implement:
- a offline mode, so it does not check for new mail
- network sensitive SMTP servers, so kmail uses a SMTP server that relays for
the network it is plug in
I got a new laptop... ;-)
thanks,
Patrick
["kmail_transmissioncompleted.diff" (text/x-diff)]
Index: kmail/kmacctexppop.cpp
===================================================================
RCS file: /home/kde/kdepim/kmail/kmacctexppop.cpp,v
retrieving revision 1.127
diff -u -3 -p -r1.127 kmacctexppop.cpp
--- kmail/kmacctexppop.cpp 22 Feb 2003 04:53:58 -0000 1.127
+++ kmail/kmacctexppop.cpp 22 Feb 2003 18:01:47 -0000
@@ -610,23 +610,7 @@ void KMAcctExpPop::slotJobFinished() {
KMBroadcastStatus::instance()->setStatusProgressPercent( "P" + mName, 100 );
int numMessages = (KMBroadcastStatus::instance()->abortRequested()) ?
indexOfCurrentMsg : idsOfMsgs.count();
- QString statusMsg;
- if (numMessages > 0)
- if (numBytesToRead != numBytes && mLeaveOnServer)
- statusMsg = i18n("Transmission complete. %n new message in %1 KB "
- "(%2 KB remaining on the server).",
- "Transmission complete. %n new messages in %1 KB "
- "(%2 KB remaining on the server).",
- numMessages)
- .arg(numBytesRead/1024).arg(numBytes/1024);
- else
- statusMsg = i18n("Transmission complete. %n message in %1 KB.",
- "Transmission complete. %n messages in %1 KB.",
- numMessages)
- .arg(numBytesRead/1024);
- else
- statusMsg = i18n("Transmission complete. No new messages." );
- KMBroadcastStatus::instance()->setStatusMsg( statusMsg );
+ KMBroadcastStatus::instance()->setStatusMsgTransmissionCompleted( numMessages, \
numBytes, numBytesRead, numBytesToRead, mLeaveOnServer ); \
KMBroadcastStatus::instance()->setStatusProgressEnable( "P" + mName, false );
KMBroadcastStatus::instance()->reset();
Index: kmail/kmacctlocal.cpp
===================================================================
RCS file: /home/kde/kdepim/kmail/kmacctlocal.cpp,v
retrieving revision 1.87
diff -u -3 -p -r1.87 kmacctlocal.cpp
--- kmail/kmacctlocal.cpp 4 Jan 2003 13:34:58 -0000 1.87
+++ kmail/kmacctlocal.cpp 22 Feb 2003 18:01:47 -0000
@@ -90,8 +90,7 @@ void KMAcctLocal::processNewMail(bool)
if ( precommand().isEmpty() ) {
QFileInfo fi( location() );
if ( fi.size() == 0 ) {
- QString statusMsg = i18n("Transmission complete. No new messages.");
- KMBroadcastStatus::instance()->setStatusMsg( statusMsg );
+ KMBroadcastStatus::instance()->setStatusMsgTransmissionCompleted( 0 );
emit finishedCheck(hasNewMail);
emit newMailsProcessed(0);
return;
@@ -221,13 +220,7 @@ if( fileD0.open( IO_WriteOnly ) ) {
rc = mailFolder.expunge();
if (rc)
KMessageBox::information( 0, i18n("Cannot remove mail from\nmailbox \
`%1':\n%2").arg(mailFolder.location()).arg(strerror(rc)));
- QString statusMsg;
- if ( num )
- statusMsg = i18n("Transmission complete. %n new message.",
- "Transmission complete. %n new messages.", num);
- else
- statusMsg = i18n("Transmission complete. No new messages.");
- KMBroadcastStatus::instance()->setStatusMsg( statusMsg );
+ KMBroadcastStatus::instance()->setStatusMsgTransmissionCompleted( num );
}
// else warning is written already
Index: kmail/kmacctmaildir.cpp
===================================================================
RCS file: /home/kde/kdepim/kmail/kmacctmaildir.cpp,v
retrieving revision 1.18
diff -u -3 -p -r1.18 kmacctmaildir.cpp
--- kmail/kmacctmaildir.cpp 4 Jan 2003 13:34:58 -0000 1.18
+++ kmail/kmacctmaildir.cpp 22 Feb 2003 18:01:48 -0000
@@ -82,8 +82,7 @@ void KMAcctMaildir::processNewMail(bool)
if ( !fi.exists() ) {
emit finishedCheck(hasNewMail);
emit newMailsProcessed(0);
- QString statusMsg = i18n("Transmission completed, no new messages");
- KMBroadcastStatus::instance()->setStatusMsg( statusMsg );
+ KMBroadcastStatus::instance()->setStatusMsgTransmissionCompleted( 0 );
return;
}
}
@@ -193,13 +192,7 @@ void KMAcctMaildir::processNewMail(bool)
KMessageBox::information( 0,
i18n("Cannot remove mail from mailbox '%1':\n%2")
.arg(mailFolder.location()).arg(strerror(rc)));
- QString statusMsg;
- if ( num )
- statusMsg = i18n("Transmission completed, %n new message.",
- "Transmission completed, %n new messages.", num);
- else
- statusMsg = i18n("Transmission completed, no new messages");
- KMBroadcastStatus::instance()->setStatusMsg( statusMsg );
+ KMBroadcastStatus::instance()->setStatusMsgTransmissionCompleted( num );
}
// else warning is written already
Index: kmail/kmacctmgr.cpp
===================================================================
RCS file: /home/kde/kdepim/kmail/kmacctmgr.cpp,v
retrieving revision 1.96
diff -u -3 -p -r1.96 kmacctmgr.cpp
--- kmail/kmacctmgr.cpp 10 Feb 2003 20:52:54 -0000 1.96
+++ kmail/kmacctmgr.cpp 22 Feb 2003 18:01:48 -0000
@@ -152,9 +152,7 @@ void KMAcctMgr::processNextCheck(bool _n
kernel->serverReady (true);
checking = false;
if (mTotalNewMailsArrived > 0 && moreThanOneAccount)
- KMBroadcastStatus::instance()->setStatusMsg(
- i18n("Transmission completed, %n new message.",
- "Transmission completed, %n new messages.", mTotalNewMailsArrived));
+ KMBroadcastStatus::instance()->setStatusMsgTransmissionCompleted( \
mTotalNewMailsArrived ); emit checkedMail(newMailArrived, interactive);
moreThanOneAccount = false;
mTotalNewMailsArrived = 0;
Index: kmail/kmbroadcaststatus.cpp
===================================================================
RCS file: /home/kde/kdepim/kmail/kmbroadcaststatus.cpp,v
retrieving revision 1.20
diff -u -3 -p -r1.20 kmbroadcaststatus.cpp
--- kmail/kmbroadcaststatus.cpp 5 Jun 2002 11:56:30 -0000 1.20
+++ kmail/kmbroadcaststatus.cpp 22 Feb 2003 18:01:48 -0000
@@ -18,6 +18,7 @@
#include <klocale.h>
#include <qlayout.h>
#include <qwidgetstack.h>
+#include <qdatetime.h>
//-----------------------------------------------------------------------------
KMBroadcastStatus* KMBroadcastStatus::instance_ = 0;
@@ -37,6 +38,35 @@ KMBroadcastStatus::KMBroadcastStatus()
void KMBroadcastStatus::setStatusMsg( const QString& message )
{
emit statusMsg( message );
+}
+
+void KMBroadcastStatus::setStatusMsgTransmissionCompleted( int numMessages, int \
numBytes, int numBytesRead, int numBytesToRead, bool mLeaveOnServer ) +{
+ QString statusMsg;
+ if ( numMessages > 0 ) {
+ if ( numBytes != -1 ) {
+ if (numBytesToRead != numBytes && mLeaveOnServer)
+ statusMsg = i18n("Transmission complete. %n new message in %1 KB "
+ "(%2 KB remaining on the server).",
+ "Transmission complete. %n new messages in %1 KB "
+ "(%2 KB remaining on the server).",
+ numMessages)
+ .arg(numBytesRead/1024).arg(numBytes/1024);
+ else
+ statusMsg = i18n("Transmission complete. %n message in %1 KB.",
+ "Transmission complete. %n messages in %1 KB.",
+ numMessages)
+ .arg(numBytesRead/1024);
+ } else
+ statusMsg = i18n("Transmission complete. %n new message.",
+ "Transmission complete. %n new messages.", numMessages);
+ } else
+ statusMsg = i18n("Transmission complete. No new messages.");
+
+ KLocale locale("kmail");
+ statusMsg.append( " (" + locale.formatDateTime( QDateTime::currentDateTime() ) + \
")" ); + setStatusMsg( statusMsg );
+
}
void KMBroadcastStatus::setStatusProgressEnable( const QString &id,
Index: kmail/kmbroadcaststatus.h
===================================================================
RCS file: /home/kde/kdepim/kmail/kmbroadcaststatus.h,v
retrieving revision 1.6
diff -u -3 -p -r1.6 kmbroadcaststatus.h
--- kmail/kmbroadcaststatus.h 10 May 2002 16:47:54 -0000 1.6
+++ kmail/kmbroadcaststatus.h 22 Feb 2003 18:01:49 -0000
@@ -36,6 +36,8 @@ public:
static KMBroadcastStatus *instance();
/** Emit an update status bar signal */
void setStatusMsg( const QString& );
+ /** Sets a transmission completed status bar message */
+ void setStatusMsgTransmissionCompleted( int, int numBytes = -1, int numBytesRead = \
-1, int numBytesToRead = -1, bool mLeaveOnServer = FALSE ); /** Emit an enable \
progress widget(s) in status bar(s) signal */ void setStatusProgressEnable( const \
QString&, bool ); /** Emit an update progress widget(s) percent completed signal */
_______________________________________________
KMail Developers mailing list
kmail@mail.kde.org
http://mail.kde.org/mailman/listinfo/kmail
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic