X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-core%2Ftrunk%2Fsrc%2Ftool%2Fmain.cpp;h=7fa7357b251ac90b0b94605eb824a59a66072776;hb=55323d29e72ab09cb29414e861458ed0713b97be;hp=4551b679b61b783527352af1946c28e7946f99a3;hpb=9ec7171ff045c2ef22e40adc882a8efac3ee09b7;p=synfig.git diff --git a/synfig-core/trunk/src/tool/main.cpp b/synfig-core/trunk/src/tool/main.cpp index 4551b67..7fa7357 100644 --- a/synfig-core/trunk/src/tool/main.cpp +++ b/synfig-core/trunk/src/tool/main.cpp @@ -258,6 +258,7 @@ struct Job int quality; bool sifout; + bool list_canvases; }; typedef list arg_list_t; @@ -267,9 +268,7 @@ void guid_test() { cout<<"GUID Test"<",_("Set the physical resolution (dots-per-inch)")); Argument("--dpi-x","",_("Set the physical X resolution (dots-per-inch")); Argument("--dpi-y","",_("Set the physical Y resolution (dots-per-inch)")); + + Argument("--list-canvases",NULL,_("List the exported canvases in the composition")); Argument("--append","",_("Append layers in to composition")); + Argument("--layer-info","",_("Print out layer's description, parameter info, etc.")); Argument("--layers",NULL,_("Print out the list of available layers")); Argument("--targets",NULL,_("Print out the list of available targets")); @@ -418,6 +420,11 @@ int process_global_flags(arg_list_t &arg_list) Progress p(PACKAGE); synfig::Main synfig_main(dirname(progname),&p); iter=next++; + if (iter==arg_list.end()) + { + error("The `%s' flag requires a value. Use --help for a list of options.", "--layer-info"); + return SYNFIGTOOL_MISSINGARGUMENT; + } Layer::Handle layer=synfig::Layer::create(*iter); cout<<"Layer Name: "<get_name()<get_local_name()<children()); + for (Canvas::Children::iterator iter = children.begin(); iter != children.end(); iter++) + { + cout << prefix << ":" << (*iter)->get_id() << endl; + list_child_canvases(prefix + ":" + (*iter)->get_id(), *iter); + } +} + /* === M E T H O D S ======================================================= */ /* === E N T R Y P O I N T ================================================= */ @@ -848,6 +880,7 @@ int main(int argc, char *argv[]) cerr<<_("FATAL: Synfig Version Mismatch")<set_time(0); string canvasid; @@ -919,7 +956,6 @@ int main(int argc, char *argv[]) cerr<<_("Throwing out job...")<set_threads(threads); - } if(imageargs.size()) { @@ -1089,29 +1121,32 @@ int main(int argc, char *argv[]) RenderProgress p; p.task(job_list.front().filename+" ==> "+job_list.front().outfilename); - if(!job_list.front().sifout) + if(job_list.front().sifout) { - VERBOSE_OUT(1)<<_("Rendering...")<render(&p)) + if(!save_canvas(job_list.front().outfilename,job_list.front().canvas)) { cerr<<"Render Failure."<render(&p)) { cerr<<"Render Failure."<