kmail

mboxjob.cpp
1 /*
2  *
3  * This file is part of KMail, the KDE mail client.
4  * Copyright (c) 2003 Zack Rusin <zack@kde.org>
5  *
6  * KMail is free software; you can redistribute it and/or modify it
7  * under the terms of the GNU General Public License, version 2, as
8  * published by the Free Software Foundation.
9  *
10  * KMail is distributed in the hope that it will be useful, but
11  * WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13  * General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License
16  * along with this program; if not, write to the Free Software
17  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18  *
19  * In addition, as a special exception, the copyright holders give
20  * permission to link the code of this program with any edition of
21  * the TQt library by Trolltech AS, Norway (or with modified versions
22  * of TQt that use the same license as TQt), and distribute linked
23  * combinations including the two. You must obey the GNU General
24  * Public License in all respects for all of the code used other than
25  * TQt. If you modify this file, you may extend this exception to
26  * your version of the file, but you are not obligated to do so. If
27  * you do not wish to do so, delete this exception statement from
28  * your version.
29  */
30 
31 #ifdef HAVE_CONFIG_H
32 #include <config.h>
33 #endif
34 
35 #include "mboxjob.h"
36 
37 #include "kmfoldermbox.h"
38 #include "kmfolder.h"
39 
40 #include <tdeapplication.h>
41 #include <kdebug.h>
42 #include <tqtimer.h>
43 #include <tqdatetime.h>
44 
45 namespace KMail {
46 
47 
48 //-----------------------------------------------------------------------------
49 MboxJob::MboxJob( KMMessage *msg, JobType jt , KMFolder *folder )
50  : FolderJob( msg, jt, folder )
51 {
52 }
53 
54 //-----------------------------------------------------------------------------
55 MboxJob::MboxJob( TQPtrList<KMMessage>& msgList, const TQString& sets,
56  JobType jt, KMFolder *folder )
57  : FolderJob( msgList, sets, jt, folder )
58 {
59 }
60 
61 //-----------------------------------------------------------------------------
62 MboxJob::~MboxJob()
63 {
64 }
65 
66 //-----------------------------------------------------------------------------
67 void
68 MboxJob::execute()
69 {
70  TQTimer::singleShot( 0, this, TQ_SLOT(startJob()) );
71 }
72 
73 //-----------------------------------------------------------------------------
74 void
75 MboxJob::setParent( const KMFolderMbox *parent )
76 {
77  mParent = const_cast<KMFolderMbox*>( parent );
78 }
79 
80 //-----------------------------------------------------------------------------
81 void
82 MboxJob::startJob()
83 {
84  KMMessage *msg = mMsgList.first();
85  assert( (msg && ( mParent || msg->parent() )) );
86  switch( mType ) {
87  case tGetMessage:
88  {
89  kdDebug(5006)<<msg<<endl;
90  kdDebug(5006)<<this<<endl;
91  kdDebug(5006)<<"Done"<<endl;
92  //KMMessage* msg = mParent->getMsg( mParent->find( mMsgList.first() ) );
93  msg->setComplete( true );
94  emit messageRetrieved( msg );
95  }
96  break;
97  case tDeleteMessage:
98  {
99  mParent->removeMsg( mMsgList );
100  }
101  break;
102  case tPutMessage:
103  {
104  mParent->addMsg( mMsgList.first() );
105  emit messageStored( mMsgList.first() );
106  }
107  break;
108  case tCopyMessage:
109  case tCreateFolder:
110  case tGetFolder:
111  case tListMessages:
112  kdDebug(5006)<<k_funcinfo<<"### Serious problem! "<<endl;
113  break;
114  default:
115  break;
116  }
117  //OK, we're done
118  //delete this;
119  deleteLater();
120 }
121 
122 }
123 
124 #include "mboxjob.moc"
Mail folder.
Definition: kmfolder.h:69
This is a Mime Message.
Definition: kmmessage.h:68
void setComplete(bool v)
Set if the message is a complete message.
Definition: kmmessage.h:869
folderdiaquotatab.h
Definition: aboutdata.cpp:40