synfig-core  1.0.3
valuenode_dilist.h
Go to the documentation of this file.
1 /* === S Y N F I G ========================================================= */
23 /* ========================================================================= */
24 
25 /* === S T A R T =========================================================== */
26 
27 #ifndef __SYNFIG_VALUENODE_DILIST_H
28 #define __SYNFIG_VALUENODE_DILIST_H
29 
30 /* === H E A D E R S ======================================================= */
31 
32 #include <vector>
33 #include <list>
34 
35 #include <synfig/valuenode.h>
36 #include <synfig/time.h>
37 #include <synfig/uniqueid.h>
38 #include <synfig/dashitem.h>
39 #include "valuenode_dynamiclist.h"
40 
41 /* === M A C R O S ========================================================= */
42 
43 /* === C L A S S E S & S T R U C T S ======================================= */
44 
45 namespace synfig {
47 // TODO synfig::ValueBase convert_bline_to_DIList(const ValueBase& bline);
48 
53 {
54 private:
55  ValueNode::RHandle bline_;
56 public:
57 
58  typedef etl::handle<ValueNode_DIList> Handle;
59  typedef etl::handle<const ValueNode_DIList> ConstHandle;
60  typedef etl::handle<const ValueNode_DIList> LooseHandle;
62 
63 public:
64 
65  virtual ValueBase operator()(Time t)const;
66  virtual ~ValueNode_DIList();
67  virtual String link_local_name(int i)const;
68  virtual String get_name()const;
69  virtual String get_local_name()const;
76  virtual ListEntry create_list_entry(int index, Time time=0, Real origin=0.5);
81 
82 protected:
83 
85 
86 public:
87 
88  static bool check_type(Type &type);
89  // Creates a Value Node Width Point List from another compatible list
90  static ValueNode_DIList* create(const ValueBase &x=type_list);
91 }; // END of class ValueNode_DIList
92 
94 
95 }; // END of namespace synfig
96 
97 /* === E N D =============================================================== */
98 
99 #endif