From 87f030bc81b276703b25491b383c854c053a269f Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Sat, 10 Jul 2010 19:20:08 +0000 Subject: [PATCH] Patch by Jorma Karvonnen : localize BaseTranslator. Thanks ! git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37462 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- .../translators/shared/BaseTranslator.cpp | 43 ++++++++++++++++--- .../translators/shared/BaseTranslator.h | 8 ++-- src/add-ons/translators/shared/Jamfile | 9 +++- .../translators/shared/TranslatorWindow.cpp | 11 ++++- .../translators/shared/TranslatorWindow.h | 8 +++- 5 files changed, 64 insertions(+), 15 deletions(-) diff --git a/src/add-ons/translators/shared/BaseTranslator.cpp b/src/add-ons/translators/shared/BaseTranslator.cpp index 80fed094fc..d3d82f009a 100644 --- a/src/add-ons/translators/shared/BaseTranslator.cpp +++ b/src/add-ons/translators/shared/BaseTranslator.cpp @@ -32,8 +32,16 @@ #include #include + +#include +#include + #include "BaseTranslator.h" +#undef B_TRANSLATE_CONTEXT +#define B_TRANSLATE_CONTEXT "BaseTranslator" + + // --------------------------------------------------------------- // Constructor // @@ -53,17 +61,21 @@ BaseTranslator::BaseTranslator(const char *name, const char *info, int32 inCount, const translation_format *outFormats, int32 outCount, const char *settingsFile, TranSetting *defaults, int32 defCount, uint32 tranGroup, uint32 tranType) - : BTranslator() + : + BTranslator() { + const char* _name = NULL; + const char* _info = NULL; + fSettings = new TranslatorSettings(settingsFile, defaults, defCount); fSettings->LoadSettings(); // load settings from the Base Translator settings file fVersion = version; - fName = new char[strlen(name) + 1]; - strcpy(fName, name); - fInfo = new char[strlen(info) + 41]; - sprintf(fInfo, "%s v%d.%d.%d %s", info, + fName = new char[strlen(_name) + 1]; + strcpy(fName, _name); + fInfo = new char[strlen(_info) + 41]; + sprintf(fInfo, "%s v%d.%d.%d %s", _info, static_cast(B_TRANSLATION_MAJOR_VERSION(fVersion)), static_cast(B_TRANSLATION_MINOR_VERSION(fVersion)), static_cast(B_TRANSLATION_REVISION_VERSION(fVersion)), @@ -77,6 +89,7 @@ BaseTranslator::BaseTranslator(const char *name, const char *info, fTranType = tranType; } + // --------------------------------------------------------------- // Destructor // @@ -100,6 +113,7 @@ BaseTranslator::~BaseTranslator() delete[] fInfo; } + // --------------------------------------------------------------- // TranslatorName // @@ -119,6 +133,7 @@ BaseTranslator::TranslatorName() const return fName; } + // --------------------------------------------------------------- // TranslatorInfo // @@ -139,6 +154,7 @@ BaseTranslator::TranslatorInfo() const return fInfo; } + // --------------------------------------------------------------- // TranslatorVersion // @@ -159,6 +175,7 @@ BaseTranslator::TranslatorVersion() const return fVersion; } + // --------------------------------------------------------------- // InputFormats // @@ -184,6 +201,7 @@ BaseTranslator::InputFormats(int32 *out_count) const return NULL; } + // --------------------------------------------------------------- // OutputFormats // @@ -209,6 +227,7 @@ BaseTranslator::OutputFormats(int32 *out_count) const return NULL; } + // --------------------------------------------------------------- // identify_bits_header // @@ -289,7 +308,7 @@ BaseTranslator::identify_bits_header(BPositionIO *inSource, outInfo->group = B_TRANSLATOR_BITMAP; outInfo->quality = 0.2; outInfo->capability = 0.2; - strcpy(outInfo->name, "Be Bitmap Format"); + strcpy(outInfo->name, B_TRANSLATE("Be Bitmap Format")); strcpy(outInfo->MIME, "image/x-be-bitmap"); // Look for quality / capability info in fInputFormats @@ -315,6 +334,7 @@ BaseTranslator::identify_bits_header(BPositionIO *inSource, return B_OK; } + // --------------------------------------------------------------- // BitsCheck // @@ -386,6 +406,7 @@ BaseTranslator::BitsCheck(BPositionIO *inSource, BMessage *ioExtension, return B_OK + 1; } + status_t BaseTranslator::BitsIdentify(BPositionIO *inSource, const translation_format *inFormat, BMessage *ioExtension, @@ -407,6 +428,7 @@ BaseTranslator::BitsIdentify(BPositionIO *inSource, return result; } + // --------------------------------------------------------------- // Identify // @@ -460,6 +482,7 @@ BaseTranslator::Identify(BPositionIO *inSource, } } + // --------------------------------------------------------------- // translate_from_bits_to_bits // @@ -539,6 +562,7 @@ BaseTranslator::translate_from_bits_to_bits(BPositionIO *inSource, return B_NO_TRANSLATOR; } + status_t BaseTranslator::BitsTranslate(BPositionIO *inSource, const translator_info *inInfo, BMessage *ioExtension, uint32 outType, @@ -556,6 +580,7 @@ BaseTranslator::BitsTranslate(BPositionIO *inSource, return result; } + // --------------------------------------------------------------- // Translate // @@ -603,6 +628,7 @@ BaseTranslator::Translate(BPositionIO *inSource, } } + // returns the current translator settings into ioExtension status_t BaseTranslator::GetConfigurationMessage(BMessage *ioExtension) @@ -610,6 +636,7 @@ BaseTranslator::GetConfigurationMessage(BMessage *ioExtension) return fSettings->GetConfigurationMessage(ioExtension); } + // --------------------------------------------------------------- // MakeConfigurationView // @@ -656,12 +683,14 @@ BaseTranslator::MakeConfigurationView(BMessage *ioExtension, BView **outView, outExtent); } + TranslatorSettings * BaseTranslator::AcquireSettings() { return fSettings->Acquire(); } + /////////////////////////////////////////////////////////// // Functions to be implemented by derived classes @@ -673,6 +702,7 @@ BaseTranslator::DerivedIdentify(BPositionIO *inSource, return B_NO_TRANSLATOR; } + status_t BaseTranslator::DerivedTranslate(BPositionIO *inSource, const translator_info *inInfo, BMessage *ioExtension, uint32 outType, @@ -695,6 +725,7 @@ BaseTranslator::NewConfigView(TranslatorSettings *settings) return NULL; } + void translate_direct_copy(BPositionIO *inSource, BPositionIO *outDestination) { diff --git a/src/add-ons/translators/shared/BaseTranslator.h b/src/add-ons/translators/shared/BaseTranslator.h index 40fa884efb..c8f10b6410 100644 --- a/src/add-ons/translators/shared/BaseTranslator.h +++ b/src/add-ons/translators/shared/BaseTranslator.h @@ -33,13 +33,13 @@ #ifndef BASE_TRANSLATOR_H #define BASE_TRANSLATOR_H +#include +#include +#include +#include #include #include #include -#include -#include -#include -#include #include #include "TranslatorSettings.h" diff --git a/src/add-ons/translators/shared/Jamfile b/src/add-ons/translators/shared/Jamfile index 46c086fd0a..7b6c089c5e 100644 --- a/src/add-ons/translators/shared/Jamfile +++ b/src/add-ons/translators/shared/Jamfile @@ -7,4 +7,11 @@ StaticLibrary libtranslatorsutils.a : StreamBuffer.cpp TranslatorSettings.cpp TranslatorWindow.cpp - ; + : $(HAIKU_LOCALE_LIBS) +; + +DoCatalogs libtranslatorsutils.a : + : + BaseTranslator.cpp + TranslatorWindow.cpp +; diff --git a/src/add-ons/translators/shared/TranslatorWindow.cpp b/src/add-ons/translators/shared/TranslatorWindow.cpp index 6d07da4242..933cebf1d4 100644 --- a/src/add-ons/translators/shared/TranslatorWindow.cpp +++ b/src/add-ons/translators/shared/TranslatorWindow.cpp @@ -34,6 +34,11 @@ #include #include "TranslatorWindow.h" + +#undef B_TRANSLATE_CONTEXT +#define B_TRANSLATE_CONTEXT "TranslatorWindow" + + // --------------------------------------------------------------- // Constructor // @@ -56,6 +61,7 @@ TranslatorWindow::TranslatorWindow(BRect area, const char *title) // Do nothing for a non-layout window } + // --------------------------------------------------------------- // Destructor // @@ -74,13 +80,14 @@ TranslatorWindow::~TranslatorWindow() be_app->PostMessage(B_QUIT_REQUESTED); } + status_t LaunchTranslatorWindow(BTranslator *translator, const char *title, BRect rect) { BView *view = NULL; if (translator->MakeConfigurationView(NULL, &view, &rect)) { - BAlert *err = new BAlert("Error", - "Unable to create the view.", "OK"); + BAlert *err = new BAlert(B_TRANSLATE("Error"), + B_TRANSLATE("Unable to create the view."), B_TRANSLATE("OK")); err->Go(); return B_ERROR; } diff --git a/src/add-ons/translators/shared/TranslatorWindow.h b/src/add-ons/translators/shared/TranslatorWindow.h index 58025095b7..e8db55cfc9 100644 --- a/src/add-ons/translators/shared/TranslatorWindow.h +++ b/src/add-ons/translators/shared/TranslatorWindow.h @@ -33,10 +33,13 @@ #define TRANSLATORWINDOW_H #include -#include -#include +#include +#include #include #include +#include +#include + class TranslatorWindow : public BWindow { public: @@ -47,6 +50,7 @@ public: // Posts a quit message so that the application closes properly }; + status_t LaunchTranslatorWindow(BTranslator *translator, const char *title, BRect rect = BRect(0, 0, 1, 1));