author | harlekin <harlekin> | 2004-01-03 20:49:34 (UTC) |
---|---|---|
committer | harlekin <harlekin> | 2004-01-03 20:49:34 (UTC) |
commit | 02b7e56d865847ce8f4a35b7075f7b3bb7b0de76 (patch) (side-by-side diff) | |
tree | f8e0272523f9080ef2dee6901545febf854b2122 /noncore/net/mail | |
parent | a89470252ffae1670e12ef5d81db08d0e27af265 (diff) | |
download | opie-02b7e56d865847ce8f4a35b7075f7b3bb7b0de76.zip opie-02b7e56d865847ce8f4a35b7075f7b3bb7b0de76.tar.gz opie-02b7e56d865847ce8f4a35b7075f7b3bb7b0de76.tar.bz2 |
communicate outgoing mails status to the QPE/Pim channel ( to which the todayplugin listens for example)
-rw-r--r-- | noncore/net/mail/libmailwrapper/smtpwrapper.cpp | 22 | ||||
-rw-r--r-- | noncore/net/mail/libmailwrapper/smtpwrapper.h | 10 | ||||
-rw-r--r-- | noncore/net/mail/opiemail.cpp | 3 | ||||
-rw-r--r-- | noncore/net/mail/smtpwrapper.cpp | 22 | ||||
-rw-r--r-- | noncore/net/mail/smtpwrapper.h | 10 |
5 files changed, 67 insertions, 0 deletions
diff --git a/noncore/net/mail/libmailwrapper/smtpwrapper.cpp b/noncore/net/mail/libmailwrapper/smtpwrapper.cpp index 30c0707..7e03af9 100644 --- a/noncore/net/mail/libmailwrapper/smtpwrapper.cpp +++ b/noncore/net/mail/libmailwrapper/smtpwrapper.cpp @@ -9,2 +9,5 @@ +#include <qpe/config.h> +#include <qpe/qcopenvelope_qws.h> + #include <libetpan/libetpan.h> @@ -25,2 +28,12 @@ SMTPwrapper::SMTPwrapper( Settings *s ) settings = s; + Config cfg( "mail" ); + cfg.setGroup( "Status" ); + m_queuedMail = cfg.readNumEntry( "outgoing", 0 ); + emit queuedMails( m_queuedMail ); + connect( this, SIGNAL( queuedMails( int ) ), this, SLOT( emitQCop( int ) ) ); +} + +void SMTPwrapper::emitQCop( int queued ) { + QCopEnvelope env( "QPE/Pim", "outgoingMails(int)" ); + env << queued; } @@ -509,2 +522,6 @@ void SMTPwrapper::smtpSend( mailmime *mail,bool later, SMTPaccount *smtp ) if (data) free( data ); + Config cfg( "mail" ); + cfg.setGroup( "Status" ); + cfg.writeEntry( "outgoing", ++m_queuedMail ); + emit queuedMails( m_queuedMail ); return; @@ -702,2 +719,7 @@ bool SMTPwrapper::flushOutbox(SMTPaccount*smtp) } + Config cfg( "mail" ); + cfg.setGroup( "Status" ); + m_queuedMail = 0; + cfg.writeEntry( "outgoing", m_queuedMail ); + emit queuedMails( m_queuedMail ); sendProgress->hide(); diff --git a/noncore/net/mail/libmailwrapper/smtpwrapper.h b/noncore/net/mail/libmailwrapper/smtpwrapper.h index 0535983..05becf2 100644 --- a/noncore/net/mail/libmailwrapper/smtpwrapper.h +++ b/noncore/net/mail/libmailwrapper/smtpwrapper.h @@ -33,2 +33,6 @@ public: static progressMailSend*sendProgress; + +signals: + void queuedMails( int ); + protected: @@ -58,2 +62,8 @@ protected: int sendQueuedMail(MBOXwrapper*wrap,SMTPaccount*smtp,RecMail*which); + + int m_queuedMail; + +protected slots: + void emitQCop( int queued ); + }; diff --git a/noncore/net/mail/opiemail.cpp b/noncore/net/mail/opiemail.cpp index e35f5b6..54453b7 100644 --- a/noncore/net/mail/opiemail.cpp +++ b/noncore/net/mail/opiemail.cpp @@ -27,2 +27,5 @@ OpieMail::OpieMail( QWidget *parent, const char *name, WFlags flags ) #endif + + + } diff --git a/noncore/net/mail/smtpwrapper.cpp b/noncore/net/mail/smtpwrapper.cpp index 30c0707..7e03af9 100644 --- a/noncore/net/mail/smtpwrapper.cpp +++ b/noncore/net/mail/smtpwrapper.cpp @@ -9,2 +9,5 @@ +#include <qpe/config.h> +#include <qpe/qcopenvelope_qws.h> + #include <libetpan/libetpan.h> @@ -25,2 +28,12 @@ SMTPwrapper::SMTPwrapper( Settings *s ) settings = s; + Config cfg( "mail" ); + cfg.setGroup( "Status" ); + m_queuedMail = cfg.readNumEntry( "outgoing", 0 ); + emit queuedMails( m_queuedMail ); + connect( this, SIGNAL( queuedMails( int ) ), this, SLOT( emitQCop( int ) ) ); +} + +void SMTPwrapper::emitQCop( int queued ) { + QCopEnvelope env( "QPE/Pim", "outgoingMails(int)" ); + env << queued; } @@ -509,2 +522,6 @@ void SMTPwrapper::smtpSend( mailmime *mail,bool later, SMTPaccount *smtp ) if (data) free( data ); + Config cfg( "mail" ); + cfg.setGroup( "Status" ); + cfg.writeEntry( "outgoing", ++m_queuedMail ); + emit queuedMails( m_queuedMail ); return; @@ -702,2 +719,7 @@ bool SMTPwrapper::flushOutbox(SMTPaccount*smtp) } + Config cfg( "mail" ); + cfg.setGroup( "Status" ); + m_queuedMail = 0; + cfg.writeEntry( "outgoing", m_queuedMail ); + emit queuedMails( m_queuedMail ); sendProgress->hide(); diff --git a/noncore/net/mail/smtpwrapper.h b/noncore/net/mail/smtpwrapper.h index 0535983..05becf2 100644 --- a/noncore/net/mail/smtpwrapper.h +++ b/noncore/net/mail/smtpwrapper.h @@ -33,2 +33,6 @@ public: static progressMailSend*sendProgress; + +signals: + void queuedMails( int ); + protected: @@ -58,2 +62,8 @@ protected: int sendQueuedMail(MBOXwrapper*wrap,SMTPaccount*smtp,RecMail*which); + + int m_queuedMail; + +protected slots: + void emitQCop( int queued ); + }; |