• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdepim API Reference
  • KDE Home
  • Contact Us
 

mailcommon

  • sources
  • kde-4.12
  • kdepim
  • mailcommon
  • filter
filteractiondict.cpp
Go to the documentation of this file.
1 /*
2  * Copyright (c) 1996-1998 Stefan Taferner <taferner@kde.org>
3  *
4  * This program is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License as published by
6  * the Free Software Foundation; either version 2 of the License, or
7  * (at your option) any later version.
8  *
9  * This program is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12  * GNU General Public License for more details.
13  *
14  * You should have received a copy of the GNU General Public License
15  * along with this program; if not, write to the Free Software
16  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
17  *
18  */
19 
20 #include "filteractiondict.h"
21 
22 
23 #include "filteractionaddheader.h"
24 #include "filteractionaddtag.h"
25 #include "filteractionaddtoaddressbook.h"
26 #include "filteractionbeep.h"
27 #include "filteractioncopy.h"
28 #include "filteractiondelete.h"
29 #include "filteractionexec.h"
30 #include "filteractionforward.h"
31 #include "filteractionmove.h"
32 #include "filteractionpipethrough.h"
33 #include "filteractionplaysound.h"
34 #include "filteractionredirect.h"
35 #include "filteractionremoveheader.h"
36 #include "filteractionreplyto.h"
37 #include "filteractionrewriteheader.h"
38 #include "filteractionsendfakedisposition.h"
39 #include "filteractionsendreceipt.h"
40 #include "filteractionsetidentity.h"
41 #include "filteractionsetstatus.h"
42 #include "filteractionsettransport.h"
43 #include "filteractionunsetstatus.h"
44 
45 using namespace MailCommon;
46 
47 //=============================================================================
48 //
49 // Filter Action Dictionary
50 //
51 //=============================================================================
52 FilterActionDict::~FilterActionDict()
53 {
54  qDeleteAll( mList );
55 }
56 
57 void FilterActionDict::init()
58 {
59  insert( FilterActionMove::newAction );
60  insert( FilterActionCopy::newAction );
61  insert( FilterActionSetIdentity::newAction );
62  insert( FilterActionSetStatus::newAction );
63  insert( FilterActionAddTag::newAction );
64  insert( FilterActionSendFakeDisposition::newAction );
65  insert( FilterActionSetTransport::newAction );
66  insert( FilterActionReplyTo::newAction );
67  insert( FilterActionForward::newAction );
68  insert( FilterActionRedirect::newAction );
69  insert( FilterActionSendReceipt::newAction );
70  insert( FilterActionExec::newAction );
71  insert( FilterActionPipeThrough::newAction );
72  insert( FilterActionRemoveHeader::newAction );
73  insert( FilterActionAddHeader::newAction );
74  insert( FilterActionRewriteHeader::newAction );
75 #ifndef Q_OS_WINCE
76  insert( FilterActionPlaySound::newAction );
77 #endif
78  insert( FilterActionAddToAddressBook::newAction );
79  insert( FilterActionDelete::newAction);
80  insert( FilterActionBeep::newAction);
81  insert( FilterActionUnsetStatus::newAction );
82  // Register custom filter actions below this line.
83 }
84 
85 // The int in the QDict constructor (41) must be a prime
86 // and should be greater than the double number of FilterAction types
87 FilterActionDict::FilterActionDict()
88  : QMultiHash<QString, FilterActionDesc*>()
89 {
90  init();
91 }
92 
93 void FilterActionDict::insert( FilterActionNewFunc aNewFunc )
94 {
95  FilterAction *action = aNewFunc();
96  FilterActionDesc* desc = new FilterActionDesc;
97  desc->name = action->name();
98  desc->label = action->label();
99  desc->create = aNewFunc;
100 
101  QMultiHash<QString, FilterActionDesc*>::insert( desc->name, desc );
102  QMultiHash<QString, FilterActionDesc*>::insert( desc->label, desc );
103  mList.append( desc );
104 
105  delete action;
106 }
107 
108 const QList<FilterActionDesc*>& FilterActionDict::list() const
109 {
110  return mList;
111 }
112 
QMultiHash
filteractionreplyto.h
MailCommon::FilterActionDict::FilterActionDict
MAILCOMMON_EXPORT FilterActionDict()
Creates the filter action dictionary.
Definition: filteractiondict.cpp:87
MailCommon::FilterActionRewriteHeader::newAction
static FilterAction * newAction()
Definition: filteractionrewriteheader.cpp:34
MailCommon::FilterActionDict::list
MAILCOMMON_EXPORT const QList< FilterActionDesc * > & list() const
Provides read-only access to a list of all known filter actions.
Definition: filteractiondict.cpp:108
filteractionsendreceipt.h
MailCommon::FilterActionMove::newAction
static FilterAction * newAction()
Definition: filteractionmove.cpp:29
MailCommon::FilterActionSendFakeDisposition::newAction
static FilterAction * newAction()
Definition: filteractionsendfakedisposition.cpp:61
MailCommon::FilterActionSendReceipt::newAction
static FilterAction * newAction()
Definition: filteractionsendreceipt.cpp:62
MailCommon::FilterActionAddTag::newAction
static FilterAction * newAction()
Definition: filteractionaddtag.cpp:34
filteractionmove.h
MailCommon::FilterActionDesc::label
QString label
Definition: filteractiondict.h:38
MailCommon::FilterActionDict::~FilterActionDict
virtual MAILCOMMON_EXPORT ~FilterActionDict()
Destroys the filter action dictionary.
Definition: filteractiondict.cpp:52
filteractionunsetstatus.h
filteractionaddtoaddressbook.h
MailCommon::FilterAction
Abstract base class for mail filter actions.
Definition: filteraction.h:52
filteractionaddtag.h
MailCommon::FilterActionSetIdentity::newAction
static FilterAction * newAction()
Definition: filteractionsetidentity.cpp:35
filteractionsendfakedisposition.h
MailCommon::FilterActionPipeThrough::newAction
static FilterAction * newAction()
Definition: filteractionpipethrough.cpp:26
filteractionbeep.h
MailCommon::FilterActionPlaySound::newAction
static FilterAction * newAction()
Definition: filteractionplaysound.cpp:50
MailCommon::FilterActionSetTransport::newAction
static FilterAction * newAction()
Definition: filteractionsettransport.cpp:34
MailCommon::FilterActionExec::newAction
static FilterAction * newAction()
Definition: filteractionexec.cpp:41
filteractionforward.h
filteractioncopy.h
MailCommon::FilterActionCopy::newAction
static FilterAction * newAction()
Definition: filteractioncopy.cpp:58
filteractionrewriteheader.h
MailCommon::FilterAction::label
QString label() const
Returns i18n'd label, ie.
Definition: filteraction.cpp:45
MailCommon::FilterActionDelete::newAction
static FilterAction * newAction()
Definition: filteractiondelete.cpp:57
MailCommon::FilterAction::name
QString name() const
Returns identifier name, ie.
Definition: filteraction.cpp:50
MailCommon::FilterActionUnsetStatus::newAction
static FilterAction * newAction()
Definition: filteractionunsetstatus.cpp:24
MailCommon::FilterActionDict::insert
MAILCOMMON_EXPORT void insert(FilterActionNewFunc aNewFunc)
Overloaded member function, provided for convenience.
Definition: filteractiondict.cpp:93
MailCommon::FilterActionAddHeader::newAction
static FilterAction * newAction()
Definition: filteractionaddheader.cpp:196
MailCommon::FilterActionDesc::name
QString name
Definition: filteractiondict.h:38
MailCommon::FilterActionDesc
Auxiliary struct for FilterActionDict.
Definition: filteractiondict.h:36
MailCommon::FilterActionNewFunc
FilterAction *(* FilterActionNewFunc)(void)
Definition: filteractiondict.h:31
MailCommon::FilterActionReplyTo::newAction
static FilterAction * newAction()
Definition: filteractionreplyto.cpp:26
filteractionexec.h
filteractionredirect.h
MailCommon::FilterActionBeep::newAction
static FilterAction * newAction()
Definition: filteractionbeep.cpp:45
MailCommon::FilterActionRemoveHeader::newAction
static FilterAction * newAction()
Definition: filteractionremoveheader.cpp:29
filteractionsetstatus.h
filteractiondelete.h
MailCommon::FilterActionAddToAddressBook::newAction
static FilterAction * newAction()
Definition: filteractionaddtoaddressbook.cpp:37
filteractionaddheader.h
filteractionplaysound.h
filteractionremoveheader.h
MailCommon::FilterActionDesc::create
FilterActionNewFunc create
Definition: filteractiondict.h:39
MailCommon::FilterActionForward::newAction
static FilterAction * newAction()
Definition: filteractionforward.cpp:41
filteractionsettransport.h
filteractionpipethrough.h
MailCommon::FilterActionRedirect::newAction
static FilterAction * newAction()
Definition: filteractionredirect.cpp:33
filteractionsetidentity.h
MailCommon::FilterActionDict::init
virtual void init()
Populate the dictionary with all known FilterAction types.
Definition: filteractiondict.cpp:57
MailCommon::FilterActionSetStatus::newAction
static FilterAction * newAction()
Definition: filteractionsetstatus.cpp:26
filteractiondict.h
QList
This file is part of the KDE documentation.
Documentation copyright © 1996-2014 The KDE developers.
Generated on Tue Oct 14 2014 22:55:14 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

mailcommon

Skip menu "mailcommon"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Related Pages

kdepim API Reference

Skip menu "kdepim API Reference"
  • akonadi_next
  • akregator
  • blogilo
  • calendarsupport
  • console
  •   kabcclient
  •   konsolekalendar
  • kaddressbook
  • kalarm
  •   lib
  • kdgantt2
  • kjots
  • kleopatra
  • kmail
  • knode
  • knotes
  • kontact
  • korgac
  • korganizer
  • ktimetracker
  • libkdepim
  • libkleo
  • libkpgp
  • mailcommon
  • messagelist
  • messageviewer

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal