projects
/
synfig.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Use macros for the get static and set static members
[synfig.git]
/
synfig-core
/
src
/
synfig
/
canvas.h
diff --git
a/synfig-core/src/synfig/canvas.h
b/synfig-core/src/synfig/canvas.h
index
0a8423c
..
becfb10
100644
(file)
--- a/
synfig-core/src/synfig/canvas.h
+++ b/
synfig-core/src/synfig/canvas.h
@@
-215,7
+215,7
@@
private:
//! Layer Group database
std::map<String,std::set<etl::handle<Layer> > > group_db_;
//! Layer Group database
std::map<String,std::set<etl::handle<Layer> > > group_db_;
- //! Layer
Connection database
+ //! Layer
Signal Connection database. Seems to be unused.
std::map<etl::loose_handle<Layer>,std::vector<sigc::connection> > connections_;
/*
std::map<etl::loose_handle<Layer>,std::vector<sigc::connection> > connections_;
/*
@@
-426,7
+426,7
@@
public:
//! Sets the time for all the layers in the canvas
void set_time(Time t)const;
//! Sets the time for all the layers in the canvas
void set_time(Time t)const;
- //!
\writeme
+ //!
Returns the current time of the Canvas
Time get_time()const { return cur_time_; }
//! Returns the number of layers in the canvas
Time get_time()const { return cur_time_; }
//! Returns the number of layers in the canvas
@@
-465,16
+465,19
@@
public:
*/
ValueNode::ConstHandle find_value_node(const String &id)const;
*/
ValueNode::ConstHandle find_value_node(const String &id)const;
- //! \writeme
+ //! Adds a Value node by its Id.
+ /*! Throws an error if the Id is not
+ //! correct or the Value node is already exported
+ **/
void add_value_node(ValueNode::Handle x, const String &id);
//! writeme
//void rename_value_node(ValueNode::Handle x, const String &id);
void add_value_node(ValueNode::Handle x, const String &id);
//! writeme
//void rename_value_node(ValueNode::Handle x, const String &id);
- //!
\writem
e
+ //!
Removes a Value Node from the Canvas by its Handl
e
void remove_value_node(ValueNode::Handle x);
void remove_value_node(ValueNode::Handle x);
- //!
\writeme
+ //!
Removes a Value Node from the Canvas by its Id
void remove_value_node(const String &id) { remove_value_node(find_value_node(id)); }
//! Finds a child Canvas in the Canvas with the given \a name
void remove_value_node(const String &id) { remove_value_node(find_value_node(id)); }
//! Finds a child Canvas in the Canvas with the given \a name
@@
-517,43
+520,66
@@
public:
//! Adds the given canvas as a child
Handle add_child_canvas(Handle child_canvas, const String &id);
//! Adds the given canvas as a child
Handle add_child_canvas(Handle child_canvas, const String &id);
+ //! Remove Child Canvas by its handle. If Current canvas is a child of a parent
+ //! it ask to the parent to remove the Child canvas.
void remove_child_canvas(Handle child_canvas);
void remove_child_canvas(Handle child_canvas);
+ //! Finds a Layer by its position.
+ //! \see get_context()
etl::handle<Layer> find_layer(const Point &pos);
etl::handle<Layer> find_layer(const Point &pos);
+ //! Gets the depth of a particular Layer by its handle
int get_depth(etl::handle<Layer>)const;
int get_depth(etl::handle<Layer>)const;
+ //! Retireves the first layer of the double queue of Layers
Context get_context()const;
Context get_context()const;
-
+ //! Returns the last Canvas layer queue iterator. Notice that it
+ /*! overrides the std::end() member that would return an interator
+ * just past the last element of the queue.*/
iterator end();
iterator end();
-
+ //! Returns the last Canvas layer queue const_iterator. Notice that it
+ /*! overrides the std::end() member that would return an interator
+ * just past the last element of the queue.*/
const_iterator end()const;
const_iterator end()const;
-
+ //! Returns the last Canvas layer queue reverse iterator. Notice that it
+ /*! overrides the std::rbegin() member that would return an interator
+ * just past the last element of the queue.*/
reverse_iterator rbegin();
reverse_iterator rbegin();
-
+ //! Returns the last Canvas layer queue reverse const iterator. Notice that it
+ /*! overrides the std::rbegin() member that would return an interator
+ * just past the last element of the queue.*/
const_reverse_iterator rbegin()const;
const_reverse_iterator rbegin()const;
-
+ //! Returns last layer in Canvas layer stack
etl::handle<Layer> &back();
etl::handle<Layer> &back();
-
+ //! Returns last layer in Canvas layer stack
+ const etl::handle<Layer> &back()const;
+ //! Inserts a layer just before the last layer.
+ //! \see end(), insert(iterator iter,etl::handle<Layer> x)
void push_back(etl::handle<Layer> x);
void push_back(etl::handle<Layer> x);
-
+ //! Inserts a layer just at the beggining of the Canvas layer dqueue
void push_front(etl::handle<Layer> x);
void push_front(etl::handle<Layer> x);
-
+ //! Inserts a layer in the last position of the Canvas layer dqueue
+ //! Uses the standard methods and doesn't perform any parentship
+ //! or signal update
void push_back_simple(etl::handle<Layer> x);
void push_back_simple(etl::handle<Layer> x);
-
+ //! Inserts a layer before the given position by \iter and performs
+ //! the proper child parent relationships and signals update
void insert(iterator iter,etl::handle<Layer> x);
void insert(iterator iter,etl::handle<Layer> x);
+ //! Removes a layer from the Canvas layer dqueue and its group and parent
+ //! relatioship. Although it is not already used, it clears the connections
+ //! see connections_
void erase(iterator iter);
void erase(iterator iter);
-
- const etl::handle<Layer> &back()const;
-
+ //! Sets to be a inline canvas of a given Canvas \parent. The inline
+ //! Canvas inherits the groups and the render description.
+ //! \see rend_desc()
void set_inline(LooseHandle parent);
void set_inline(LooseHandle parent);
-
+ //! Returns a Canvas handle with "Untitled" as ID
static Handle create();
static Handle create();
-
+ //! Creates an inline Canvas for a given Canvas \parent
static Handle create_inline(Handle parent);
static Handle create_inline(Handle parent);
-
+ //! Clones (copies) the Canvas if it is inline.
Handle clone(const GUID& deriv_guid=GUID())const;
Handle clone(const GUID& deriv_guid=GUID())const;
-
+ //! Stores the external canvas by its file name and the Canvas handle
void register_external_canvas(String file, Handle canvas);
#ifdef _DEBUG
void register_external_canvas(String file, Handle canvas);
#ifdef _DEBUG
@@
-561,16
+587,30
@@
public:
#endif // _DEBUG
private:
#endif // _DEBUG
private:
+ //! Adds a \layer to a group given by its \group string to the group
+ //! database
void add_group_pair(String group, etl::handle<Layer> layer);
void add_group_pair(String group, etl::handle<Layer> layer);
+ //! Removes a \layer from a group given by its \group string to the group
+ //! database
void remove_group_pair(String group, etl::handle<Layer> layer);
void remove_group_pair(String group, etl::handle<Layer> layer);
+ //! Seems to be used to add the stored signals connections of the layers.
+ //! \see connections_
void add_connection(etl::loose_handle<Layer> layer, sigc::connection connection);
void add_connection(etl::loose_handle<Layer> layer, sigc::connection connection);
+ //! Seems to be used to disconnect the stored signals connections of the layers.
+ //! \see connections_
void disconnect_connections(etl::loose_handle<Layer> layer);
protected:
void disconnect_connections(etl::loose_handle<Layer> layer);
protected:
+ //! Sets the Canvas to dirty and calls Node::on_changed()
virtual void on_changed();
virtual void on_changed();
+ //! Collects the times (TimePoints) of the Layers of the Canvas and
+ //! stores it in the passed Time Set \set
+ //! \see Node::get_times()
virtual void get_times_vfunc(Node::time_set &set) const;
}; // END of class Canvas
virtual void get_times_vfunc(Node::time_set &set) const;
}; // END of class Canvas
+ //! Optimize layers based on its calculated Z depth to perform a quick
+ //! render of the layers to the output.
void optimize_layers(Time time, Context context, Canvas::Handle op_canvas, bool seen_motion_blur=false);
void optimize_layers(Time time, Context context, Canvas::Handle op_canvas, bool seen_motion_blur=false);