Code

NEW: temporary on-canvas indicators
[inkscape.git] / src / desktop.h
index 84b8297268f83672b71f2a3c65e6c86bb1bb7fa9..bb05331b6add722ff1cd3f0565a14736467227e9 100644 (file)
@@ -72,6 +72,10 @@ namespace Inkscape {
   namespace Whiteboard {
       class SessionManager;
   }
+  namespace Display {
+      class TemporaryItemList;
+      class TemporaryItem;
+  }
 }
 
 /**
@@ -90,6 +94,8 @@ struct SPDesktop : public Inkscape::UI::View::View
     Inkscape::LayerManager    *layer_manager;
     Inkscape::EventLog        *event_log;
 
+    Inkscape::Display::TemporaryItemList *temporary_item_list;
+
     SPCanvasItem  *acetate;
     SPCanvasGroup *main;
     SPCanvasGroup *gridgroup;
@@ -97,6 +103,7 @@ struct SPDesktop : public Inkscape::UI::View::View
     SPCanvasItem  *drawing;
     SPCanvasGroup *sketch;
     SPCanvasGroup *controls;
+    SPCanvasGroup *tempgroup;   ///< contains temporary canvas items
     SPCanvasItem  *table;       ///< outside-of-page background
     SPCanvasItem  *page;        ///< page background
     SPCanvasItem  *page_border; ///< page border
@@ -173,6 +180,9 @@ struct SPDesktop : public Inkscape::UI::View::View
         return _guides_message_context;
     }
 
+    Inkscape::Display::TemporaryItem * add_temporary_canvasitem (SPCanvasItem *item, guint lifetime);
+    void remove_temporary_canvasitem (Inkscape::Display::TemporaryItem * tempitem);
+
     void setDisplayModeNormal();
     void setDisplayModeOutline();
     void displayModeToggle();