Relieve KMSender from the need to call KMSendProc::preSendInit(). It's now called reset(), private, and called form the NVI KMSendProc::send(). Old KMSendProc::send() is now KMSendProc::doSend(). Also renamed mMsg to mLastErrorMessage and KMSendProc::message() to lastErrorMessage()

svn path=/trunk/KDE/kdepim/; revision=430516
wilder-work
Marc Mutz 21 years ago
parent b1cfca50a8
commit c6757d80a4
  1. 24
      kmsender.cpp
  2. 26
      kmsender_p.h

@ -547,7 +547,6 @@ void KMSender::doSendMsgAux()
// start sending the current message
mSendProc->preSendInit();
setStatusMsg(i18n("%3: subject of message","Sending message %1 of %2: %3")
.arg(mSentMessages+mFailedMessages+1).arg(mTotalMessages)
.arg(mCurrentMsg->subject()));
@ -627,7 +626,7 @@ void KMSender::slotIdle()
QString msg;
QString errString;
if (mSendProc)
errString = mSendProc->message();
errString = mSendProc->lastErrorMessage();
if (mSendAborted) {
// sending of message aborted
@ -816,18 +815,21 @@ void KMSender::setStatusByLink(const KMMessage *aMsg)
//=============================================================================
//=============================================================================
KMSendProc::KMSendProc(KMSender* aSender): QObject()
KMSendProc::KMSendProc( KMSender * sender )
: QObject( 0 ),
mSender( sender ),
mLastErrorMessage(),
mSendOk( false ),
mSending( false )
{
mSender = aSender;
preSendInit();
}
//-----------------------------------------------------------------------------
void KMSendProc::preSendInit(void)
void KMSendProc::reset()
{
mSending = FALSE;
mSendOk = FALSE;
mMsg = QString::null;
mLastErrorMessage = QString::null;
}
//-----------------------------------------------------------------------------
@ -835,7 +837,7 @@ void KMSendProc::failed(const QString &aMsg)
{
mSending = FALSE;
mSendOk = FALSE;
mMsg = aMsg;
mLastErrorMessage = aMsg;
}
//-----------------------------------------------------------------------------
@ -913,7 +915,7 @@ void KMSendSendmail::abort()
idle();
}
bool KMSendSendmail::send( const QString & sender, const QStringList & to, const QStringList & cc, const QStringList & bcc, const QCString & message ) {
bool KMSendSendmail::doSend( const QString & sender, const QStringList & to, const QStringList & cc, const QStringList & bcc, const QCString & message ) {
mMailerProc->clearArguments();
*mMailerProc << mSender->transportInfo()->host
<< "-i" << "-f" << sender
@ -966,7 +968,7 @@ void KMSendSendmail::receivedStderr(KProcess *proc, char *buffer, int buflen)
{
assert(proc!=0);
Q_UNUSED( proc );
mMsg.replace(mMsg.length(), buflen, buffer);
mLastErrorMessage.replace(mLastErrorMessage.length(), buflen, buffer);
}
@ -1001,7 +1003,7 @@ KMSendSMTP::~KMSendSMTP()
if (mJob) mJob->kill();
}
bool KMSendSMTP::send( const QString & sender, const QStringList & to, const QStringList & cc, const QStringList & bcc, const QCString & message ) {
bool KMSendSMTP::doSend( const QString & sender, const QStringList & to, const QStringList & cc, const QStringList & bcc, const QCString & message ) {
QString query = "headers=0&from=";
query += KURL::encode_string( sender );

@ -32,11 +32,10 @@ public:
/** Initialize sending of one or more messages. */
virtual void start();
/** Initializes variables directly before send() is called. */
virtual void preSendInit();
/** Send given message. May return before message is sent. */
virtual bool send( const QString & sender, const QStringList & to, const QStringList & cc, const QStringList & bcc, const QCString & message ) = 0;
bool send( const QString & sender, const QStringList & to, const QStringList & cc, const QStringList & bcc, const QCString & message ) {
reset(); return doSend( sender, to, cc, bcc, message );
}
/** Cleanup after sending messages. */
void finish() { doFinish(); deleteLater(); }
@ -49,7 +48,7 @@ public:
bool sendOk() const { return mSendOk; }
/** Returns error message of last call of failed(). */
QString message() const { return mMsg; }
QString lastErrorMessage() const { return mLastErrorMessage; }
signals:
/** Emitted when the current message is sent or an error occurred. */
@ -68,13 +67,18 @@ protected:
/** Informs the user about what is going on. */
void statusMsg(const QString&);
private:
void reset();
private:
virtual void doFinish() = 0;
virtual bool doSend( const QString & sender, const QStringList & to, const QStringList & cc, const QStringList & bcc, const QCString & message ) = 0;
protected:
bool mSendOk, mSending;
QString mMsg;
KMSender* mSender;
QString mLastErrorMessage;
bool mSendOk : 1;
bool mSending : 1;
};
@ -86,7 +90,6 @@ public:
KMSendSendmail(KMSender*);
~KMSendSendmail();
void start();
bool send( const QString & sender, const QStringList & to, const QStringList & cc, const QStringList & bcc, const QCString & message );
void abort();
protected slots:
@ -95,7 +98,10 @@ protected slots:
void sendmailExited(KProcess*);
private:
/** implemented from KMSendProc */
void doFinish();
/** implemented from KMSendProc */
bool doSend( const QString & sender, const QStringList & to, const QStringList & cc, const QStringList & bcc, const QCString & message );
private:
QCString mMsgStr;
@ -112,7 +118,6 @@ public:
KMSendSMTP(KMSender *sender);
~KMSendSMTP();
bool send( const QString & sender, const QStringList & to, const QStringList & cc, const QStringList & bcc, const QCString & message );
void abort();
private slots:
@ -123,6 +128,9 @@ private slots:
private:
/** implemented from KMSendProc */
void doFinish();
/** implemented from KMSendProc */
bool doSend( const QString & sender, const QStringList & to, const QStringList & cc, const QStringList & bcc, const QCString & message );
void cleanup();
private:

Loading…
Cancel
Save