X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-core%2Ftrunk%2Fsrc%2Fsynfig%2Fvaluenode_timedswap.cpp;h=4724d04872bc76fd68cbd670fa4ca73e9dc021b3;hb=0d0bdc9197855391289aad7a9256a4287015960d;hp=fda0eeb59c1bfa3ea09704dcc7f861d4838897f8;hpb=28f28705612902c15cd0702cc891fba35bf2d2df;p=synfig.git diff --git a/synfig-core/trunk/src/synfig/valuenode_timedswap.cpp b/synfig-core/trunk/src/synfig/valuenode_timedswap.cpp index fda0eeb..4724d04 100644 --- a/synfig-core/trunk/src/synfig/valuenode_timedswap.cpp +++ b/synfig-core/trunk/src/synfig/valuenode_timedswap.cpp @@ -2,19 +2,20 @@ /*! \file valuenode_timedswap.cpp ** \brief Template File ** -** $Id: valuenode_timedswap.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 */ /* ========================================================================= */ @@ -130,7 +131,7 @@ bool ValueNode_TimedSwap::set_swap_time(const ValueNode::Handle &x) { if(!x - || !ValueBase(ValueBase::TYPE_TIME).same_as(x->get_type()) + || !ValueBase(ValueBase::TYPE_TIME).same_type_as(x->get_type()) && !PlaceholderValueNode::Handle::cast_dynamic(x) ) return false; @@ -154,7 +155,7 @@ bool ValueNode_TimedSwap::set_swap_length(const ValueNode::Handle &x) { if(!x || ( - !ValueBase(ValueBase::TYPE_TIME).same_as(x->get_type()) + !ValueBase(ValueBase::TYPE_TIME).same_type_as(x->get_type()) && !PlaceholderValueNode::Handle::cast_dynamic(x) ) ) @@ -179,13 +180,13 @@ synfig::ValueNode_TimedSwap::operator()(Time t)const if(t>swptime) return (*after)(t); - + if(t<=swptime && t>swptime-swplength) { Real amount=(swptime-t)/swplength; // if amount==0.0, then we are after // if amount==1.0, then we are before - + switch(get_type()) { case ValueBase::TYPE_REAL: @@ -289,9 +290,10 @@ ValueNode_TimedSwap::link_local_name(int i)const return _("Swap Time"); case 3: return _("Swap Duration"); + default: + return 0; } - return 0; -} +} String ValueNode_TimedSwap::link_name(int i)const @@ -307,9 +309,10 @@ ValueNode_TimedSwap::link_name(int i)const return "time"; case 3: return "length"; + default: + return String(); } - return 0; -} +} int ValueNode_TimedSwap::get_link_index_from_name(const String &name)const