projects
/
synfig.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Do not use get_param_vocab().size() as link counter. It is too slow.
[synfig.git]
/
synfig-core
/
src
/
synfig
/
target.cpp
diff --git
a/synfig-core/src/synfig/target.cpp
b/synfig-core/src/synfig/target.cpp
index
6a73822
..
dbeb37e
100644
(file)
--- a/
synfig-core/src/synfig/target.cpp
+++ b/
synfig-core/src/synfig/target.cpp
@@
-6,6
+6,7
@@
**
** \legal
** Copyright (c) 2002-2005 Robert B. Quattlebaum Jr., Adrian Bentley
**
** \legal
** Copyright (c) 2002-2005 Robert B. Quattlebaum Jr., Adrian Bentley
+** Copyright (c) 2010 Diego Barrios Romero
**
** 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
@@
-22,8
+23,6
@@
/* === H E A D E R S ======================================================= */
/* === H E A D E R S ======================================================= */
-#define SYNFIG_NO_ANGLE
-
#ifdef HAVE_CONFIG_H
# include <config.h>
#endif
#ifdef HAVE_CONFIG_H
# include <config.h>
#endif
@@
-33,6
+32,7
@@
#include "canvas.h"
#include "target_null.h"
#include "target_null_tile.h"
#include "canvas.h"
#include "target_null.h"
#include "target_null_tile.h"
+#include "targetparam.h"
using namespace synfig;
using namespace etl;
using namespace synfig;
using namespace etl;
@@
-50,13
+50,20
@@
Target::subsys_init()
{
book_=new synfig::Target::Book();
ext_book_=new synfig::Target::ExtBook();
{
book_=new synfig::Target::Book();
ext_book_=new synfig::Target::ExtBook();
-
+//! \todo Do not hard core gamma to 2.2
default_gamma_=new synfig::Gamma(1.0/2.2);
default_gamma_=new synfig::Gamma(1.0/2.2);
- //default_gamma_->set_black_level(0.05); // Default to 5% black level.
- book()["null"]=std::pair<synfig::Target::Factory,String>(Target_Null::create,"null");
+ // At least one target must be available.
+ book()["null"].factory =
+ reinterpret_cast<synfig::Target::Factory>(&Target_Null::create);
+ book()["null"].filename = "null";
+ book()["null"].target_param = TargetParam();
ext_book()["null"]="null";
ext_book()["null"]="null";
- book()["null-tile"]=std::pair<synfig::Target::Factory,String>(Target_Null_Tile::create,"null-tile");
+
+ book()["null-tile"].factory =
+ reinterpret_cast<synfig::Target::Factory>(&Target_Null_Tile::create);
+ book()["null-tile"].filename = "null-tile";
+ book()["null-tile"].target_param = TargetParam();
ext_book()["null-tile"]="null-tile";
return true;
ext_book()["null-tile"]="null-tile";
return true;
@@
-104,10
+111,11
@@
synfig::Target::set_canvas(etl::handle<Canvas> c)
Target::Handle
Target::Handle
-Target::create(const String &name, const String &filename)
+Target::create(const String &name, const String &filename,
+ synfig::TargetParam params)
{
if(!book().count(name))
return handle<Target>();
{
if(!book().count(name))
return handle<Target>();
- return Target::Handle(book()[name].f
irst(filename.c_str()
));
+ return Target::Handle(book()[name].f
actory(filename.c_str(), params
));
}
}