X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;ds=sidebyside;f=synfig-core%2Ftrunk%2Fsrc%2Fmodules%2Fmod_geometry%2Fregion.cpp;h=462d30e2d583c1f853d8ab602dd0482060349ad4;hb=22da35a8d50ea32105199b4a84ba294171eccc22;hp=d50a3e725b934cb2fbbbf009a93ac5fe91882c89;hpb=2a5afe6a69e0ae56ef8b4e0fc3dd9f5f26f8a366;p=synfig.git diff --git a/synfig-core/trunk/src/modules/mod_geometry/region.cpp b/synfig-core/trunk/src/modules/mod_geometry/region.cpp index d50a3e7..462d30e 100644 --- a/synfig-core/trunk/src/modules/mod_geometry/region.cpp +++ b/synfig-core/trunk/src/modules/mod_geometry/region.cpp @@ -1,9 +1,12 @@ /* === S Y N F I G ========================================================= */ /*! \file region.cpp -** \brief Template Header +** \brief Implementation of the "Region" layer +** +** $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 @@ -57,10 +60,10 @@ using namespace etl; SYNFIG_LAYER_INIT(Region); SYNFIG_LAYER_SET_NAME(Region,"region"); -SYNFIG_LAYER_SET_LOCAL_NAME(Region,_("Region")); -SYNFIG_LAYER_SET_CATEGORY(Region,_("Geometry")); +SYNFIG_LAYER_SET_LOCAL_NAME(Region,N_("Region")); +SYNFIG_LAYER_SET_CATEGORY(Region,N_("Geometry")); SYNFIG_LAYER_SET_VERSION(Region,"0.1"); -SYNFIG_LAYER_SET_CVS_ID(Region,"$Id: region.cpp,v 1.1.1.1 2005/01/04 01:23:10 darco Exp $"); +SYNFIG_LAYER_SET_CVS_ID(Region,"$Id$"); /* === P R O C E D U R E S ================================================= */ @@ -91,9 +94,9 @@ void Region::sync() { if(bline.get_contained_type()==ValueBase::TYPE_BLINEPOINT) - { segment_list=convert_bline_to_segment_list(bline); - } + else if(bline.get_contained_type()==ValueBase::TYPE_SEGMENT) + segment_list=vector(bline.get_list().begin(), bline.get_list().end()); else { synfig::warning("Region: incorrect type on bline, layer disabled"); @@ -155,11 +158,9 @@ Region::sync() } } - //add a single point onto the end so it actually fits the shape, so we can be awesome... + //add the starting point onto the end so it actually fits the shape, so we can be extra awesome... if(!looped) - { - vector_list.push_back(curve.p2()); - } + vector_list.push_back(segment_list[0].p1); clear(); add_polygon(vector_list); @@ -229,7 +230,7 @@ Region::get_param_vocab()const ret.push_back(ParamDesc("bline") .set_local_name(_("Vertices")) - .set_origin("offset") + .set_origin("origin") ); return ret;