Author: Diego Barrios Romero <[email protected]>
Date: Mon Feb 13 20:05:41 2012 +0100
Append option
---
synfig-core/src/tool/main.cpp | 62 +++++++++++++++++++++++++++++++++++++----
1 files changed, 56 insertions(+), 6 deletions(-)
diff --git a/synfig-core/src/tool/main.cpp b/synfig-core/src/tool/main.cpp
index 998c114..84b98e0 100644
--- a/synfig-core/src/tool/main.cpp
+++ b/synfig-core/src/tool/main.cpp
@@ -441,6 +441,8 @@ int main(int ac, char* av[])
Progress p(progname);
synfig::Main synfig_main(dirname(progname), &p);
+ list<Job> job_list;
+
if (vm.count("layers"))
{
synfig::Layer::Book::iterator iter =
@@ -522,7 +524,55 @@ int main(int ac, char* av[])
return SYNFIGTOOL_HELP;
}
- //FIXME: append has to be before list-canvases
+ // WARNING: canvas must be before append
+
+ if (vm.count("canvas"))
+ {
+ Job job;
+ bool correct_job = true;
+ int ret;
+ ret = job.load_file(vm["input-file"].as<string>());
+
+ if (ret != SYNFIGTOOL_OK)
+ return ret;
+
+ job.root()->set_time(0);
+
+ string canvasid;
+ canvasid = vm["canvas"].as<string>();
+
+ try
+ {
+ string warnings;
+ job.canvas = job.root()->find_canvas(canvasid,
warnings);
+ }
+ catch(Exception::IDNotFound)
+ {
+ cerr << _("Unable to find canvas with ID \"")
+ << canvasid << _("\" in ") <<
job.filename() << "."
+ << endl;
+ cerr << _("Throwing out job...") << endl;
+ correct_job = false;
+ }
+ catch(Exception::BadLinkName)
+ {
+ cerr << _("Invalid canvas name \"") << canvasid
+ << _("\" in ") << job.filename() <<
"." << endl;
+ cerr << _("Throwing out job...") << endl;
+ correct_job = false;
+ }
+
+ // Later we need to set the other parameters for the
jobs
+ if (correct_job)
+ job_list.push_front(job);
+ }
+
+ // WARNING: append must be before list-canvases
+
+ if (vm.count("append"))
+ {
+
+ }
if (vm.count("list-canvases"))
{
@@ -556,13 +606,13 @@ int main(int ac, char* av[])
}
// Setup Job list ----------------------------------------------
-
- list<Job> job_list;
-
+
+ //list<Job> job_list;
+
// ...
-
+
// Process Job list --------------------------------------------
-
+
if(!job_list.size())
{
cerr << _("Nothing to do!") << endl;
------------------------------------------------------------------------------
Try before you buy = See our experts in action!
The most comprehensive online learning library for Microsoft developers
is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,
Metro Style Apps, more. Free future releases when you subscribe now!
http://p.sf.net/sfu/learndevnow-dev2
_______________________________________________
Synfig-devl mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/synfig-devl