cd4bcfe995ff04d9f28fea2b17125b194588868f
1 #ifndef INKSCAPE_CANVAS_TEMPORARY_ITEM_LIST_H\r
2 #define INKSCAPE_CANVAS_TEMPORARY_ITEM_LIST_H\r
3 \r
4 /** \file\r
5 * Provides a class that can contain active TemporaryItem's on a desktop\r
6 *\r
7 * Authors:\r
8 * Johan Engelen\r
9 *\r
10 * Copyright (C) Johan Engelen 2008 <j.b.c.engelen@utwente.nl>\r
11 *\r
12 * Released under GNU GPL, read the file 'COPYING' for more information\r
13 */\r
14 \r
15 #include "forward.h"\r
16 #include "display/display-forward.h"\r
17 #include <list>\r
18 \r
19 namespace Inkscape {\r
20 namespace Display {\r
21 \r
22 class TemporaryItem;\r
23 \r
24 class TemporaryItemList {\r
25 public:\r
26 TemporaryItemList(SPDesktop *desktop);\r
27 virtual ~TemporaryItemList();\r
28 \r
29 TemporaryItem* add_item (SPCanvasItem *item, guint lifetime);\r
30 void delete_item (TemporaryItem * tempitem);\r
31 \r
32 protected:\r
33 SPDesktop *desktop; /** Desktop we are on. */\r
34 \r
35 std::list<TemporaryItem *> itemlist; /** list of temp items */ \r
36 \r
37 void _item_timeout (TemporaryItem * tempitem);\r
38 \r
39 private:\r
40 TemporaryItemList(const TemporaryItemList&);\r
41 TemporaryItemList& operator=(const TemporaryItemList&);\r
42 };\r
43 \r
44 } //namespace Display\r
45 } //namespace Inkscape\r
46 \r
47 #endif\r
48 \r
49 /*\r
50 Local Variables:\r
51 mode:c++\r
52 c-file-style:"stroustrup"\r
53 c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))\r
54 indent-tabs-mode:nil\r
55 fill-column:99\r
56 End:\r
57 */\r
58 // vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4 :\r