X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-core%2Ftrunk%2Fsrc%2Fsynfig%2Fcanvas.h;h=8c913855b2060ed53d5a3e8fb3356a3357979dea;hb=7a8e75cef2a63f9e7e0b57807afb239279053280;hp=470b7c9366a2d7c6f09683220e6c0d8ac3bce9a0;hpb=188d044b0046861cbdf33514819dae0720405fb2;p=synfig.git diff --git a/synfig-core/trunk/src/synfig/canvas.h b/synfig-core/trunk/src/synfig/canvas.h index 470b7c9..8c91385 100644 --- a/synfig-core/trunk/src/synfig/canvas.h +++ b/synfig-core/trunk/src/synfig/canvas.h @@ -6,6 +6,7 @@ ** ** \legal ** Copyright (c) 2002-2005 Robert B. Quattlebaum Jr., Adrian Bentley +** Copyright (c) 2007 Chris Moore ** ** This package is free software; you can redistribute it and/or ** modify it under the terms of the GNU General Public License as @@ -31,6 +32,7 @@ #include #include #include +#include #include "vector.h" #include "string.h" @@ -68,7 +70,7 @@ public: typedef std::list Children; - friend void synfig::optimize_layers(Context, Canvas::Handle); + friend void synfig::optimize_layers(Context, Canvas::Handle, bool seen_motion_blur); /* -- ** -- D A T A ------------------------------------------------------------- @@ -141,6 +143,9 @@ private: //! Layer Group database std::map > > group_db_; + //! Layer Connection database + std::map,std::vector > connections_; + /* -- ** -- S I G N A L S ------------------------------------------------------- */ @@ -469,13 +474,15 @@ public: private: void add_group_pair(String group, etl::handle layer); void remove_group_pair(String group, etl::handle layer); + void add_connection(etl::loose_handle layer, sigc::connection connection); + void disconnect_connections(etl::loose_handle layer); protected: virtual void on_changed(); virtual void get_times_vfunc(Node::time_set &set) const; }; // END of class Canvas -void optimize_layers(Context context, Canvas::Handle op_canvas); +void optimize_layers(Context context, Canvas::Handle op_canvas, bool seen_motion_blur=false); }; // END of namespace synfig