Add my copyright to files I've modified.
[synfig.git] / synfig-core / trunk / src / synfig / canvas.h
index 73a6193..8c91385 100644 (file)
@@ -2,10 +2,11 @@
 /*!    \file canvas.h
 **     \brief Canvas Class Implementation
 **
-**     $Id: canvas.h,v 1.1.1.1 2005/01/04 01:23:14 darco Exp $
+**     $Id$
 **
 **     \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 <list>
 #include <ETL/handle>
 #include <sigc++/signal.h>
+#include <sigc++/connection.h>
 
 #include "vector.h"
 #include "string.h"
@@ -68,7 +70,7 @@ public:
 
        typedef std::list<Handle> 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<String,std::set<etl::handle<Layer> > > group_db_;
 
+       //! Layer Connection database
+       std::map<etl::loose_handle<Layer>,std::vector<sigc::connection> > connections_;
+
        /*
  -- ** -- S I G N A L S -------------------------------------------------------
        */
@@ -380,7 +385,7 @@ public:
        //! \writeme
        void add_value_node(ValueNode::Handle x, const String &id);
 
-       //! \writeme
+       //! writeme
        //void rename_value_node(ValueNode::Handle x, const String &id);
 
        //! \writeme
@@ -423,7 +428,7 @@ public:
        //! Creates a new child canvas, and returns its handle
        Handle new_child_canvas();
 
-       //! Creates a new child canvas with an ID of \aid, and returns its handle
+       //! Creates a new child canvas with an ID of \a id, and returns its handle
        Handle new_child_canvas(const String &id);
 
        //! Adds the given canvas as a child
@@ -469,13 +474,15 @@ public:
 private:
        void add_group_pair(String group, etl::handle<Layer> layer);
        void remove_group_pair(String group, etl::handle<Layer> layer);
+       void add_connection(etl::loose_handle<Layer> layer, sigc::connection connection);
+       void disconnect_connections(etl::loose_handle<Layer> 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