2 Copyright (c) 2007 Volker Krause <vkrause@kde.org>
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.
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.
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
20 #ifndef MAILVIEWER_MIMETREEMODEL_H
21 #define MAILVIEWER_MIMETREEMODEL_H
23 #include <QAbstractItemModel>
29 namespace MessageViewer
{
32 A model representing the mime part tree of a message.
34 class MimeTreeModel
: public QAbstractItemModel
40 ContentIndexRole
= Qt::UserRole
+ 1,
44 AlternativeBodyPartRole
,
45 UserRole
= Qt::UserRole
+ 100
47 explicit MimeTreeModel( QObject
*parent
= 0 );
50 void setRoot( KMime::Content
*root
);
52 KMime::Content
* root();
54 QModelIndex
index( int row
, int column
, const QModelIndex
&parent
= QModelIndex() ) const;
55 QModelIndex
parent( const QModelIndex
&index
) const;
56 int rowCount( const QModelIndex
&parent
= QModelIndex() ) const;
57 int columnCount( const QModelIndex
&parent
= QModelIndex() ) const;
58 QVariant
data( const QModelIndex
&index
, int role
= Qt::DisplayRole
) const;
59 QVariant
headerData( int section
, Qt::Orientation orientation
, int role
= Qt::DisplayRole
) const;