File indexing completed on 2024-06-23 05:20:28

0001 /*  -*- mode: C++; c-file-style: "gnu" -*-
0002     bodypartformatterfactory.h
0003 
0004     This file is part of KMail, the KDE mail client.
0005     Copyright (c) 2004 Marc Mutz <mutz@kde.org>,
0006                        Ingo Kloecker <kloecker@kde.org>
0007 
0008     KMail is free software; you can redistribute it and/or modify it
0009     under the terms of the GNU General Public License as published by
0010     the Free Software Foundation; either version 2 of the License, or
0011     (at your option) any later version.
0012 
0013     KMail is distributed in the hope that it will be useful, but
0014     WITHOUT ANY WARRANTY; without even the implied warranty of
0015     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
0016     General Public License for more details.
0017 
0018     You should have received a copy of the GNU General Public License
0019     along with this program; if not, write to the Free Software
0020     Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
0021 
0022     In addition, as a special exception, the copyright holders give
0023     permission to link the code of this program with any edition of
0024     the Qt library by Trolltech AS, Norway (or with modified versions
0025     of Qt that use the same license as Qt), and distribute linked
0026     combinations including the two.  You must obey the GNU General
0027     Public License in all respects for all of the code used other than
0028     Qt.  If you modify this file, you may extend this exception to
0029     your version of the file, but you are not obligated to do so.  If
0030     you do not wish to do so, delete this exception statement from
0031     your version.
0032 */
0033 #pragma once
0034 
0035 namespace MimeTreeParser
0036 {
0037 class BodyPartFormatterBaseFactory;
0038 class ObjectTreeParser;
0039 
0040 class BodyPartFormatterBaseFactoryPrivate
0041 {
0042 public:
0043     BodyPartFormatterBaseFactoryPrivate(BodyPartFormatterBaseFactory *factory);
0044     ~BodyPartFormatterBaseFactoryPrivate();
0045 
0046     void setup();
0047     void messageviewer_create_builtin_bodypart_formatters();        //defined in bodypartformatter.cpp
0048     void insert(const char *type, const char *subtype, Interface::BodyPartFormatter *formatter);
0049 
0050     BodyPartFormatterBaseFactory *q;
0051     TypeRegistry *all;
0052     ObjectTreeParser *mOtp;
0053 };
0054 
0055 }