X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-core%2Ftags%2F0.61.08%2Fsrc%2Fsynfig%2Fvaluenode_duplicate.cpp;fp=synfig-core%2Ftags%2F0.61.08%2Fsrc%2Fsynfig%2Fvaluenode_duplicate.cpp;h=0000000000000000000000000000000000000000;hb=6fa8f2f38d4b0b35f8539bf94e27ae27015c7689;hp=a8e5801af6c987fd61ad4a92714fed57c4cb53a8;hpb=47fce282611fbba1044921d22ca887f9b53ad91a;p=synfig.git diff --git a/synfig-core/tags/0.61.08/src/synfig/valuenode_duplicate.cpp b/synfig-core/tags/0.61.08/src/synfig/valuenode_duplicate.cpp deleted file mode 100644 index a8e5801..0000000 --- a/synfig-core/tags/0.61.08/src/synfig/valuenode_duplicate.cpp +++ /dev/null @@ -1,214 +0,0 @@ -/* === S Y N F I G ========================================================= */ -/*! \file valuenode_duplicate.cpp -** \brief Implementation of the "Duplicate" valuenode conversion. -** -** $Id$ -** -** \legal -** Copyright (c) 2002-2005 Robert B. Quattlebaum Jr., Adrian Bentley -** Copyright (c) 2007, 2008 Chris Moore -** -** 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. -** -** 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 -*/ -/* ========================================================================= */ - -/* === H E A D E R S ======================================================= */ - -#ifdef USING_PCH -# include "pch.h" -#else -#ifdef HAVE_CONFIG_H -# include -#endif - -#include "valuenode_duplicate.h" -#include "valuenode_const.h" -#include "general.h" - -#endif - -/* === U S I N G =========================================================== */ - -using namespace std; -using namespace etl; -using namespace synfig; - -/* === M A C R O S ========================================================= */ - -/* === G L O B A L S ======================================================= */ - -/* === P R O C E D U R E S ================================================= */ - -/* === M E T H O D S ======================================================= */ - -ValueNode_Duplicate::ValueNode_Duplicate(const ValueBase::Type &x): - LinkableValueNode(x) -{ -} - -ValueNode_Duplicate::ValueNode_Duplicate(const ValueBase &x): - LinkableValueNode(x.get_type()) -{ - 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))); - index = 1.0; -} - -ValueNode_Duplicate* -ValueNode_Duplicate::create(const ValueBase &x) -{ - return new ValueNode_Duplicate(x); -} - -LinkableValueNode* -ValueNode_Duplicate::create_new()const -{ - return new ValueNode_Duplicate(get_type()); -} - -ValueNode_Duplicate::~ValueNode_Duplicate() -{ - unlink_all(); -} - -bool -ValueNode_Duplicate::set_link_vfunc(int i,ValueNode::Handle value) -{ - assert(i>=0 && i=0 && i=0 && i=0 && i= to) return true; - - // at the end of the loop, leave the index at the last value that was used - index = prev; - return false; -} - -int -ValueNode_Duplicate::count_steps(Time t)const -{ - Real from = (*from_)(t).get(Real()); - Real to = (*to_ )(t).get(Real()); - Real step = (*step_)(t).get(Real()); - - if (step == 0) return 1; - - return abs((from - to) / step) + 1; -} - -ValueBase -ValueNode_Duplicate::operator()(Time t __attribute__ ((unused)))const -{ - return index; -} - -String -ValueNode_Duplicate::get_name()const -{ - return "duplicate"; -} - -String -ValueNode_Duplicate::get_local_name()const -{ - return _("Duplicate"); -} - -bool -ValueNode_Duplicate::check_type(ValueBase::Type type __attribute__ ((unused))) -{ - // never offer this as a choice. it's used automatically by the 'Duplicate' layer. - return false; -}