1
/* This file is part of Zanshin Todo.
3
Copyright 2008 Kevin Ottens <ervin@kde.org>
5
This program is free software; you can redistribute it and/or
6
modify it under the terms of the GNU General Public License as
7
published by the Free Software Foundation; either version 2 of
8
the License or (at your option) version 3 or any later version
9
accepted by the membership of KDE e.V. (or its successor approved
10
by the membership of KDE e.V.), which shall act as a proxy
11
defined in Section 14 of version 3 of the license.
13
This program is distributed in the hope that it will be useful,
14
but WITHOUT ANY WARRANTY; without even the implied warranty of
15
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
GNU General Public License for more details.
18
You should have received a copy of the GNU General Public License
19
along with this program; if not, write to the Free Software
20
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
24
#ifndef ZANSHIN_ACTIONLISTMODEL_H
25
#define ZANSHIN_ACTIONLISTMODEL_H
27
#include <QtGui/QSortFilterProxyModel>
34
class ActionListModel : public QSortFilterProxyModel
47
ActionListModel(QObject *parent = 0);
48
virtual ~ActionListModel();
50
Akonadi::Item itemForIndex(const QModelIndex &index) const;
52
virtual Qt::ItemFlags flags(const QModelIndex &index) const;
54
virtual QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const;
55
virtual QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const;
57
void setMode(Mode mode);
60
void setSourceFocusIndex(const QModelIndex &sourceIndex);
61
QModelIndex sourceFocusIndex() const;
63
bool isInFocus(const QModelIndex &index) const;
66
virtual bool filterAcceptsColumn(int sourceColumn, const QModelIndex &sourceParent) const;
67
virtual bool filterAcceptsRow(int sourceRow, const QModelIndex &sourceParent) const;
68
virtual bool lessThan(const QModelIndex &left, const QModelIndex &right) const;
71
QPersistentModelIndex m_sourceFocusIndex;