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

kmailtransport

  • kde-4.x
  • pim
  • kmailtransport
  • src
  • kmailtransportakonadi
filteractionjob_p.h
Go to the documentation of this file.
1 /*
2  Copyright (c) 2009 Constantin Berzan <[email protected]>
3 
4  This library is free software; you can redistribute it and/or modify it
5  under the terms of the GNU Library General Public License as published by
6  the Free Software Foundation; either version 2 of the License, or (at your
7  option) any later version.
8 
9  This library is distributed in the hope that it will be useful, but WITHOUT
10  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11  FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public
12  License for more details.
13 
14  You should have received a copy of the GNU Library General Public License
15  along with this library; see the file COPYING.LIB. If not, write to the
16  Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
17  02110-1301, USA.
18 */
19 
20 #ifndef MAILTRANSPORT_FILTERACTIONJOB_P_H
21 #define MAILTRANSPORT_FILTERACTIONJOB_P_H
22 
23 #include <mailtransportakonadi_export.h>
24 
25 #include <item.h>
26 #include <transactionsequence.h>
27 
28 namespace Akonadi {
29 class Collection;
30 class ItemFetchScope;
31 class Job;
32 
33 class FilterActionJob;
34 
74 class MAILTRANSPORTAKONADI_EXPORT FilterAction
75 {
76 public:
82  virtual ~FilterAction();
83 
91  virtual Akonadi::ItemFetchScope fetchScope() const = 0;
92 
97  virtual bool itemAccepted(const Akonadi::Item &item) const = 0;
98 
105  virtual Akonadi::Job *itemAction(const Akonadi::Item &item, Akonadi::FilterActionJob *parent) const = 0;
106 };
107 
129 class MAILTRANSPORTAKONADI_EXPORT FilterActionJob : public TransactionSequence
130 {
131  Q_OBJECT
132 
133 public:
141  FilterActionJob(const Item &item, FilterAction *functor, QObject *parent = nullptr);
142 
150  FilterActionJob(const Item::List &items, FilterAction *functor, QObject *parent = nullptr);
151 
160  FilterActionJob(const Collection &collection, FilterAction *functor, QObject *parent = nullptr);
161 
165  ~FilterActionJob() override;
166 
167 protected:
168  void doStart() override;
169 
170 private:
171  //@cond PRIVATE
172  class Private;
173  Private *const d;
174  //@endcond
175 };
176 } // namespace Akonadi
177 
178 #endif // AKONADI_FILTERACTIONJOB_H
Akonadi::FilterActionJob
Job to filter and apply an action on a set of items.
Definition: filteractionjob_p.h:129
QObject
TransactionSequence
Akonadi::FilterAction
Base class for a filter/action for FilterActionJob.
Definition: filteractionjob_p.h:74
This file is part of the KDE documentation.
Documentation copyright © 1996-2019 The KDE developers.
Generated on Wed Dec 11 2019 06:51:08 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

kmailtransport

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

pim API Reference

Skip menu "pim API Reference"
  • akonadi-calendar-tools
  •   konsolekalendar
  • akregator
  •   src
  • kalarmcal
  •   src
  •     lib
  • kdepim-runtime
  •   agents
  •   src
  • kleopatra
  •   src
  • kmailtransport
  • knotes
  • kontact
  • kontactinterface
  • kpimtextedit
  • ksmtp
  • ktnef
  • libkgapi
  • libkleo
  •   src
  •     src
  •     src

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