X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-core%2Fsrc%2Ftool%2Fmain.cpp;h=789465128b2ffff7a4bd78521610a931b949a612;hb=ee0cc78c52143c3f4739076a3b3dff6e3106ecd8;hp=fbf64b05caa3b4b9d660fb49bf87e3b5ddc6cbfb;hpb=adfc80c126f482d7ea2bac38001a2c4a7c7df88c;p=synfig.git diff --git a/synfig-core/src/tool/main.cpp b/synfig-core/src/tool/main.cpp index fbf64b0..7894651 100644 --- a/synfig-core/src/tool/main.cpp +++ b/synfig-core/src/tool/main.cpp @@ -45,55 +45,23 @@ #include #include #include +#include #include #include #include #include #include #include +#include "definitions.h" +#include "progress.h" +#include "renderprogress.h" +#include "job.h" #endif using namespace std; using namespace etl; using namespace synfig; -/* === M A C R O S ========================================================= */ - -#ifdef ENABLE_NLS -#undef _ -#define _(x) gettext(x) -#else -#undef _ -#define _(x) (x) -#endif - -enum exit_code -{ - SYNFIGTOOL_OK = 0, - SYNFIGTOOL_FILENOTFOUND = 1, - SYNFIGTOOL_BORED = 2, - SYNFIGTOOL_HELP = 3, - SYNFIGTOOL_UNKNOWNARGUMENT = 4, - SYNFIGTOOL_UNKNOWNERROR = 5, - SYNFIGTOOL_INVALIDTARGET = 6, - SYNFIGTOOL_RENDERFAILURE = 7, - SYNFIGTOOL_BLANK = 8, - SYNFIGTOOL_BADVERSION = 9, - SYNFIGTOOL_MISSINGARGUMENT =10 -}; - -#ifndef VERSION -#define VERSION "unknown" -#define PACKAGE "synfig-tool" -#endif - -#ifdef DEFAULT_QUALITY -#undef DEFAULT_QUALITY -#endif - -#define DEFAULT_QUALITY 2 -#define VERBOSE_OUT(x) if(verbosity>=(x))std::cerr - /* === G L O B A L S ======================================================= */ const char *progname; @@ -101,182 +69,13 @@ int verbosity=0; bool be_quiet=false; bool print_benchmarks=false; -/* === M E T H O D S ======================================================= */ - -class Progress : public synfig::ProgressCallback -{ - const char *program; - -public: - - Progress(const char *name):program(name) { } - - virtual bool - task(const String &task) - { - VERBOSE_OUT(1)<=60) - minutes++,seconds-=60; - while(minutes>=60) - hours++,minutes-=60; - while(hours>=24) - days++,hours-=24; - while(days>=7) - weeks++,days-=7; - - cerr<=-time/(h-clk_scanline) ) - cerr<<">"; - */ - if(delta>=0 && clk()>4.0 && scanline>clk_scanline+200) - { - //cerr<<"reset"< arg_list_t; typedef list job_list_t; +/* === M E T H O D S ======================================================= */ + void guid_test() { cout<<"GUID Test"<c_str()); - arg_list.erase(iter); + w = atoi(extract_parameter(arg_list, iter, next).c_str()); } else if(*iter=="-h") { - arg_list.erase(iter); - iter=next++; - h=atoi(iter->c_str()); - arg_list.erase(iter); + h = atoi(extract_parameter(arg_list, iter, next).c_str()); } else if(*iter=="-a") { int a; - arg_list.erase(iter); - iter=next++; - a=atoi(iter->c_str()); + a = atoi(extract_parameter(arg_list, iter, next).c_str()); desc.set_antialias(a); VERBOSE_OUT(1)<c_str()); + span = atoi(extract_parameter(arg_list, iter, next).c_str()); VERBOSE_OUT(1)<c_str()); + float fps = atof(extract_parameter(arg_list, iter, next).c_str()); desc.set_frame_rate(fps); - arg_list.erase(iter); VERBOSE_OUT(1)<c_str()); + float dpi = atof(extract_parameter(arg_list, iter, next).c_str()); float dots_per_meter=dpi*39.3700787402; desc.set_x_res(dots_per_meter).set_y_res(dots_per_meter); - arg_list.erase(iter); VERBOSE_OUT(1)<c_str()); + float dpi = atof(extract_parameter(arg_list, iter, next).c_str()); float dots_per_meter=dpi*39.3700787402; desc.set_x_res(dots_per_meter); - arg_list.erase(iter); VERBOSE_OUT(1)<c_str()); + float dpi = atof(extract_parameter(arg_list, iter, next).c_str()); float dots_per_meter=dpi*39.3700787402; desc.set_y_res(dots_per_meter); - arg_list.erase(iter); VERBOSE_OUT(1)<c_str()))); - arg_list.erase(iter); + //desc.set_gamma(Gamma(atoi(extract_parameter(arg_list, iter, next).c_str()))); } else if (flag_requires_value(*iter)) - iter=next++; + iter++; } if (w||h) { @@ -717,14 +502,11 @@ int extract_quality(arg_list_t &arg_list,int &quality) { if(*iter=="-Q") { - arg_list.erase(iter); - iter=next++; - quality=atoi(iter->c_str()); + quality = atoi(extract_parameter(arg_list, iter, next).c_str()); VERBOSE_OUT(1)<c_str()); + threads = atoi(extract_parameter(arg_list, iter, next).c_str()); VERBOSE_OUT(1)<