projects
/
synfig.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Remove spaces and tabs at end of lines.
[synfig.git]
/
synfig-core
/
trunk
/
src
/
modules
/
mod_geometry
/
outline.cpp
diff --git
a/synfig-core/trunk/src/modules/mod_geometry/outline.cpp
b/synfig-core/trunk/src/modules/mod_geometry/outline.cpp
index
597fe82
..
e84effb
100644
(file)
--- a/
synfig-core/trunk/src/modules/mod_geometry/outline.cpp
+++ b/
synfig-core/trunk/src/modules/mod_geometry/outline.cpp
@@
-1,11
+1,12
@@
/* === S Y N F I G ========================================================= */
/*! \file outline.cpp
/* === S Y N F I G ========================================================= */
/*! \file outline.cpp
-** \brief
Template
+** \brief
Implementation of the "Outline" layer
**
** $Id$
**
** \legal
** Copyright (c) 2002-2005 Robert B. Quattlebaum Jr., Adrian Bentley
**
** $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
**
** This package is free software; you can redistribute it and/or
** modify it under the terms of the GNU General Public License as
@@
-66,8
+67,8
@@
using namespace etl;
SYNFIG_LAYER_INIT(Outline);
SYNFIG_LAYER_SET_NAME(Outline,"outline");
SYNFIG_LAYER_INIT(Outline);
SYNFIG_LAYER_SET_NAME(Outline,"outline");
-SYNFIG_LAYER_SET_LOCAL_NAME(Outline,_("Outline"));
-SYNFIG_LAYER_SET_CATEGORY(Outline,_("Geometry"));
+SYNFIG_LAYER_SET_LOCAL_NAME(Outline,
N
_("Outline"));
+SYNFIG_LAYER_SET_CATEGORY(Outline,
N
_("Geometry"));
SYNFIG_LAYER_SET_VERSION(Outline,"0.2");
SYNFIG_LAYER_SET_CVS_ID(Outline,"$Id$");
SYNFIG_LAYER_SET_VERSION(Outline,"0.2");
SYNFIG_LAYER_SET_CVS_ID(Outline,"$Id$");
@@
-98,7
+99,7
@@
Point line_intersection(
float m1,m2; // the slopes of each line
float m1,m2; // the slopes of each line
- // compute slopes, note the
clud
ge for infinity, however, this will
+ // compute slopes, note the
klu
ge for infinity, however, this will
// be close enough
if ((x1-x0)!=0)
// be close enough
if ((x1-x0)!=0)
@@
-171,10
+172,25
@@
void
Outline::sync()
{
clear();
Outline::sync()
{
clear();
+
+ if (!bline.get_list().size())
+ {
+ synfig::warning(string("Outline::sync():")+N_("No vertices in outline " + string("\"") + get_description() + string("\"")));
+ return;
+ }
+
try {
#if 1
const bool loop(bline.get_loop());
try {
#if 1
const bool loop(bline.get_loop());
+
+ ValueNode_BLine::Handle bline_valuenode;
+ if (bline.get_contained_type() == ValueBase::TYPE_SEGMENT)
+ {
+ bline_valuenode = ValueNode_BLine::create(bline);
+ bline = (*bline_valuenode)(0);
+ }
+
const vector<synfig::BLinePoint> bline_(bline.get_list().begin(),bline.get_list().end());
#define bline bline_
const vector<synfig::BLinePoint> bline_(bline.get_list().begin(),bline.get_list().end());
#define bline bline_
@@
-721,7
+737,7
@@
Outline::set_param(const String & param, const ValueBase &value)
return true;
}
return true;
}
- if( param=="width_list" && value.same_as(width_list))
+ if( param=="width_list" && value.same_
type_
as(width_list))
{
width_list=value;
//sync();
{
width_list=value;
//sync();
@@
-789,8
+805,8
@@
Outline::get_param_vocab()const
ret.push_back(ParamDesc("bline")
.set_local_name(_("Vertices"))
ret.push_back(ParamDesc("bline")
.set_local_name(_("Vertices"))
- .set_origin("o
ffset
")
- .set_
scalar
("width")
+ .set_origin("o
rigin
")
+ .set_
hint
("width")
.set_description(_("A list of BLine Points"))
);
.set_description(_("A list of BLine Points"))
);