projects
/
synfig.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (from parent 1:
d4cb326
)
Use link_count from children vocabulary and return the stored vocabulary if already...
author
Carlos Lopez
<genetita@gmail.com>
Tue, 21 Dec 2010 15:59:44 +0000
(16:59 +0100)
committer
Carlos Lopez
<genetita@gmail.com>
Sun, 2 Jan 2011 07:19:35 +0000
(08:19 +0100)
50 files changed:
synfig-core/src/modules/mod_noise/valuenode_random.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode.h
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_add.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_and.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_anglestring.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_atan2.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_blinecalctangent.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_blinecalcvertex.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_blinecalcwidth.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_blinereversetangent.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_compare.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_composite.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_cos.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_dotproduct.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_duplicate.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_exp.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_gradientcolor.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_gradientrotate.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_greyed.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_integer.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_intstring.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_join.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_linear.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_log.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_not.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_or.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_pow.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_radialcomposite.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_range.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_realstring.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_reciprocal.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_reference.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_repeat_gradient.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_scale.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_segcalctangent.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_segcalcvertex.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_sine.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_step.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_stripes.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_subtract.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_switch.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_timedswap.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_timeloop.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_timestring.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_twotone.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_vectorangle.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_vectorlength.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_vectorx.cpp
patch
|
blob
|
history
synfig-core/src/synfig/valuenode_vectory.cpp
patch
|
blob
|
history
diff --git
a/synfig-core/src/modules/mod_noise/valuenode_random.cpp
b/synfig-core/src/modules/mod_noise/valuenode_random.cpp
index
22d6666
..
1aeb325
100644
(file)
--- a/
synfig-core/src/modules/mod_noise/valuenode_random.cpp
+++ b/
synfig-core/src/modules/mod_noise/valuenode_random.cpp
@@
-55,6
+55,8
@@
using namespace synfig;
ValueNode_Random::ValueNode_Random(const ValueBase &value):
LinkableValueNode(value.get_type())
{
ValueNode_Random::ValueNode_Random(const ValueBase &value):
LinkableValueNode(value.get_type())
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
random.set_seed(time(NULL));
set_link("radius",ValueNode_Const::create(Real(1)));
random.set_seed(time(NULL));
set_link("radius",ValueNode_Const::create(Real(1)));
@@
-304,6
+306,9
@@
ValueNode_Random::randomize_seed()
LinkableValueNode::Vocab
ValueNode_Random::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_Random::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"link")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"link")
diff --git
a/synfig-core/src/synfig/valuenode.cpp
b/synfig-core/src/synfig/valuenode.cpp
index
1ff921e
..
6e1e6a4
100644
(file)
--- a/
synfig-core/src/synfig/valuenode.cpp
+++ b/
synfig-core/src/synfig/valuenode.cpp
@@
-700,8
+700,20
@@
LinkableValueNode::get_link_index_from_name(const String &name)const
throw Exception::BadLinkName(name);
}
throw Exception::BadLinkName(name);
}
+int
+LinkableValueNode::link_count()const
+{
+ return get_children_vocab().size();
+}
+
LinkableValueNode::Vocab
LinkableValueNode::get_children_vocab()const
{
return get_children_vocab_vfunc();
}
LinkableValueNode::Vocab
LinkableValueNode::get_children_vocab()const
{
return get_children_vocab_vfunc();
}
+
+void
+LinkableValueNode::set_children_vocab(Vocab &newvocab)
+{
+ children_vocab.assign(newvocab.begin(),newvocab.end());
+}
diff --git
a/synfig-core/src/synfig/valuenode.h
b/synfig-core/src/synfig/valuenode.h
index
7fde918
..
830cd30
100644
(file)
--- a/
synfig-core/src/synfig/valuenode.h
+++ b/
synfig-core/src/synfig/valuenode.h
@@
-370,7
+370,7
@@
protected:
public:
//! Returns the number of linked Value Nodes
public:
//! Returns the number of linked Value Nodes
- virtual int link_count()const
=0
;
+ virtual int link_count()const;
//! Returns the local name of the 'i' linked Value Node
virtual String link_local_name(int i)const;
//! Returns the local name of the 'i' linked Value Node
virtual String link_local_name(int i)const;
@@
-400,6
+400,8
@@
public:
virtual Vocab get_children_vocab()const;
protected:
virtual Vocab get_children_vocab()const;
protected:
+ //! Member to store the children vocabulary
+ Vocab children_vocab;
//! Sets the type of the ValueNode
void set_type(ValueBase::Type t) { ValueNode::set_type(t); }
//! Sets the type of the ValueNode
void set_type(ValueBase::Type t) { ValueNode::set_type(t); }
@@
-414,6
+416,9
@@
protected:
//! Pure Virtual member to get the children vocabulary
virtual Vocab get_children_vocab_vfunc()const=0;
//! Pure Virtual member to get the children vocabulary
virtual Vocab get_children_vocab_vfunc()const=0;
+
+ //! Virtual memebr to set the children vocabulary to a given value
+ virtual void set_children_vocab(Vocab& rvocab);
}; // END of class LinkableValueNode
/*! \class ValueNodeList
}; // END of class LinkableValueNode
/*! \class ValueNodeList
diff --git
a/synfig-core/src/synfig/valuenode_add.cpp
b/synfig-core/src/synfig/valuenode_add.cpp
index
901f899
..
87ab7e3
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_add.cpp
+++ b/
synfig-core/src/synfig/valuenode_add.cpp
@@
-60,6
+60,8
@@
using namespace synfig;
synfig::ValueNode_Add::ValueNode_Add(const ValueBase &value):
LinkableValueNode(value.get_type())
{
synfig::ValueNode_Add::ValueNode_Add(const ValueBase &value):
LinkableValueNode(value.get_type())
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
set_link("scalar",ValueNode_Const::create(Real(1.0)));
ValueBase::Type id(value.get_type());
set_link("scalar",ValueNode_Const::create(Real(1.0)));
ValueBase::Type id(value.get_type());
diff --git
a/synfig-core/src/synfig/valuenode_and.cpp
b/synfig-core/src/synfig/valuenode_and.cpp
index
d2f9e46
..
bab3464
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_and.cpp
+++ b/
synfig-core/src/synfig/valuenode_and.cpp
@@
-54,6
+54,8
@@
using namespace synfig;
ValueNode_And::ValueNode_And(const ValueBase &x):
LinkableValueNode(x.get_type())
{
ValueNode_And::ValueNode_And(const ValueBase &x):
LinkableValueNode(x.get_type())
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
bool value(x.get(bool()));
set_link("link1", ValueNode_Const::create(bool(true)));
bool value(x.get(bool()));
set_link("link1", ValueNode_Const::create(bool(true)));
@@
-141,6
+143,9
@@
ValueNode_And::check_type(ValueBase::Type type)
LinkableValueNode::Vocab
ValueNode_And::get_children_vocab_vfunc() const
{
LinkableValueNode::Vocab
ValueNode_And::get_children_vocab_vfunc() const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"link1")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"link1")
diff --git
a/synfig-core/src/synfig/valuenode_anglestring.cpp
b/synfig-core/src/synfig/valuenode_anglestring.cpp
index
7dbb73c
..
4177777
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_anglestring.cpp
+++ b/
synfig-core/src/synfig/valuenode_anglestring.cpp
@@
-54,6
+54,8
@@
using namespace synfig;
ValueNode_AngleString::ValueNode_AngleString(const ValueBase &value):
LinkableValueNode(value.get_type())
{
ValueNode_AngleString::ValueNode_AngleString(const ValueBase &value):
LinkableValueNode(value.get_type())
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
switch(value.get_type())
{
case ValueBase::TYPE_STRING:
switch(value.get_type())
{
case ValueBase::TYPE_STRING:
diff --git
a/synfig-core/src/synfig/valuenode_atan2.cpp
b/synfig-core/src/synfig/valuenode_atan2.cpp
index
ceec7a7
..
ff1fb18
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_atan2.cpp
+++ b/
synfig-core/src/synfig/valuenode_atan2.cpp
@@
-53,6
+53,8
@@
using namespace synfig;
ValueNode_Atan2::ValueNode_Atan2(const ValueBase &value):
LinkableValueNode(value.get_type())
{
ValueNode_Atan2::ValueNode_Atan2(const ValueBase &value):
LinkableValueNode(value.get_type())
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
switch(value.get_type())
{
case ValueBase::TYPE_ANGLE:
switch(value.get_type())
{
case ValueBase::TYPE_ANGLE:
diff --git
a/synfig-core/src/synfig/valuenode_blinecalctangent.cpp
b/synfig-core/src/synfig/valuenode_blinecalctangent.cpp
index
0598276
..
04278b8
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_blinecalctangent.cpp
+++ b/
synfig-core/src/synfig/valuenode_blinecalctangent.cpp
@@
-58,6
+58,8
@@
using namespace synfig;
ValueNode_BLineCalcTangent::ValueNode_BLineCalcTangent(const ValueBase::Type &x):
LinkableValueNode(x)
{
ValueNode_BLineCalcTangent::ValueNode_BLineCalcTangent(const ValueBase::Type &x):
LinkableValueNode(x)
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
if(x!=ValueBase::TYPE_ANGLE && x!=ValueBase::TYPE_REAL && x!=ValueBase::TYPE_VECTOR)
throw Exception::BadType(ValueBase::type_local_name(x));
if(x!=ValueBase::TYPE_ANGLE && x!=ValueBase::TYPE_REAL && x!=ValueBase::TYPE_VECTOR)
throw Exception::BadType(ValueBase::type_local_name(x));
@@
-273,6
+275,9
@@
ValueNode_BLineCalcTangent::check_type(ValueBase::Type type)
LinkableValueNode::Vocab
ValueNode_BLineCalcTangent::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_BLineCalcTangent::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"bline")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"bline")
diff --git
a/synfig-core/src/synfig/valuenode_blinecalcvertex.cpp
b/synfig-core/src/synfig/valuenode_blinecalcvertex.cpp
index
7346207
..
5f2fde6
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_blinecalcvertex.cpp
+++ b/
synfig-core/src/synfig/valuenode_blinecalcvertex.cpp
@@
-58,6
+58,8
@@
using namespace synfig;
ValueNode_BLineCalcVertex::ValueNode_BLineCalcVertex(const ValueBase::Type &x):
LinkableValueNode(x)
{
ValueNode_BLineCalcVertex::ValueNode_BLineCalcVertex(const ValueBase::Type &x):
LinkableValueNode(x)
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
if(x!=ValueBase::TYPE_VECTOR)
throw Exception::BadType(ValueBase::type_local_name(x));
if(x!=ValueBase::TYPE_VECTOR)
throw Exception::BadType(ValueBase::type_local_name(x));
@@
-224,6
+226,9
@@
ValueNode_BLineCalcVertex::check_type(ValueBase::Type type)
LinkableValueNode::Vocab
ValueNode_BLineCalcVertex::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_BLineCalcVertex::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"bline")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"bline")
diff --git
a/synfig-core/src/synfig/valuenode_blinecalcwidth.cpp
b/synfig-core/src/synfig/valuenode_blinecalcwidth.cpp
index
d78f99a
..
d7db04e
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_blinecalcwidth.cpp
+++ b/
synfig-core/src/synfig/valuenode_blinecalcwidth.cpp
@@
-58,6
+58,8
@@
using namespace synfig;
ValueNode_BLineCalcWidth::ValueNode_BLineCalcWidth(const ValueBase::Type &x):
LinkableValueNode(x)
{
ValueNode_BLineCalcWidth::ValueNode_BLineCalcWidth(const ValueBase::Type &x):
LinkableValueNode(x)
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
if(x!=ValueBase::TYPE_REAL)
throw Exception::BadType(ValueBase::type_local_name(x));
if(x!=ValueBase::TYPE_REAL)
throw Exception::BadType(ValueBase::type_local_name(x));
@@
-232,6
+234,9
@@
ValueNode_BLineCalcWidth::check_type(ValueBase::Type type)
LinkableValueNode::Vocab
ValueNode_BLineCalcWidth::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_BLineCalcWidth::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"bline")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"bline")
diff --git
a/synfig-core/src/synfig/valuenode_blinereversetangent.cpp
b/synfig-core/src/synfig/valuenode_blinereversetangent.cpp
index
dcdee81
..
922d9a3
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_blinereversetangent.cpp
+++ b/
synfig-core/src/synfig/valuenode_blinereversetangent.cpp
@@
-63,6
+63,8
@@
ValueNode_BLineRevTangent::ValueNode_BLineRevTangent(const ValueBase::Type &x):
ValueNode_BLineRevTangent::ValueNode_BLineRevTangent(const ValueNode::Handle &x):
LinkableValueNode(x->get_type())
{
ValueNode_BLineRevTangent::ValueNode_BLineRevTangent(const ValueNode::Handle &x):
LinkableValueNode(x->get_type())
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
if(x->get_type()!=ValueBase::TYPE_BLINEPOINT)
throw Exception::BadType(ValueBase::type_local_name(x->get_type()));
if(x->get_type()!=ValueBase::TYPE_BLINEPOINT)
throw Exception::BadType(ValueBase::type_local_name(x->get_type()));
@@
-204,6
+206,9
@@
ValueNode_BLineRevTangent::check_type(ValueBase::Type type)
LinkableValueNode::Vocab
ValueNode_BLineRevTangent::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_BLineRevTangent::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"reference")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"reference")
diff --git
a/synfig-core/src/synfig/valuenode_compare.cpp
b/synfig-core/src/synfig/valuenode_compare.cpp
index
d5d09fa
..
627d843
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_compare.cpp
+++ b/
synfig-core/src/synfig/valuenode_compare.cpp
@@
-54,6
+54,8
@@
using namespace synfig;
ValueNode_Compare::ValueNode_Compare(const ValueBase &x):
LinkableValueNode(x.get_type())
{
ValueNode_Compare::ValueNode_Compare(const ValueBase &x):
LinkableValueNode(x.get_type())
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
bool value(x.get(bool()));
set_link("lhs", ValueNode_Const::create(Real(0)));
bool value(x.get(bool()));
set_link("lhs", ValueNode_Const::create(Real(0)));
@@
-199,6
+201,9
@@
ValueNode_Compare::check_type(ValueBase::Type type)
LinkableValueNode::Vocab
ValueNode_Compare::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_Compare::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"lhs")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"lhs")
diff --git
a/synfig-core/src/synfig/valuenode_composite.cpp
b/synfig-core/src/synfig/valuenode_composite.cpp
index
da06185
..
342f8ab
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_composite.cpp
+++ b/
synfig-core/src/synfig/valuenode_composite.cpp
@@
-60,6
+60,8
@@
using namespace synfig;
synfig::ValueNode_Composite::ValueNode_Composite(const ValueBase &value):
LinkableValueNode(value.get_type())
{
synfig::ValueNode_Composite::ValueNode_Composite(const ValueBase &value):
LinkableValueNode(value.get_type())
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
switch(get_type())
{
case ValueBase::TYPE_VECTOR:
switch(get_type())
{
case ValueBase::TYPE_VECTOR:
@@
-448,6
+450,9
@@
ValueNode_Composite::check_type(ValueBase::Type type)
LinkableValueNode::Vocab
ValueNode_Composite::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_Composite::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
switch(get_type())
LinkableValueNode::Vocab ret;
switch(get_type())
diff --git
a/synfig-core/src/synfig/valuenode_cos.cpp
b/synfig-core/src/synfig/valuenode_cos.cpp
index
41fda7d
..
2eef6cd
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_cos.cpp
+++ b/
synfig-core/src/synfig/valuenode_cos.cpp
@@
-53,6
+53,8
@@
using namespace synfig;
ValueNode_Cos::ValueNode_Cos(const ValueBase &value):
LinkableValueNode(value.get_type())
{
ValueNode_Cos::ValueNode_Cos(const ValueBase &value):
LinkableValueNode(value.get_type())
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
switch(value.get_type())
{
case ValueBase::TYPE_REAL:
switch(value.get_type())
{
case ValueBase::TYPE_REAL:
@@
-186,6
+188,9
@@
ValueNode_Cos::get_link_index_from_name(const String &name)const
LinkableValueNode::Vocab
ValueNode_Cos::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_Cos::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"angle")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"angle")
diff --git
a/synfig-core/src/synfig/valuenode_dotproduct.cpp
b/synfig-core/src/synfig/valuenode_dotproduct.cpp
index
afb8a31
..
f478d01
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_dotproduct.cpp
+++ b/
synfig-core/src/synfig/valuenode_dotproduct.cpp
@@
-53,6
+53,8
@@
using namespace synfig;
ValueNode_DotProduct::ValueNode_DotProduct(const ValueBase &value):
LinkableValueNode(value.get_type())
{
ValueNode_DotProduct::ValueNode_DotProduct(const ValueBase &value):
LinkableValueNode(value.get_type())
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
switch(value.get_type())
{
case ValueBase::TYPE_REAL:
switch(value.get_type())
{
case ValueBase::TYPE_REAL:
@@
-199,6
+201,9
@@
ValueNode_DotProduct::check_type(ValueBase::Type type)
LinkableValueNode::Vocab
ValueNode_DotProduct::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_DotProduct::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"lhs")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"lhs")
diff --git
a/synfig-core/src/synfig/valuenode_duplicate.cpp
b/synfig-core/src/synfig/valuenode_duplicate.cpp
index
d371d75
..
b3e88aa
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_duplicate.cpp
+++ b/
synfig-core/src/synfig/valuenode_duplicate.cpp
@@
-58,6
+58,8
@@
ValueNode_Duplicate::ValueNode_Duplicate(const ValueBase::Type &x):
ValueNode_Duplicate::ValueNode_Duplicate(const ValueBase &x):
LinkableValueNode(x.get_type())
{
ValueNode_Duplicate::ValueNode_Duplicate(const ValueBase &x):
LinkableValueNode(x.get_type())
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
set_link("from", ValueNode_Const::create(Real(1.0)));
set_link("to", ValueNode_Const::create(x.get(Real())));
set_link("step", ValueNode_Const::create(Real(1.0)));
set_link("from", ValueNode_Const::create(Real(1.0)));
set_link("to", ValueNode_Const::create(x.get(Real())));
set_link("step", ValueNode_Const::create(Real(1.0)));
@@
-219,6
+221,9
@@
ValueNode_Duplicate::check_type(ValueBase::Type type __attribute__ ((unused)))
LinkableValueNode::Vocab
ValueNode_Duplicate::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_Duplicate::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"from")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"from")
diff --git
a/synfig-core/src/synfig/valuenode_exp.cpp
b/synfig-core/src/synfig/valuenode_exp.cpp
index
7b96298
..
200d438
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_exp.cpp
+++ b/
synfig-core/src/synfig/valuenode_exp.cpp
@@
-53,6
+53,8
@@
using namespace synfig;
ValueNode_Exp::ValueNode_Exp(const ValueBase &value):
LinkableValueNode(value.get_type())
{
ValueNode_Exp::ValueNode_Exp(const ValueBase &value):
LinkableValueNode(value.get_type())
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
switch(value.get_type())
{
case ValueBase::TYPE_REAL:
switch(value.get_type())
{
case ValueBase::TYPE_REAL:
@@
-179,6
+181,9
@@
ValueNode_Exp::check_type(ValueBase::Type type)
LinkableValueNode::Vocab
ValueNode_Exp::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_Exp::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"exp")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"exp")
diff --git
a/synfig-core/src/synfig/valuenode_gradientcolor.cpp
b/synfig-core/src/synfig/valuenode_gradientcolor.cpp
index
980cf08
..
bfbda7d
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_gradientcolor.cpp
+++ b/
synfig-core/src/synfig/valuenode_gradientcolor.cpp
@@
-54,6
+54,8
@@
using namespace synfig;
ValueNode_GradientColor::ValueNode_GradientColor(const ValueBase &value):
LinkableValueNode(value.get_type())
{
ValueNode_GradientColor::ValueNode_GradientColor(const ValueBase &value):
LinkableValueNode(value.get_type())
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
switch(value.get_type())
{
case ValueBase::TYPE_COLOR:
switch(value.get_type())
{
case ValueBase::TYPE_COLOR:
@@
-189,6
+191,9
@@
ValueNode_GradientColor::check_type(ValueBase::Type type)
LinkableValueNode::Vocab
ValueNode_GradientColor::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_GradientColor::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"gradient")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"gradient")
diff --git
a/synfig-core/src/synfig/valuenode_gradientrotate.cpp
b/synfig-core/src/synfig/valuenode_gradientrotate.cpp
index
f2496da
..
709a99a
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_gradientrotate.cpp
+++ b/
synfig-core/src/synfig/valuenode_gradientrotate.cpp
@@
-55,6
+55,8
@@
using namespace synfig;
synfig::ValueNode_GradientRotate::ValueNode_GradientRotate(const Gradient& x):
LinkableValueNode(synfig::ValueBase::TYPE_GRADIENT)
{
synfig::ValueNode_GradientRotate::ValueNode_GradientRotate(const Gradient& x):
LinkableValueNode(synfig::ValueBase::TYPE_GRADIENT)
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
set_link("gradient",ValueNode_Const::create(x));
set_link("offset",ValueNode_Const::create(Real(0)));
}
set_link("gradient",ValueNode_Const::create(x));
set_link("offset",ValueNode_Const::create(Real(0)));
}
@@
-199,6
+201,9
@@
ValueNode_GradientRotate::check_type(ValueBase::Type type)
LinkableValueNode::Vocab
ValueNode_GradientRotate::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_GradientRotate::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"gradient")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"gradient")
diff --git
a/synfig-core/src/synfig/valuenode_greyed.cpp
b/synfig-core/src/synfig/valuenode_greyed.cpp
index
a68a9ac
..
e39cabc
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_greyed.cpp
+++ b/
synfig-core/src/synfig/valuenode_greyed.cpp
@@
-54,6
+54,8
@@
ValueNode_Greyed::ValueNode_Greyed(const ValueBase::Type &x):
ValueNode_Greyed::ValueNode_Greyed(const ValueNode::Handle &x):
ValueNode_Reference(x->get_type())
{
ValueNode_Greyed::ValueNode_Greyed(const ValueNode::Handle &x):
ValueNode_Reference(x->get_type())
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
set_link("link",x);
}
set_link("link",x);
}
@@
-84,6
+86,9
@@
ValueNode_Greyed::get_local_name()const
LinkableValueNode::Vocab
ValueNode_Greyed::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_Greyed::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"link")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"link")
diff --git
a/synfig-core/src/synfig/valuenode_integer.cpp
b/synfig-core/src/synfig/valuenode_integer.cpp
index
12b3a9c
..
8b44504
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_integer.cpp
+++ b/
synfig-core/src/synfig/valuenode_integer.cpp
@@
-59,6
+59,8
@@
ValueNode_Integer::ValueNode_Integer(const ValueBase::Type &x):
ValueNode_Integer::ValueNode_Integer(const ValueBase &x):
LinkableValueNode(x.get_type())
{
ValueNode_Integer::ValueNode_Integer(const ValueBase &x):
LinkableValueNode(x.get_type())
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
switch(x.get_type())
{
case ValueBase::TYPE_ANGLE:
switch(x.get_type())
{
case ValueBase::TYPE_ANGLE:
@@
-201,6
+203,9
@@
ValueNode_Integer::check_type(ValueBase::Type type __attribute__ ((unused)))
LinkableValueNode::Vocab
ValueNode_Integer::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_Integer::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"integer")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"integer")
diff --git
a/synfig-core/src/synfig/valuenode_intstring.cpp
b/synfig-core/src/synfig/valuenode_intstring.cpp
index
408469e
..
e29199d
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_intstring.cpp
+++ b/
synfig-core/src/synfig/valuenode_intstring.cpp
@@
-54,6
+54,8
@@
using namespace synfig;
ValueNode_IntString::ValueNode_IntString(const ValueBase &value):
LinkableValueNode(value.get_type())
{
ValueNode_IntString::ValueNode_IntString(const ValueBase &value):
LinkableValueNode(value.get_type())
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
switch(value.get_type())
{
case ValueBase::TYPE_STRING:
switch(value.get_type())
{
case ValueBase::TYPE_STRING:
@@
-202,6
+204,9
@@
ValueNode_IntString::check_type(ValueBase::Type type)
LinkableValueNode::Vocab
ValueNode_IntString::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_IntString::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"int")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"int")
diff --git
a/synfig-core/src/synfig/valuenode_join.cpp
b/synfig-core/src/synfig/valuenode_join.cpp
index
bc01031
..
98edb47
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_join.cpp
+++ b/
synfig-core/src/synfig/valuenode_join.cpp
@@
-55,6
+55,8
@@
using namespace synfig;
ValueNode_Join::ValueNode_Join(const ValueBase &value):
LinkableValueNode(value.get_type())
{
ValueNode_Join::ValueNode_Join(const ValueBase &value):
LinkableValueNode(value.get_type())
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
switch(value.get_type())
{
case ValueBase::TYPE_STRING:
switch(value.get_type())
{
case ValueBase::TYPE_STRING:
@@
-229,6
+231,9
@@
ValueNode_Join::check_type(ValueBase::Type type)
LinkableValueNode::Vocab
ValueNode_Join::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_Join::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"strings")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"strings")
diff --git
a/synfig-core/src/synfig/valuenode_linear.cpp
b/synfig-core/src/synfig/valuenode_linear.cpp
index
2fabe01
..
cc716a8
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_linear.cpp
+++ b/
synfig-core/src/synfig/valuenode_linear.cpp
@@
-55,6
+55,8
@@
using namespace synfig;
ValueNode_Linear::ValueNode_Linear(const ValueBase &value):
LinkableValueNode(value.get_type())
{
ValueNode_Linear::ValueNode_Linear(const ValueBase &value):
LinkableValueNode(value.get_type())
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
switch(get_type())
{
case ValueBase::TYPE_ANGLE:
switch(get_type())
{
case ValueBase::TYPE_ANGLE:
@@
-230,6
+232,9
@@
ValueNode_Linear::get_link_index_from_name(const String &name)const
LinkableValueNode::Vocab
ValueNode_Linear::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_Linear::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
switch(get_type())
LinkableValueNode::Vocab ret;
switch(get_type())
diff --git
a/synfig-core/src/synfig/valuenode_log.cpp
b/synfig-core/src/synfig/valuenode_log.cpp
index
4ddb8a7
..
7973a34
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_log.cpp
+++ b/
synfig-core/src/synfig/valuenode_log.cpp
@@
-54,6
+54,8
@@
using namespace synfig;
ValueNode_Logarithm::ValueNode_Logarithm(const ValueBase &x):
LinkableValueNode(x.get_type())
{
ValueNode_Logarithm::ValueNode_Logarithm(const ValueBase &x):
LinkableValueNode(x.get_type())
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
Real value(x.get(Real()));
Real infinity(999999.0);
Real epsilon(0.000001);
Real value(x.get(Real()));
Real infinity(999999.0);
Real epsilon(0.000001);
@@
-186,6
+188,9
@@
ValueNode_Logarithm::check_type(ValueBase::Type type)
LinkableValueNode::Vocab
ValueNode_Logarithm::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_Logarithm::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"link")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"link")
diff --git
a/synfig-core/src/synfig/valuenode_not.cpp
b/synfig-core/src/synfig/valuenode_not.cpp
index
dfe0f9a
..
9e835c0
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_not.cpp
+++ b/
synfig-core/src/synfig/valuenode_not.cpp
@@
-54,6
+54,8
@@
using namespace synfig;
ValueNode_Not::ValueNode_Not(const ValueBase &x):
LinkableValueNode(x.get_type())
{
ValueNode_Not::ValueNode_Not(const ValueBase &x):
LinkableValueNode(x.get_type())
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
bool value(x.get(bool()));
set_link("link", ValueNode_Const::create(!value));
bool value(x.get(bool()));
set_link("link", ValueNode_Const::create(!value));
@@
-161,6
+163,9
@@
ValueNode_Not::check_type(ValueBase::Type type)
LinkableValueNode::Vocab
ValueNode_Not::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_Not::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"link")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"link")
diff --git
a/synfig-core/src/synfig/valuenode_or.cpp
b/synfig-core/src/synfig/valuenode_or.cpp
index
2a94e88
..
4cfff5c
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_or.cpp
+++ b/
synfig-core/src/synfig/valuenode_or.cpp
@@
-54,6
+54,8
@@
using namespace synfig;
ValueNode_Or::ValueNode_Or(const ValueBase &x):
LinkableValueNode(x.get_type())
{
ValueNode_Or::ValueNode_Or(const ValueBase &x):
LinkableValueNode(x.get_type())
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
bool value(x.get(bool()));
set_link("link1", ValueNode_Const::create(bool(false)));
bool value(x.get(bool()));
set_link("link1", ValueNode_Const::create(bool(false)));
@@
-170,6
+172,9
@@
ValueNode_Or::check_type(ValueBase::Type type)
LinkableValueNode::Vocab
ValueNode_Or::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_Or::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"link1")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"link1")
diff --git
a/synfig-core/src/synfig/valuenode_pow.cpp
b/synfig-core/src/synfig/valuenode_pow.cpp
index
0b9d319
..
94369bf
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_pow.cpp
+++ b/
synfig-core/src/synfig/valuenode_pow.cpp
@@
-54,6
+54,8
@@
using namespace synfig;
ValueNode_Pow::ValueNode_Pow(const ValueBase &x):
LinkableValueNode(x.get_type())
{
ValueNode_Pow::ValueNode_Pow(const ValueBase &x):
LinkableValueNode(x.get_type())
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
Real value(x.get(Real()));
Real infinity(999999.0);
Real epsilon(0.000001);
Real value(x.get(Real()));
Real infinity(999999.0);
Real epsilon(0.000001);
@@
-209,6
+211,9
@@
ValueNode_Pow::check_type(ValueBase::Type type)
LinkableValueNode::Vocab
ValueNode_Pow::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_Pow::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"base")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"base")
diff --git
a/synfig-core/src/synfig/valuenode_radialcomposite.cpp
b/synfig-core/src/synfig/valuenode_radialcomposite.cpp
index
5d320b6
..
85b882a
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_radialcomposite.cpp
+++ b/
synfig-core/src/synfig/valuenode_radialcomposite.cpp
@@
-55,6
+55,8
@@
using namespace synfig;
synfig::ValueNode_RadialComposite::ValueNode_RadialComposite(const ValueBase &value):
LinkableValueNode(value.get_type())
{
synfig::ValueNode_RadialComposite::ValueNode_RadialComposite(const ValueBase &value):
LinkableValueNode(value.get_type())
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
switch(get_type())
{
case ValueBase::TYPE_VECTOR:
switch(get_type())
{
case ValueBase::TYPE_VECTOR:
@@
-317,6
+319,9
@@
ValueNode_RadialComposite::check_type(ValueBase::Type type)
LinkableValueNode::Vocab
ValueNode_RadialComposite::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_RadialComposite::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
switch(get_type())
LinkableValueNode::Vocab ret;
switch(get_type())
diff --git
a/synfig-core/src/synfig/valuenode_range.cpp
b/synfig-core/src/synfig/valuenode_range.cpp
index
6132c1a
..
e959388
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_range.cpp
+++ b/
synfig-core/src/synfig/valuenode_range.cpp
@@
-57,6
+57,8
@@
using namespace synfig;
synfig::ValueNode_Range::ValueNode_Range(const ValueBase &value):
LinkableValueNode(value.get_type())
{
synfig::ValueNode_Range::ValueNode_Range(const ValueBase &value):
LinkableValueNode(value.get_type())
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
ValueBase::Type id(value.get_type());
switch(id)
ValueBase::Type id(value.get_type());
switch(id)
@@
-309,6
+311,9
@@
ValueNode_Range::check_type(ValueBase::Type type)
LinkableValueNode::Vocab
ValueNode_Range::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_Range::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"min")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"min")
diff --git
a/synfig-core/src/synfig/valuenode_realstring.cpp
b/synfig-core/src/synfig/valuenode_realstring.cpp
index
181ef15
..
cb0f4e6
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_realstring.cpp
+++ b/
synfig-core/src/synfig/valuenode_realstring.cpp
@@
-54,6
+54,8
@@
using namespace synfig;
ValueNode_RealString::ValueNode_RealString(const ValueBase &value):
LinkableValueNode(value.get_type())
{
ValueNode_RealString::ValueNode_RealString(const ValueBase &value):
LinkableValueNode(value.get_type())
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
switch(value.get_type())
{
case ValueBase::TYPE_STRING:
switch(value.get_type())
{
case ValueBase::TYPE_STRING:
@@
-210,6
+212,9
@@
ValueNode_RealString::check_type(ValueBase::Type type)
LinkableValueNode::Vocab
ValueNode_RealString::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_RealString::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"real")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"real")
diff --git
a/synfig-core/src/synfig/valuenode_reciprocal.cpp
b/synfig-core/src/synfig/valuenode_reciprocal.cpp
index
11362b9
..
55dde10
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_reciprocal.cpp
+++ b/
synfig-core/src/synfig/valuenode_reciprocal.cpp
@@
-53,6
+53,8
@@
using namespace synfig;
ValueNode_Reciprocal::ValueNode_Reciprocal(const ValueBase &x):
LinkableValueNode(x.get_type())
{
ValueNode_Reciprocal::ValueNode_Reciprocal(const ValueBase &x):
LinkableValueNode(x.get_type())
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
Real value(x.get(Real()));
Real infinity(999999.0);
Real epsilon(0.000001);
Real value(x.get(Real()));
Real infinity(999999.0);
Real epsilon(0.000001);
@@
-191,6
+193,9
@@
ValueNode_Reciprocal::check_type(ValueBase::Type type)
LinkableValueNode::Vocab
ValueNode_Reciprocal::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_Reciprocal::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"link")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"link")
diff --git
a/synfig-core/src/synfig/valuenode_reference.cpp
b/synfig-core/src/synfig/valuenode_reference.cpp
index
fa89437
..
a6ac870
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_reference.cpp
+++ b/
synfig-core/src/synfig/valuenode_reference.cpp
@@
-58,6
+58,8
@@
ValueNode_Reference::ValueNode_Reference(const ValueBase::Type &x):
ValueNode_Reference::ValueNode_Reference(const ValueNode::Handle &x):
LinkableValueNode(x->get_type())
{
ValueNode_Reference::ValueNode_Reference(const ValueNode::Handle &x):
LinkableValueNode(x->get_type())
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
set_link("link",x);
}
set_link("link",x);
}
@@
-170,6
+172,9
@@
ValueNode_Reference::check_type(ValueBase::Type type)
LinkableValueNode::Vocab
ValueNode_Reference::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_Reference::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"link")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"link")
diff --git
a/synfig-core/src/synfig/valuenode_repeat_gradient.cpp
b/synfig-core/src/synfig/valuenode_repeat_gradient.cpp
index
601a176
..
306b393
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_repeat_gradient.cpp
+++ b/
synfig-core/src/synfig/valuenode_repeat_gradient.cpp
@@
-55,6
+55,8
@@
using namespace synfig;
synfig::ValueNode_Repeat_Gradient::ValueNode_Repeat_Gradient(const Gradient& x):LinkableValueNode(synfig::ValueBase::TYPE_GRADIENT)
{
synfig::ValueNode_Repeat_Gradient::ValueNode_Repeat_Gradient(const Gradient& x):LinkableValueNode(synfig::ValueBase::TYPE_GRADIENT)
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
set_link("gradient",ValueNode_Const::create(x));
set_link("count",count_=ValueNode_Const::create(int(3)));
set_link("width",ValueNode_Const::create(0.5));
set_link("gradient",ValueNode_Const::create(x));
set_link("count",count_=ValueNode_Const::create(int(3)));
set_link("width",ValueNode_Const::create(0.5));
@@
-246,6
+248,9
@@
ValueNode_Repeat_Gradient::check_type(ValueBase::Type type)
LinkableValueNode::Vocab
ValueNode_Repeat_Gradient::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_Repeat_Gradient::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"gradient")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"gradient")
diff --git
a/synfig-core/src/synfig/valuenode_scale.cpp
b/synfig-core/src/synfig/valuenode_scale.cpp
index
da38c54
..
7552cdb
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_scale.cpp
+++ b/
synfig-core/src/synfig/valuenode_scale.cpp
@@
-59,6
+59,8
@@
using namespace synfig;
ValueNode_Scale::ValueNode_Scale(const ValueBase &value):
LinkableValueNode(value.get_type())
{
ValueNode_Scale::ValueNode_Scale(const ValueBase &value):
LinkableValueNode(value.get_type())
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
set_link("scalar",ValueNode::Handle(ValueNode_Const::create(Real(1.0))));
ValueBase::Type id(value.get_type());
set_link("scalar",ValueNode::Handle(ValueNode_Const::create(Real(1.0))));
ValueBase::Type id(value.get_type());
@@
-279,6
+281,9
@@
ValueNode_Scale::check_type(ValueBase::Type type)
LinkableValueNode::Vocab
ValueNode_Scale::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_Scale::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"link")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"link")
diff --git
a/synfig-core/src/synfig/valuenode_segcalctangent.cpp
b/synfig-core/src/synfig/valuenode_segcalctangent.cpp
index
5dd3150
..
8969221
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_segcalctangent.cpp
+++ b/
synfig-core/src/synfig/valuenode_segcalctangent.cpp
@@
-58,6
+58,8
@@
using namespace synfig;
ValueNode_SegCalcTangent::ValueNode_SegCalcTangent(const ValueBase::Type &x):
LinkableValueNode(x)
{
ValueNode_SegCalcTangent::ValueNode_SegCalcTangent(const ValueBase::Type &x):
LinkableValueNode(x)
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
if(x!=ValueBase::TYPE_VECTOR)
throw Exception::BadType(ValueBase::type_local_name(x));
if(x!=ValueBase::TYPE_VECTOR)
throw Exception::BadType(ValueBase::type_local_name(x));
@@
-185,6
+187,9
@@
ValueNode_SegCalcTangent::create_new()const
LinkableValueNode::Vocab
ValueNode_SegCalcTangent::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_SegCalcTangent::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"segment")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"segment")
diff --git
a/synfig-core/src/synfig/valuenode_segcalcvertex.cpp
b/synfig-core/src/synfig/valuenode_segcalcvertex.cpp
index
81525af
..
6a88f06
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_segcalcvertex.cpp
+++ b/
synfig-core/src/synfig/valuenode_segcalcvertex.cpp
@@
-57,6
+57,8
@@
using namespace synfig;
ValueNode_SegCalcVertex::ValueNode_SegCalcVertex(const ValueBase::Type &x):
LinkableValueNode(x)
{
ValueNode_SegCalcVertex::ValueNode_SegCalcVertex(const ValueBase::Type &x):
LinkableValueNode(x)
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
if(x!=ValueBase::TYPE_VECTOR)
throw Exception::BadType(ValueBase::type_local_name(x));
if(x!=ValueBase::TYPE_VECTOR)
throw Exception::BadType(ValueBase::type_local_name(x));
@@
-183,6
+185,9
@@
ValueNode_SegCalcVertex::create_new()const
LinkableValueNode::Vocab
ValueNode_SegCalcVertex::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_SegCalcVertex::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"segment")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"segment")
diff --git
a/synfig-core/src/synfig/valuenode_sine.cpp
b/synfig-core/src/synfig/valuenode_sine.cpp
index
3ebe280
..
17d8efc
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_sine.cpp
+++ b/
synfig-core/src/synfig/valuenode_sine.cpp
@@
-53,6
+53,8
@@
using namespace synfig;
ValueNode_Sine::ValueNode_Sine(const ValueBase &value):
LinkableValueNode(value.get_type())
{
ValueNode_Sine::ValueNode_Sine(const ValueBase &value):
LinkableValueNode(value.get_type())
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
switch(value.get_type())
{
case ValueBase::TYPE_REAL:
switch(value.get_type())
{
case ValueBase::TYPE_REAL:
@@
-183,6
+185,9
@@
ValueNode_Sine::get_link_index_from_name(const String &name)const
LinkableValueNode::Vocab
ValueNode_Sine::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_Sine::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"angle")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"angle")
diff --git
a/synfig-core/src/synfig/valuenode_step.cpp
b/synfig-core/src/synfig/valuenode_step.cpp
index
9b9a160
..
337657a
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_step.cpp
+++ b/
synfig-core/src/synfig/valuenode_step.cpp
@@
-54,6
+54,8
@@
using namespace synfig;
ValueNode_Step::ValueNode_Step(const ValueBase &value):
LinkableValueNode(value.get_type())
{
ValueNode_Step::ValueNode_Step(const ValueBase &value):
LinkableValueNode(value.get_type())
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
set_link("duration", ValueNode_Const::create(Time(1)));
set_link("start_time", ValueNode_Const::create(Time(0)));
set_link("intersection", ValueNode_Const::create(Real(0.5)));
set_link("duration", ValueNode_Const::create(Time(1)));
set_link("start_time", ValueNode_Const::create(Time(0)));
set_link("intersection", ValueNode_Const::create(Real(0.5)));
@@
-234,6
+236,9
@@
ValueNode_Step::get_link_index_from_name(const String &name)const
LinkableValueNode::Vocab
ValueNode_Step::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_Step::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"link")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"link")
diff --git
a/synfig-core/src/synfig/valuenode_stripes.cpp
b/synfig-core/src/synfig/valuenode_stripes.cpp
index
f214176
..
92e9420
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_stripes.cpp
+++ b/
synfig-core/src/synfig/valuenode_stripes.cpp
@@
-55,6
+55,8
@@
using namespace synfig;
synfig::ValueNode_Stripes::ValueNode_Stripes():LinkableValueNode(synfig::ValueBase::TYPE_GRADIENT)
{
synfig::ValueNode_Stripes::ValueNode_Stripes():LinkableValueNode(synfig::ValueBase::TYPE_GRADIENT)
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
set_link("color1",ValueNode_Const::create(Color::alpha()));
set_link("color2",ValueNode_Const::create(Color::black()));
set_link("stripes",stripes_=ValueNode_Const::create(int(5)));
set_link("color1",ValueNode_Const::create(Color::alpha()));
set_link("color2",ValueNode_Const::create(Color::black()));
set_link("stripes",stripes_=ValueNode_Const::create(int(5)));
@@
-237,6
+239,9
@@
ValueNode_Stripes::check_type(ValueBase::Type type)
LinkableValueNode::Vocab
ValueNode_Stripes::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_Stripes::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"color1")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"color1")
diff --git
a/synfig-core/src/synfig/valuenode_subtract.cpp
b/synfig-core/src/synfig/valuenode_subtract.cpp
index
7436551
..
34d9d56
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_subtract.cpp
+++ b/
synfig-core/src/synfig/valuenode_subtract.cpp
@@
-60,6
+60,8
@@
using namespace synfig;
synfig::ValueNode_Subtract::ValueNode_Subtract(const ValueBase &value):
LinkableValueNode(value.get_type())
{
synfig::ValueNode_Subtract::ValueNode_Subtract(const ValueBase &value):
LinkableValueNode(value.get_type())
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
set_link("scalar",ValueNode_Const::create(Real(1.0)));
ValueBase::Type id(value.get_type());
set_link("scalar",ValueNode_Const::create(Real(1.0)));
ValueBase::Type id(value.get_type());
@@
-249,6
+251,9
@@
ValueNode_Subtract::check_type(ValueBase::Type type)
LinkableValueNode::Vocab
ValueNode_Subtract::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_Subtract::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"lhs")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"lhs")
diff --git
a/synfig-core/src/synfig/valuenode_switch.cpp
b/synfig-core/src/synfig/valuenode_switch.cpp
index
5fc50ce
..
9cd24ae
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_switch.cpp
+++ b/
synfig-core/src/synfig/valuenode_switch.cpp
@@
-58,6
+58,8
@@
ValueNode_Switch::ValueNode_Switch(const ValueBase::Type &x):
ValueNode_Switch::ValueNode_Switch(const ValueNode::Handle &x):
LinkableValueNode(x->get_type())
{
ValueNode_Switch::ValueNode_Switch(const ValueNode::Handle &x):
LinkableValueNode(x->get_type())
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
set_link("link_off",x);
set_link("link_on",x);
set_link("switch",ValueNode_Const::create(bool(false)));
set_link("link_off",x);
set_link("link_on",x);
set_link("switch",ValueNode_Const::create(bool(false)));
@@
-184,6
+186,9
@@
ValueNode_Switch::check_type(ValueBase::Type type)
LinkableValueNode::Vocab
ValueNode_Switch::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_Switch::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"link_off")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"link_off")
diff --git
a/synfig-core/src/synfig/valuenode_timedswap.cpp
b/synfig-core/src/synfig/valuenode_timedswap.cpp
index
7e1b56f
..
d232b99
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_timedswap.cpp
+++ b/
synfig-core/src/synfig/valuenode_timedswap.cpp
@@
-56,6
+56,8
@@
using namespace synfig;
ValueNode_TimedSwap::ValueNode_TimedSwap(const ValueBase &value):
LinkableValueNode(value.get_type())
{
ValueNode_TimedSwap::ValueNode_TimedSwap(const ValueBase &value):
LinkableValueNode(value.get_type())
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
switch(get_type())
{
case ValueBase::TYPE_ANGLE:
switch(get_type())
{
case ValueBase::TYPE_ANGLE:
@@
-280,6
+282,9
@@
ValueNode_TimedSwap::check_type(ValueBase::Type type)
LinkableValueNode::Vocab
ValueNode_TimedSwap::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_TimedSwap::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"before")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"before")
diff --git
a/synfig-core/src/synfig/valuenode_timeloop.cpp
b/synfig-core/src/synfig/valuenode_timeloop.cpp
index
34f2750
..
f8b25ba
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_timeloop.cpp
+++ b/
synfig-core/src/synfig/valuenode_timeloop.cpp
@@
-58,6
+58,8
@@
ValueNode_TimeLoop::ValueNode_TimeLoop(const ValueBase::Type &x):
ValueNode_TimeLoop::ValueNode_TimeLoop(const ValueNode::Handle &x):
LinkableValueNode(x->get_type())
{
ValueNode_TimeLoop::ValueNode_TimeLoop(const ValueNode::Handle &x):
LinkableValueNode(x->get_type())
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
set_link("link", x);
set_link("link_time", ValueNode_Const::create(Time(0)));
set_link("local_time", ValueNode_Const::create(Time(0)));
set_link("link", x);
set_link("link_time", ValueNode_Const::create(Time(0)));
set_link("local_time", ValueNode_Const::create(Time(0)));
@@
-203,6
+205,9
@@
ValueNode_TimeLoop::check_type(ValueBase::Type type)
LinkableValueNode::Vocab
ValueNode_TimeLoop::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_TimeLoop::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc("link")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc("link")
diff --git
a/synfig-core/src/synfig/valuenode_timestring.cpp
b/synfig-core/src/synfig/valuenode_timestring.cpp
index
bdc140d
..
5391add
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_timestring.cpp
+++ b/
synfig-core/src/synfig/valuenode_timestring.cpp
@@
-54,6
+54,8
@@
using namespace synfig;
ValueNode_TimeString::ValueNode_TimeString(const ValueBase &value):
LinkableValueNode(value.get_type())
{
ValueNode_TimeString::ValueNode_TimeString(const ValueBase &value):
LinkableValueNode(value.get_type())
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
switch(value.get_type())
{
case ValueBase::TYPE_STRING:
switch(value.get_type())
{
case ValueBase::TYPE_STRING:
@@
-189,6
+191,9
@@
ValueNode_TimeString::check_type(ValueBase::Type type)
LinkableValueNode::Vocab
ValueNode_TimeString::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_TimeString::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"time")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"time")
diff --git
a/synfig-core/src/synfig/valuenode_twotone.cpp
b/synfig-core/src/synfig/valuenode_twotone.cpp
index
89850f7
..
3777686
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_twotone.cpp
+++ b/
synfig-core/src/synfig/valuenode_twotone.cpp
@@
-55,6
+55,8
@@
using namespace synfig;
synfig::ValueNode_TwoTone::ValueNode_TwoTone(const ValueBase &value):LinkableValueNode(synfig::ValueBase::TYPE_GRADIENT)
{
synfig::ValueNode_TwoTone::ValueNode_TwoTone(const ValueBase &value):LinkableValueNode(synfig::ValueBase::TYPE_GRADIENT)
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
switch(value.get_type())
{
case ValueBase::TYPE_GRADIENT:
switch(value.get_type())
{
case ValueBase::TYPE_GRADIENT:
@@
-189,6
+191,9
@@
ValueNode_TwoTone::check_type(ValueBase::Type type)
LinkableValueNode::Vocab
ValueNode_TwoTone::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_TwoTone::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"color1")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"color1")
diff --git
a/synfig-core/src/synfig/valuenode_vectorangle.cpp
b/synfig-core/src/synfig/valuenode_vectorangle.cpp
index
93fe494
..
9d11649
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_vectorangle.cpp
+++ b/
synfig-core/src/synfig/valuenode_vectorangle.cpp
@@
-53,6
+53,8
@@
using namespace synfig;
ValueNode_VectorAngle::ValueNode_VectorAngle(const ValueBase &value):
LinkableValueNode(value.get_type())
{
ValueNode_VectorAngle::ValueNode_VectorAngle(const ValueBase &value):
LinkableValueNode(value.get_type())
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
switch(value.get_type())
{
case ValueBase::TYPE_ANGLE:
switch(value.get_type())
{
case ValueBase::TYPE_ANGLE:
@@
-170,6
+172,9
@@
ValueNode_VectorAngle::check_type(ValueBase::Type type)
LinkableValueNode::Vocab
ValueNode_VectorAngle::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_VectorAngle::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"vector")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"vector")
diff --git
a/synfig-core/src/synfig/valuenode_vectorlength.cpp
b/synfig-core/src/synfig/valuenode_vectorlength.cpp
index
79fc79f
..
dc69acd
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_vectorlength.cpp
+++ b/
synfig-core/src/synfig/valuenode_vectorlength.cpp
@@
-53,6
+53,8
@@
using namespace synfig;
ValueNode_VectorLength::ValueNode_VectorLength(const ValueBase &value):
LinkableValueNode(value.get_type())
{
ValueNode_VectorLength::ValueNode_VectorLength(const ValueBase &value):
LinkableValueNode(value.get_type())
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
switch(value.get_type())
{
case ValueBase::TYPE_REAL:
switch(value.get_type())
{
case ValueBase::TYPE_REAL:
@@
-168,6
+170,9
@@
ValueNode_VectorLength::check_type(ValueBase::Type type)
LinkableValueNode::Vocab
ValueNode_VectorLength::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_VectorLength::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"vector")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"vector")
diff --git
a/synfig-core/src/synfig/valuenode_vectorx.cpp
b/synfig-core/src/synfig/valuenode_vectorx.cpp
index
0716e7b
..
11ed424
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_vectorx.cpp
+++ b/
synfig-core/src/synfig/valuenode_vectorx.cpp
@@
-53,6
+53,8
@@
using namespace synfig;
ValueNode_VectorX::ValueNode_VectorX(const ValueBase &value):
LinkableValueNode(value.get_type())
{
ValueNode_VectorX::ValueNode_VectorX(const ValueBase &value):
LinkableValueNode(value.get_type())
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
switch(value.get_type())
{
case ValueBase::TYPE_REAL:
switch(value.get_type())
{
case ValueBase::TYPE_REAL:
@@
-168,6
+170,9
@@
ValueNode_VectorX::check_type(ValueBase::Type type)
LinkableValueNode::Vocab
ValueNode_VectorX::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_VectorX::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"vector")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"vector")
diff --git
a/synfig-core/src/synfig/valuenode_vectory.cpp
b/synfig-core/src/synfig/valuenode_vectory.cpp
index
68b6045
..
4e49cdc
100644
(file)
--- a/
synfig-core/src/synfig/valuenode_vectory.cpp
+++ b/
synfig-core/src/synfig/valuenode_vectory.cpp
@@
-53,6
+53,8
@@
using namespace synfig;
ValueNode_VectorY::ValueNode_VectorY(const ValueBase &value):
LinkableValueNode(value.get_type())
{
ValueNode_VectorY::ValueNode_VectorY(const ValueBase &value):
LinkableValueNode(value.get_type())
{
+ Vocab ret(get_children_vocab());
+ set_children_vocab(ret);
switch(value.get_type())
{
case ValueBase::TYPE_REAL:
switch(value.get_type())
{
case ValueBase::TYPE_REAL:
@@
-168,6
+170,9
@@
ValueNode_VectorY::check_type(ValueBase::Type type)
LinkableValueNode::Vocab
ValueNode_VectorY::get_children_vocab_vfunc()const
{
LinkableValueNode::Vocab
ValueNode_VectorY::get_children_vocab_vfunc()const
{
+ if(children_vocab.size())
+ return children_vocab;
+
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"vector")
LinkableValueNode::Vocab ret;
ret.push_back(ParamDesc(ValueBase(),"vector")