void MoreInjector::inject(const Icon* icon, const std::map<std::string, std::string>& params) { string size = verifyParameter(params, "size"); string dst = verifyParameter(params, "dst"); const IconInstance* iconInst = icon->findBestInstance(size); if(!iconInst) errorExit("Couldn't find any icon instance."); if(!convertInstanceToImageFormat(iconInst, dst.c_str(), size, getExtension(dst))) errorExit("MoRE icon conversion failed."); }
void WP7Injector::inject(const Icon* icon, const std::map<std::string, std::string>& params) { string size = verifyParameter(params, "size"); /**if (size != "default" && size != "72x72" && size != "57x57" && size != "114x114") { errorExit("iOS only supports these icon sizes: 57x57, 114x114 and 72x72"); }**/ if(size != "default" && size != "62x62" && size != "173x173") { errorExit( "Windows Phone requires an image size of 62x62 for" "the application icon, and 173x173 for the background image (for tiles)." ); } string dst = verifyParameter(params, "dst"); const IconInstance* iconInst = icon->findBestInstance(size); if(!iconInst) { map<string, string>::const_iterator i = params.find("lenient"); if (i == params.end()) { errorExit("Couldn't find any icon instance."); } else { printf("Warning: found no icon with size %s.\n", size.c_str()); } } else { if(!convertInstanceToImageFormat(iconInst, dst.c_str(), size, "png")) { errorExit("Windows Phone 7 icon conversion failed."); } } }
void Symbian9Injector::inject(const Icon* icon, const std::map<std::string, std::string>& params) { string size = verifyParameter(params, "size"); string dst = verifyParameter(params, "dst"); const IconInstance* iconInst = icon->findBestInstance(size, "svg"); if(!iconInst) errorExit("Couldn't find an SVG icon instance."); string ext = getExtension(iconInst->filename); // Bitmaps on s60v3/v5 phones turn invisible or // make the entire program menu invisible, respectively. // Disabled for now. #if 0 string mifconvSrc; if(ext == "svg") { //preserve mifconvSrc = iconInst->filename; } else { //convert to bmp mifconvSrc = "temp.bmp"; if(!convertInstanceToImageFormat(iconInst, mifconvSrc.c_str(), size, "bmp")) errorExit("Java icon conversion failed."); } #else string mifconvSrc = iconInst->filename; #endif char buf[2048]; const char *mosyncdir_c = getenv("MOSYNCDIR"); if(!mosyncdir_c) errorExit("MOSYNCDIR missing"); #ifdef WIN32 sprintf(buf, "\"%s\\bin\\mifconv.exe\" \"%s\" \"%s\"", mosyncdir_c, dst.c_str(), mifconvSrc.c_str()); #else sprintf(buf, "\"%s/bin/mifconv\" \"%s\" \"%s\"", mosyncdir_c, dst.c_str(), mifconvSrc.c_str()); #endif int res = run(buf); if(res != 0) errorExit("mifconf failed"); }
void IOSInjector::inject(const Icon* icon, const std::map<std::string, std::string>& params) { string size = verifyParameter(params, "size"); if (size != "default" && size != "72x72" && size != "57x57" && size != "114x114") { errorExit("iOS only supports these icon sizes: 57x57, 114x114 and 72x72"); } string dst = verifyParameter(params, "dst"); const IconInstance* iconInst = icon->findBestInstance(size); if(!iconInst) { map<string, string>::const_iterator i = params.find("lenient"); if (i == params.end()) { errorExit("Couldn't find any icon instance."); } else { printf("Warning: found no icon with size %s.\n", size.c_str()); } } else { if(!convertInstanceToImageFormat(iconInst, dst.c_str(), size, "png")) { errorExit("IOS icon conversion failed."); } } }