diff --git a/src/display/canvas-temporary-item-list.h b/src/display/canvas-temporary-item-list.h
--- /dev/null
@@ -0,0 +1,58 @@
+#ifndef INKSCAPE_CANVAS_TEMPORARY_ITEM_LIST_H\r
+#define INKSCAPE_CANVAS_TEMPORARY_ITEM_LIST_H\r
+\r
+/** \file\r
+ * Provides a class that can contain active TemporaryItem's on a desktop\r
+ *\r
+ * Authors:\r
+ * Johan Engelen\r
+ *\r
+ * Copyright (C) Johan Engelen 2008 <j.b.c.engelen@utwente.nl>\r
+ *\r
+ * Released under GNU GPL, read the file 'COPYING' for more information\r
+ */\r
+\r
+#include "forward.h"\r
+#include "display/display-forward.h"\r
+#include <list>\r
+\r
+namespace Inkscape {\r
+namespace Display {\r
+\r
+class TemporaryItem;\r
+\r
+class TemporaryItemList {\r
+public:\r
+ TemporaryItemList(SPDesktop *desktop);\r
+ virtual ~TemporaryItemList();\r
+\r
+ TemporaryItem* add_item (SPCanvasItem *item, guint lifetime);\r
+ void delete_item (TemporaryItem * tempitem);\r
+\r
+protected:\r
+ SPDesktop *desktop; /** Desktop we are on. */\r
+\r
+ std::list<TemporaryItem *> itemlist; /** list of temp items */ \r
+\r
+ void _item_timeout (TemporaryItem * tempitem);\r
+\r
+private:\r
+ TemporaryItemList(const TemporaryItemList&);\r
+ TemporaryItemList& operator=(const TemporaryItemList&);\r
+};\r
+\r
+} //namespace Display\r
+} //namespace Inkscape\r
+\r
+#endif\r
+\r
+/*\r
+ Local Variables:\r
+ mode:c++\r
+ c-file-style:"stroustrup"\r
+ c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))\r
+ indent-tabs-mode:nil\r
+ fill-column:99\r
+ End:\r
+*/\r
+// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4 :\r