Applied patch from Karvjorm (ticket #7154): Localization for JPEG2000 translator.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40283 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Jérôme Duval
2011-01-24 22:20:42 +00:00
parent 6f4c36e297
commit c44966dff2
3 changed files with 63 additions and 23 deletions
@@ -40,6 +40,9 @@ EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include <TextView.h> #include <TextView.h>
#undef B_TRANSLATE_CONTEXT
#define B_TRANSLATE_CONTEXT "JPEG2000Translator"
// Set these accordingly // Set these accordingly
#define JP2_ACRONYM "JP2" #define JP2_ACRONYM "JP2"
#define JP2_FORMAT 'JP2 ' #define JP2_FORMAT 'JP2 '
@@ -615,7 +618,7 @@ TranslatorWriteView::TranslatorWriteView(const char* name,
new BMessage(VIEW_MSG_SET_QUALITY), 0, 100); new BMessage(VIEW_MSG_SET_QUALITY), 0, 100);
fQualitySlider->SetHashMarks(B_HASH_MARKS_BOTTOM); fQualitySlider->SetHashMarks(B_HASH_MARKS_BOTTOM);
fQualitySlider->SetHashMarkCount(10); fQualitySlider->SetHashMarkCount(10);
fQualitySlider->SetLimitLabels("Low", "High"); fQualitySlider->SetLimitLabels(B_TRANSLATE("Low"), B_TRANSLATE("High"));
fQualitySlider->SetValue(fSettings->SetGetInt32(JP2_SET_QUALITY)); fQualitySlider->SetValue(fSettings->SetGetInt32(JP2_SET_QUALITY));
fGrayAsRGB24 = new BCheckBox("gray1asrgb24", VIEW_LABEL_GRAY1ASRGB24, fGrayAsRGB24 = new BCheckBox("gray1asrgb24", VIEW_LABEL_GRAY1ASRGB24,
@@ -703,18 +706,31 @@ TranslatorAboutView::TranslatorAboutView(const char* name)
{ {
BAlignment labelAlignment = BAlignment(B_ALIGN_LEFT, B_ALIGN_TOP); BAlignment labelAlignment = BAlignment(B_ALIGN_LEFT, B_ALIGN_TOP);
BStringView* title = new BStringView("Title", sTranslatorName); BStringView* title = new BStringView("Title", sTranslatorName);
title->SetText(B_TRANSLATE_MARK("JPEG2000 images"));
title->SetFont(be_bold_font); title->SetFont(be_bold_font);
title->SetExplicitAlignment(labelAlignment); title->SetExplicitAlignment(labelAlignment);
char versionString[16]; char versionString[16];
sprintf(versionString, "v%d.%d.%d", (int)(sTranslatorVersion >> 8), sprintf(versionString, "v%d.%d.%d",
(int)((sTranslatorVersion >> 4) & 0xf), (int)(sTranslatorVersion & 0xf)); static_cast<int>(sTranslatorVersion >> 8),
static_cast<int>((sTranslatorVersion >> 4) & 0xf),
static_cast<int>(sTranslatorVersion & 0xf));
BStringView* version = new BStringView("Version", versionString); BStringView* version = new BStringView("Version", versionString);
version->SetExplicitAlignment(labelAlignment); version->SetExplicitAlignment(labelAlignment);
BTextView* infoView = new BTextView("info"); 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->SetViewColor(ui_color(B_PANEL_BACKGROUND_COLOR));
infoView->MakeEditable(false); infoView->MakeEditable(false);
@@ -738,9 +754,11 @@ TranslatorView::TranslatorView(const char* name, TranslatorSettings* settings)
: :
BTabView(name) BTabView(name)
{ {
AddTab(new TranslatorWriteView("Write", settings->Acquire())); AddTab(new TranslatorWriteView(B_TRANSLATE("Write"),
AddTab(new TranslatorReadView("Read", settings->Acquire())); settings->Acquire()));
AddTab(new TranslatorAboutView("About")); AddTab(new TranslatorReadView(B_TRANSLATE("Read"),
settings->Acquire()));
AddTab(new TranslatorAboutView(B_TRANSLATE("About")));
settings->Release(); settings->Release();
@@ -985,7 +1003,7 @@ JP2Translator::Compress(BPositionIO* in, BPositionIO* out)
break; break;
default: default:
fprintf(stderr, "Unknown color space.\n"); fprintf(stderr, B_TRANSLATE("Unknown color space.\n"));
return B_ERROR; return B_ERROR;
} }
@@ -1106,7 +1124,8 @@ JP2Translator::Decompress(BPositionIO* in, BPositionIO* out)
out_color_space = B_RGBA32; out_color_space = B_RGBA32;
converter = read_rgba32; converter = read_rgba32;
} else { } 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); return Error(ins, image, NULL, 0, NULL, B_ERROR);
} }
break; break;
@@ -1122,12 +1141,13 @@ JP2Translator::Decompress(BPositionIO* in, BPositionIO* out)
} }
break; break;
case JAS_IMAGE_CS_YCBCR: 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); return Error(ins, image, NULL, 0, NULL, B_ERROR);
break; break;
case JAS_IMAGE_CS_UNKNOWN: case JAS_IMAGE_CS_UNKNOWN:
default: default:
fprintf(stderr, "Color space unkown. \n"); fprintf(stderr, B_TRANSLATE("Color space unknown. \n"));
return Error(ins, image, NULL, 0, NULL, B_ERROR); return Error(ins, image, NULL, 0, NULL, B_ERROR);
break; break;
} }
@@ -1233,8 +1253,15 @@ JP2Translator::PopulateInfoFromFormat(translator_info* info,
info->group = formats[i].group; info->group = formats[i].group;
info->quality = formats[i].quality; info->quality = formats[i].quality;
info->capability = formats[i].capability; info->capability = formats[i].capability;
strcpy(info->name, formats[i].name); if (strncmp(formats[i].name,
strcpy(info->MIME, formats[i].MIME); "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; return B_OK;
} }
} }
@@ -1287,7 +1314,8 @@ main()
{ {
BApplication app("application/x-vnd.Haiku-JPEG2000Translator"); BApplication app("application/x-vnd.Haiku-JPEG2000Translator");
JP2Translator* translator = new JP2Translator(); JP2Translator* translator = new JP2Translator();
if (LaunchTranslatorWindow(translator, sTranslatorName) == B_OK) if (LaunchTranslatorWindow(translator, B_TRANSLATE("JPEG2000 images")
/*sTranslatorName*/) == B_OK)
app.Run(); app.Run();
return 0; return 0;
@@ -35,6 +35,7 @@ EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include <Alert.h> #include <Alert.h>
#include <Application.h> #include <Application.h>
#include <Catalog.h>
#include <CheckBox.h> #include <CheckBox.h>
#include <FindDirectory.h> #include <FindDirectory.h>
#include <Path.h> #include <Path.h>
@@ -52,13 +53,16 @@ EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include "libjasper/jasper.h" #include "libjasper/jasper.h"
#undef B_TRANSLATE_CONTEXT
#define B_TRANSLATE_CONTEXT "JPEG2000Translator"
// Settings // Settings
#define JP2_SETTINGS_FILE "JPEG2000Translator" #define JP2_SETTINGS_FILE "JPEG2000Translator"
#define JP2_SET_QUALITY "quality" #define JP2_SET_QUALITY B_TRANSLATE_MARK("quality")
#define JP2_SET_GRAY1_AS_B_RGB24 "24 from gray1" #define JP2_SET_GRAY1_AS_B_RGB24 B_TRANSLATE_MARK("24 from gray1")
#define JP2_SET_GRAY8_AS_B_RGB32 "32 from gray8" #define JP2_SET_GRAY8_AS_B_RGB32 B_TRANSLATE_MARK("32 from gray8")
#define JP2_SET_JPC "jpc" #define JP2_SET_JPC B_TRANSLATE_MARK("jpc")
// View messages // View messages
#define VIEW_MSG_SET_QUALITY 'JSCQ' #define VIEW_MSG_SET_QUALITY 'JSCQ'
@@ -67,11 +71,12 @@ EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#define VIEW_MSG_SET_GRAYASRGB32 'JSAC' #define VIEW_MSG_SET_GRAYASRGB32 'JSAC'
// View labels // View labels
#define VIEW_LABEL_QUALITY "Output quality" #define VIEW_LABEL_QUALITY B_TRANSLATE_MARK("Output quality")
#define VIEW_LABEL_JPC "Output only codestream (.jpc)" #define VIEW_LABEL_JPC B_TRANSLATE_MARK("Output only codestream (.jpc)")
#define VIEW_LABEL_GRAY1ASRGB24 "Write black-and-white images as RGB24" #define VIEW_LABEL_GRAY1ASRGB24 \
#define VIEW_LABEL_GRAYASRGB32 "Read greyscale images as RGB32" B_TRANSLATE_MARK("Write black-and-white images as RGB24")
#define VIEW_LABEL_GRAYASRGB32 \
B_TRANSLATE_MARK("Read greyscale images as RGB32")
/*! /*!
+7
View File
@@ -74,6 +74,13 @@ Translator JPEG2000Translator :
: true : true
; ;
DoCatalogs JPEG2000Translator :
x-vnd.Haiku-JPEG2000Translator
:
JPEG2000Translator.h
JPEG2000Translator.cpp
;
Package haiku-translationkit-cvs : Package haiku-translationkit-cvs :
JPEG2000Translator : JPEG2000Translator :
boot home config add-ons Translators ; boot home config add-ons Translators ;