Author: korli Date: 2011-01-24 23:20:42 +0100 (Mon, 24 Jan 2011) New Revision: 40283 Changeset: http://dev.haiku-os.org/changeset/40283 Ticket: http://dev.haiku-os.org/ticket/7154 Modified: haiku/trunk/src/add-ons/translators/jpeg2000/JPEG2000Translator.cpp haiku/trunk/src/add-ons/translators/jpeg2000/JPEG2000Translator.h haiku/trunk/src/add-ons/translators/jpeg2000/Jamfile Log: Applied patch from Karvjorm (ticket #7154): Localization for JPEG2000 translator. Modified: haiku/trunk/src/add-ons/translators/jpeg2000/JPEG2000Translator.cpp =================================================================== --- haiku/trunk/src/add-ons/translators/jpeg2000/JPEG2000Translator.cpp 2011-01-24 22:10:43 UTC (rev 40282) +++ haiku/trunk/src/add-ons/translators/jpeg2000/JPEG2000Translator.cpp 2011-01-24 22:20:42 UTC (rev 40283) @@ -40,6 +40,9 @@ #include <TextView.h> +#undef B_TRANSLATE_CONTEXT +#define B_TRANSLATE_CONTEXT "JPEG2000Translator" + // Set these accordingly #define JP2_ACRONYM "JP2" #define JP2_FORMAT 'JP2 ' @@ -615,7 +618,7 @@ new BMessage(VIEW_MSG_SET_QUALITY), 0, 100); fQualitySlider->SetHashMarks(B_HASH_MARKS_BOTTOM); fQualitySlider->SetHashMarkCount(10); - fQualitySlider->SetLimitLabels("Low", "High"); + fQualitySlider->SetLimitLabels(B_TRANSLATE("Low"), B_TRANSLATE("High")); fQualitySlider->SetValue(fSettings->SetGetInt32(JP2_SET_QUALITY)); fGrayAsRGB24 = new BCheckBox("gray1asrgb24", VIEW_LABEL_GRAY1ASRGB24, @@ -703,18 +706,31 @@ { BAlignment labelAlignment = BAlignment(B_ALIGN_LEFT, B_ALIGN_TOP); BStringView* title = new BStringView("Title", sTranslatorName); + title->SetText(B_TRANSLATE_MARK("JPEG2000 images")); title->SetFont(be_bold_font); title->SetExplicitAlignment(labelAlignment); char versionString[16]; - sprintf(versionString, "v%d.%d.%d", (int)(sTranslatorVersion >> 8), - (int)((sTranslatorVersion >> 4) & 0xf), (int)(sTranslatorVersion & 0xf)); + sprintf(versionString, "v%d.%d.%d", + static_cast<int>(sTranslatorVersion >> 8), + static_cast<int>((sTranslatorVersion >> 4) & 0xf), + static_cast<int>(sTranslatorVersion & 0xf)); BStringView* version = new BStringView("Version", versionString); version->SetExplicitAlignment(labelAlignment); BTextView* infoView = new BTextView("info"); - infoView->SetText(sTranslatorInfo); + BString translationInfo(sTranslatorInfo); + translationInfo.ReplaceFirst("Based on JasPer library:", + B_TRANSLATE("Based on JasPer library:")); + translationInfo.ReplaceFirst("1999-2000, Image Power, Inc. and", + B_TRANSLATE("1999-2000, Image Power, Inc. and")); + translationInfo.ReplaceFirst("the University of British Columbia, Canada.", + B_TRANSLATE("the University of British Columbia, Canada.")); + translationInfo.ReplaceFirst("ImageMagick's jp2 codec was used as " + "\"tutorial\".", B_TRANSLATE("ImageMagick's jp2 codec was used as " + "\"tutorial\".")); + infoView->SetText(translationInfo.String()); infoView->SetViewColor(ui_color(B_PANEL_BACKGROUND_COLOR)); infoView->MakeEditable(false); @@ -738,9 +754,11 @@ : BTabView(name) { - AddTab(new TranslatorWriteView("Write", settings->Acquire())); - AddTab(new TranslatorReadView("Read", settings->Acquire())); - AddTab(new TranslatorAboutView("About")); + AddTab(new TranslatorWriteView(B_TRANSLATE("Write"), + settings->Acquire())); + AddTab(new TranslatorReadView(B_TRANSLATE("Read"), + settings->Acquire())); + AddTab(new TranslatorAboutView(B_TRANSLATE("About"))); settings->Release(); @@ -985,7 +1003,7 @@ break; default: - fprintf(stderr, "Unknown color space.\n"); + fprintf(stderr, B_TRANSLATE("Unknown color space.\n")); return B_ERROR; } @@ -1106,7 +1124,8 @@ out_color_space = B_RGBA32; converter = read_rgba32; } else { - fprintf(stderr, "Other than RGB with 3 or 4 color components not implemented.\n"); + fprintf(stderr, B_TRANSLATE("Other than RGB with 3 or 4 color " + "components not implemented.\n")); return Error(ins, image, NULL, 0, NULL, B_ERROR); } break; @@ -1122,12 +1141,13 @@ } break; case JAS_IMAGE_CS_YCBCR: - fprintf(stderr, "Color space YCBCR not implemented yet.\n"); + fprintf(stderr, B_TRANSLATE("Color space YCBCR not implemented " + "yet.\n")); return Error(ins, image, NULL, 0, NULL, B_ERROR); break; case JAS_IMAGE_CS_UNKNOWN: default: - fprintf(stderr, "Color space unkown. \n"); + fprintf(stderr, B_TRANSLATE("Color space unknown. \n")); return Error(ins, image, NULL, 0, NULL, B_ERROR); break; } @@ -1233,8 +1253,15 @@ info->group = formats[i].group; info->quality = formats[i].quality; info->capability = formats[i].capability; - strcpy(info->name, formats[i].name); - strcpy(info->MIME, formats[i].MIME); + if (strncmp(formats[i].name, + "Be Bitmap Format (JPEG2000Translator)", + sizeof("Be Bitmap Format (JPEG2000Translator)")) == 0) + strncpy(info->name, + B_TRANSLATE("Be Bitmap Format (JPEG2000Translator)"), + sizeof(info->name)); + else + strncpy(info->name, formats[i].name, sizeof(info->name)); + strncpy(info->MIME, formats[i].MIME, sizeof(info->MIME)); return B_OK; } } @@ -1287,7 +1314,8 @@ { BApplication app("application/x-vnd.Haiku-JPEG2000Translator"); JP2Translator* translator = new JP2Translator(); - if (LaunchTranslatorWindow(translator, sTranslatorName) == B_OK) + if (LaunchTranslatorWindow(translator, B_TRANSLATE("JPEG2000 images") + /*sTranslatorName*/) == B_OK) app.Run(); return 0; Modified: haiku/trunk/src/add-ons/translators/jpeg2000/JPEG2000Translator.h =================================================================== --- haiku/trunk/src/add-ons/translators/jpeg2000/JPEG2000Translator.h 2011-01-24 22:10:43 UTC (rev 40282) +++ haiku/trunk/src/add-ons/translators/jpeg2000/JPEG2000Translator.h 2011-01-24 22:20:42 UTC (rev 40283) @@ -35,6 +35,7 @@ #include <Alert.h> #include <Application.h> +#include <Catalog.h> #include <CheckBox.h> #include <FindDirectory.h> #include <Path.h> @@ -52,13 +53,16 @@ #include "libjasper/jasper.h" +#undef B_TRANSLATE_CONTEXT +#define B_TRANSLATE_CONTEXT "JPEG2000Translator" + // Settings #define JP2_SETTINGS_FILE "JPEG2000Translator" -#define JP2_SET_QUALITY "quality" -#define JP2_SET_GRAY1_AS_B_RGB24 "24 from gray1" -#define JP2_SET_GRAY8_AS_B_RGB32 "32 from gray8" -#define JP2_SET_JPC "jpc" +#define JP2_SET_QUALITY B_TRANSLATE_MARK("quality") +#define JP2_SET_GRAY1_AS_B_RGB24 B_TRANSLATE_MARK("24 from gray1") +#define JP2_SET_GRAY8_AS_B_RGB32 B_TRANSLATE_MARK("32 from gray8") +#define JP2_SET_JPC B_TRANSLATE_MARK("jpc") // View messages #define VIEW_MSG_SET_QUALITY 'JSCQ' @@ -67,13 +71,14 @@ #define VIEW_MSG_SET_GRAYASRGB32 'JSAC' // View labels -#define VIEW_LABEL_QUALITY "Output quality" -#define VIEW_LABEL_JPC "Output only codestream (.jpc)" -#define VIEW_LABEL_GRAY1ASRGB24 "Write black-and-white images as RGB24" -#define VIEW_LABEL_GRAYASRGB32 "Read greyscale images as RGB32" +#define VIEW_LABEL_QUALITY B_TRANSLATE_MARK("Output quality") +#define VIEW_LABEL_JPC B_TRANSLATE_MARK("Output only codestream (.jpc)") +#define VIEW_LABEL_GRAY1ASRGB24 \ + B_TRANSLATE_MARK("Write black-and-white images as RGB24") +#define VIEW_LABEL_GRAYASRGB32 \ + B_TRANSLATE_MARK("Read greyscale images as RGB32") - /*! Slider used in TranslatorView With status showing actual value Modified: haiku/trunk/src/add-ons/translators/jpeg2000/Jamfile =================================================================== --- haiku/trunk/src/add-ons/translators/jpeg2000/Jamfile 2011-01-24 22:10:43 UTC (rev 40282) +++ haiku/trunk/src/add-ons/translators/jpeg2000/Jamfile 2011-01-24 22:20:42 UTC (rev 40283) @@ -74,6 +74,13 @@ : true ; +DoCatalogs JPEG2000Translator : + x-vnd.Haiku-JPEG2000Translator + : + JPEG2000Translator.h + JPEG2000Translator.cpp +; + Package haiku-translationkit-cvs : JPEG2000Translator : boot home config add-ons Translators ;