X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-core%2Ftrunk%2Fsrc%2Fsynfig%2Fvaluenode_subtract.cpp;h=ea97493a4264844d2ed522b11e5a67a2e25485ab;hb=e9904990d49499270dfe26a9ae85178a456b30aa;hp=e4c55c3fba2d7aea9ca9a1d69e4e69f8ea8f80e4;hpb=e3acc0b267b14fda5db3c7bbb2f218b993ef84b3;p=synfig.git diff --git a/synfig-core/trunk/src/synfig/valuenode_subtract.cpp b/synfig-core/trunk/src/synfig/valuenode_subtract.cpp index e4c55c3..ea97493 100644 --- a/synfig-core/trunk/src/synfig/valuenode_subtract.cpp +++ b/synfig-core/trunk/src/synfig/valuenode_subtract.cpp @@ -1,20 +1,21 @@ -/* === S I N F G =========================================================== */ +/* === S Y N F I G ========================================================= */ /*! \file valuenode_subtract.cpp ** \brief Template File ** -** $Id: valuenode_subtract.cpp,v 1.1.1.1 2005/01/04 01:23:15 darco Exp $ +** $Id$ ** ** \legal -** Copyright (c) 2002 Robert B. Quattlebaum Jr. +** Copyright (c) 2002-2005 Robert B. Quattlebaum Jr., Adrian Bentley ** -** This software and associated documentation -** are CONFIDENTIAL and PROPRIETARY property of -** the above-mentioned copyright holder. +** This package is free software; you can redistribute it and/or +** modify it under the terms of the GNU General Public License as +** published by the Free Software Foundation; either version 2 of +** the License, or (at your option) any later version. ** -** You may not copy, print, publish, or in any -** other way distribute this software without -** a prior written agreement with -** the copyright holder. +** This package is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +** General Public License for more details. ** \endlegal */ /* ========================================================================= */ @@ -43,7 +44,7 @@ using namespace std; using namespace etl; -using namespace sinfg; +using namespace synfig; /* === M A C R O S ========================================================= */ @@ -53,7 +54,7 @@ using namespace sinfg; /* === M E T H O D S ======================================================= */ -sinfg::ValueNode_Subtract::ValueNode_Subtract():LinkableValueNode(sinfg::ValueBase::TYPE_NIL) +synfig::ValueNode_Subtract::ValueNode_Subtract():LinkableValueNode(synfig::ValueBase::TYPE_NIL) { set_scalar(1.0); } @@ -68,7 +69,7 @@ ValueNode_Subtract* ValueNode_Subtract::create(const ValueBase& x) { ValueBase::Type id(x.get_type()); - + ValueNode_Subtract* value_node=new ValueNode_Subtract(); switch(id) { @@ -85,14 +86,14 @@ ValueNode_Subtract::create(const ValueBase& x) break; default: assert(0); - throw runtime_error("sinfg::ValueNode_Subtract:Bad type "+ValueBase::type_name(id)); + throw runtime_error("synfig::ValueNode_Subtract:Bad type "+ValueBase::type_name(id)); } assert(value_node->get_type()==id); - + return value_node; } -sinfg::ValueNode_Subtract::~ValueNode_Subtract() +synfig::ValueNode_Subtract::~ValueNode_Subtract() { unlink_all(); } @@ -104,7 +105,7 @@ ValueNode_Subtract::set_scalar(Real x) } bool -sinfg::ValueNode_Subtract::set_scalar(ValueNode::Handle x) +synfig::ValueNode_Subtract::set_scalar(ValueNode::Handle x) { if(x->get_type()!=ValueBase::TYPE_REAL&& !PlaceholderValueNode::Handle::cast_dynamic(x)) return false; @@ -113,13 +114,13 @@ sinfg::ValueNode_Subtract::set_scalar(ValueNode::Handle x) } bool -sinfg::ValueNode_Subtract::set_lhs(ValueNode::Handle a) +synfig::ValueNode_Subtract::set_lhs(ValueNode::Handle a) { ref_a=a; - + if(PlaceholderValueNode::Handle::cast_dynamic(a)) return true; - + if(!ref_a || !ref_b) set_type(ValueBase::TYPE_NIL); else @@ -139,7 +140,7 @@ sinfg::ValueNode_Subtract::set_lhs(ValueNode::Handle a) set_type(ValueBase::TYPE_COLOR); else { - sinfg::warning(get_id()+":(set_a):"+strprintf(_("Types seem to be off for ValueNodes %s and %s"),ref_a->get_id().c_str(),ref_b->get_id().c_str())); + synfig::warning(get_id()+":(set_a):"+strprintf(_("Types seem to be off for ValueNodes %s and %s"),ref_a->get_id().c_str(),ref_b->get_id().c_str())); set_type(ValueBase::TYPE_NIL); } @@ -147,7 +148,7 @@ sinfg::ValueNode_Subtract::set_lhs(ValueNode::Handle a) } bool -sinfg::ValueNode_Subtract::set_rhs(ValueNode::Handle b) +synfig::ValueNode_Subtract::set_rhs(ValueNode::Handle b) { ref_b=b; @@ -173,15 +174,15 @@ sinfg::ValueNode_Subtract::set_rhs(ValueNode::Handle b) set_type(ValueBase::TYPE_COLOR); else { - sinfg::warning(get_id()+":(set_b):"+strprintf(_("Types seem to be off for ValueNodes %s and %s"),ref_a->get_id().c_str(),ref_b->get_id().c_str())); + synfig::warning(get_id()+":(set_b):"+strprintf(_("Types seem to be off for ValueNodes %s and %s"),ref_a->get_id().c_str(),ref_b->get_id().c_str())); set_type(ValueBase::TYPE_NIL); } return true; } -sinfg::ValueBase -sinfg::ValueNode_Subtract::operator()(Time t)const +synfig::ValueBase +synfig::ValueNode_Subtract::operator()(Time t)const { if(!ref_a || !ref_b) throw runtime_error(strprintf("ValueNode_Subtract: %s",_("One or both of my parameters aren't set!"))); @@ -201,7 +202,7 @@ sinfg::ValueNode_Subtract::operator()(Time t)const if(get_type()==ValueBase::TYPE_COLOR) return ((*ref_a)(t).get(Color())-(*ref_b)(t).get(Color()))*(*scalar)(t).get(Real()); - sinfg::error(get_id()+':'+strprintf(_("Cannot subtract types of %s and %s"),ValueBase::type_name(ref_a->get_type()).c_str(),ValueBase::type_name(ref_b->get_type()).c_str())); + synfig::error(get_id()+':'+strprintf(_("Cannot subtract types of %s and %s"),ValueBase::type_name(ref_a->get_type()).c_str(),ValueBase::type_name(ref_b->get_type()).c_str())); return ValueBase(); } @@ -262,7 +263,7 @@ ValueNode_Subtract::link_local_name(int i)const return _("Scalar"); } return String(); -} +} String ValueNode_Subtract::link_name(int i)const @@ -278,7 +279,7 @@ ValueNode_Subtract::link_name(int i)const return "scalar"; } return String(); -} +} int ValueNode_Subtract::get_link_index_from_name(const String &name)const @@ -307,7 +308,7 @@ ValueNode_Subtract::get_local_name()const bool ValueNode_Subtract::check_type(ValueBase::Type type) { - return type==ValueBase::TYPE_VECTOR + return type==ValueBase::TYPE_VECTOR || type==ValueBase::TYPE_REAL || type==ValueBase::TYPE_INTEGER || type==ValueBase::TYPE_COLOR