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