1 /**************************************************************************
4 Copyright (C) 2010 Heli Hyvättinen
6 This program is free software: you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation, either version 3 of the License, or
9 (at your option) any later version.
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
16 You should have received a copy of the GNU General Public License
17 along with this program. If not, see <http://www.gnu.org/licenses/>.
19 **************************************************************************/
25 #ifndef CURRENTALERTSTABLEMODEL_H
26 #define CURRENTALERTSTABLEMODEL_H
28 #include <QAbstractTableModel>
31 class CurrentAlertsTableModel : public QAbstractTableModel
35 explicit CurrentAlertsTableModel(QObject *parent = 0);
37 int rowCount(const QModelIndex &parent) const;
39 int columnCount(const QModelIndex &parent) const;
41 QVariant data(const QModelIndex &index, int role) const;
43 QModelIndex giveIndexForTimer(Timer * ptimer);
49 void addTimers(QList <Timer *> timers);
51 void refreshTimeColumn ();
53 void startTimer(QModelIndex index);
54 void snoozeTimer(QModelIndex index);
55 void stopTimer(QModelIndex index);
58 QList <Timer * > currentTimers_;
60 static const int numberOfColumns_ = 3;
61 static const int alertTextColumnNumber_ = 0;
62 static const int timeRemainingColumnNumber_ = 1;
63 static const int statusColumnNumber_ = 2;
67 #endif // CURRENTALERTSTABLEMODEL_H