valuenode_repeat_gradient.h

Go to the documentation of this file.
00001 /* === S Y N F I G ========================================================= */
00022 /* ========================================================================= */
00023 
00024 /* === S T A R T =========================================================== */
00025 
00026 #ifndef __SYNFIG_VALUENODE_REPEAT_GRADIENT_H
00027 #define __SYNFIG_VALUENODE_REPEAT_GRADIENT_H
00028 
00029 /* === H E A D E R S ======================================================= */
00030 
00031 #include "valuenode.h"
00032 
00033 /* === M A C R O S ========================================================= */
00034 
00035 /* === C L A S S E S & S T R U C T S ======================================= */
00036 
00037 namespace synfig {
00038 
00039 struct ValueNode_Repeat_Gradient : public LinkableValueNode
00040 {
00041     typedef etl::handle<ValueNode_Repeat_Gradient> Handle;
00042     typedef etl::handle<const ValueNode_Repeat_Gradient> ConstHandle;
00043 
00044 protected:
00045 
00046     ValueNode_Repeat_Gradient(const Gradient& x);
00047 
00048 private:
00049 
00050     ValueNode::RHandle gradient_;
00051     ValueNode::RHandle count_;
00052     ValueNode::RHandle width_;
00053     ValueNode::RHandle specify_start_;
00054     ValueNode::RHandle specify_end_;
00055     ValueNode::RHandle start_color_;
00056     ValueNode::RHandle end_color_;
00057 
00058 public:
00059 
00060     virtual ~ValueNode_Repeat_Gradient();
00061 
00062     bool set_gradient(ValueNode::Handle a);
00063     bool set_count(ValueNode::Handle b);
00064     bool set_width(ValueNode::Handle x);
00065     bool set_specify_start(ValueNode::Handle a);
00066     bool set_specify_end(ValueNode::Handle a);
00067     bool set_start_color(ValueNode::Handle a);
00068     bool set_end_color(ValueNode::Handle a);
00069 
00070     virtual bool set_link_vfunc(int i,ValueNode::Handle x);
00071 
00072     virtual ValueNode::LooseHandle get_link_vfunc(int i)const;
00073 
00074     virtual int link_count()const;
00075 
00076     virtual String link_local_name(int i)const;
00077     virtual String link_name(int i)const;
00078     virtual int get_link_index_from_name(const String &name)const;
00079 
00080     virtual ValueBase operator()(Time t)const;
00081 
00082     virtual String get_name()const;
00083     virtual String get_local_name()const;
00084 
00085 //  static bool check_type(const ValueBase::Type &type);
00086 
00087     LinkableValueNode* create_new()const;
00088 
00089 public:
00090     using synfig::LinkableValueNode::get_link_vfunc;
00091     using synfig::LinkableValueNode::set_link_vfunc;
00092     static bool check_type(ValueBase::Type type);
00093     static ValueNode_Repeat_Gradient* create(const ValueBase &x=ValueBase::TYPE_GRADIENT);
00094 }; // END of class ValueNode_Repeat_Gradient
00095 
00096 }; // END of namespace synfig
00097 
00098 /* === E N D =============================================================== */
00099 
00100 #endif

Generated on Wed Dec 12 03:11:41 2007 for synfig by  doxygen 1.5.4