[project @ 2005-06-28 09:54:46 by unknown_lamer]
[clinton/bobotpp.git] / source / TodoList.H
CommitLineData
cb21075d 1// TodoList.H -*- C++ -*-
2// Copyright (c) 1998 Etienne BERNARD
3// Copyright (c) 2002 Clinton Ebadi
4
5// This program is free software; you can redistribute it and/or modify
6// it under the terms of the GNU General Public License as published by
7// the Free Software Foundation; either version 2 of the License, or
8// (at your option) any later version.
9
10// This program is distributed in the hope that it will be useful,
11// but WITHOUT ANY WARRANTY; without even the implied warranty of
12// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13// GNU General Public License for more details.
14
15// You should have received a copy of the GNU General Public License
16// along with this program; if not, write to the Free Software
39b022cb 17// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
cb21075d 18
19#ifndef TODOLIST_H
20#define TODOLIST_H
21
22#include <set>
23#include <ctime>
24#include <functional>
25
26#include "String.H"
27
28class TodoList;
29
30class TodoListItem {
31 String line;
32 std::time_t when;
33public:
34 TodoListItem(String l, std::time_t w)
35 : line(l), when(w) { }
36
37 bool operator<(const TodoListItem &t) const
38 { return when < t.when; }
39
40 friend class TodoList;
41};
42
43class TodoList {
44
45 std::multiset<TodoListItem, std::less<TodoListItem> > todoQueue;
46
47public:
48 TodoList();
49 ~TodoList();
50
51 void addDeban(String, String, std::time_t);
52
53 String getNext();
54};
55
56#endif