The Windows frontend should now be completely internationalized.  If you 
are a speaker of another language, we would love for you to make a 
locale file with the translations of all the strings in the program.

You will need the latest beta available here:

http://www.crosswire.org/sword/ALPHAcckswwlkrfre22034820285912/alpha/sword-1.5.4betaK.zip

inside you will find a directory: uilocales.d
in this directory is a sample (and still incomplete) german local, de.conf

You can use this as a starting point to copy and change the translation 
strings for your language.

Since the sample de.conf is still incomplete, below, you will find the 
actual code in the program that does the string substitutions.  You 
don't need to understand what it does, only look for the _tr() macro and 
translate all the strings you find contained therein.  Duplicates may 
exist, e.g. _tr("OK").  These only need to be included in the locale 
file once.

There are 2 bitmaps that we use for back and search buttons.  You may 
override these bitmaps with the locale entries, e.g.

BackBtnImage=back_de.bmp
SearchBtnImage=search_de.bmp

I've included our english versions that you might be able to use for 
reference (or to just paint over).
If you're not good at graphics, don't feel the bitmaps are manditory. 
We'd still like to have your translations.

Looking forward to all of your contributions!  Hoping many more people 
in many other countries will be brought the saving knowledge in the 
Gospel of our Lord!

        Thanks for your partnership in this ministry,
                -Troy.



_______________________
Locale code:

     tmp = _tr("BackBtnImage");
     if (strcmp("BackBtnImage", tmp)) {
         pic->LoadFromFile(tmp);
         bitmap = pic->Bitmap;
     }
     else bitmap = BackBtnImage->Picture->Bitmap;

     TColor transColor = bitmap->Canvas->Pixels[0][0];
     ImageList1->AddMasked(bitmap, transColor);

     tmp = _tr("SearchBtnImage");
     if (strcmp("SearchBtnImage", tmp)) {
         pic->LoadFromFile(tmp);
         bitmap = pic->Bitmap;
     }
     else bitmap = SearchBtnImage->Picture->Bitmap;

     transColor = bitmap->Canvas->Pixels[0][0];
     ImageList1->AddMasked(bitmap, transColor);

     bitmap = BookmarkBtnImage->Picture->Bitmap;
     transColor = bitmap->Canvas->Pixels[0][0];
     ImageList2->AddMasked(bitmap, transColor);

     delete pic;

     // MainForm
     File1->Caption = _tr("&File");
     SaveLayout1->Caption = _tr("S&ave Layout");
     Exit1->Caption = _tr("E&xit");
     Edit1->Caption = _tr("&Edit");
     Copy1->Caption = _tr("&Copy");
     Copy2->Caption = _tr("&Copy");
     Copy3->Caption = _tr("&Copy");
     Copy4->Caption = _tr("&Copy");
     CopyasBGreekTransliteration1->Caption = _tr("Copy as &B-Greek 
Transliteration");
     MenuItem1->Caption = _tr("Dictionary Lookup");
     Copy4->Caption = _tr("&Copy");
     Copy4->Caption = _tr("&Copy");
     Copy4->Caption = _tr("&Copy");
     Options2->Caption = _tr("Options");
     Options1->Caption = _tr("&Preferences...");
     Search1->Caption = _tr("&Search");
     NewSearchWindow1->Caption = _tr("&New Search Window");
     Tools1->Caption = _tr("&Tools");
     InstallManager1->Caption = _tr("Install Manager");
     Help1->Caption = _tr("&Help");
     Contents1->Caption = _tr("Contents");
     DevotionaloftheDay1->Caption = _tr("Devotional of the Day");
     About1->Caption = _tr("&About");
     Bookmarkbtn->Caption = _tr("Bookmark");
     DictionaryLookup1->Caption = _tr("Dictionary Lookup");
     DictionaryLookup2->Caption = _tr("Dictionary Lookup");
     EditEntry1->Caption = _tr("&Edit Entry");
     DeleteEntry1->Caption = _tr("&Delete Entry");
     LinktoVerse1->Caption = _tr("Link to Comment for Verse...");
     AddBookmark1->Caption = _tr("&Add Bookmark");
     EditBookmarks1->Caption = _tr("&Edit Bookmarks / Tree View...");
     HideShowModules1->Caption = _tr("Hide / Show Modules");

     // AboutBox
     AboutBox->Caption = _tr("About The SWORD Project");
     AboutBox->OKButton->Caption = _tr("OK");

     // bookmarkForm
     bookmarkForm->Caption = _tr("Bookmarks");

     // DevOfTheDay2
     DevOfTheDay2->Caption = _tr("Devotion for Today");
     DevOfTheDay2->ckShowTip->Caption = _tr("Show Devotional at Startup");
     DevOfTheDay2->btnOK->Caption = _tr("&Close");

     // EditEntryForm
     EditEntryForm->Caption = _tr("Edit Entry");
     EditEntryForm->Label1->Caption = _tr("Font Size:");



     // ModInstForm
     ModInstFrm->Caption = _tr("Found New Module...");
     ModInstFrm->OkBtn->Caption = _tr("OK");

     // ModVisForm
     ModVisForm->Caption = _tr("Check Modules To Show As Tabs");
     ModVisForm->modList->Columns->Items[0]->Caption = _tr("Module");
     ModVisForm->modList->Columns->Items[1]->Caption = _tr("Description");
     ModVisForm->OkBtn->Caption = _tr("OK");
     ModVisForm->CancelBtn->Caption = _tr("Cancel");

     // NewBMfrm
     NewBMfrm->Caption = _tr("Add New Bookmark File");
     NewBMfrm->Label1->Caption = _tr("File Name (without extension):");
     NewBMfrm->Label2->Caption = _tr("Bookmark Section Title:");
     NewBMfrm->OkBtn->Caption = _tr("OK");
     NewBMfrm->CancelBtn->Caption = _tr("Cancel");

     // OptionsForm
     Optionsfrm->Caption = _tr("Preferences");
     Optionsfrm->TabSheet1->Caption = _tr("General");
     Optionsfrm->TabSheet2->Caption = _tr("Special Modules");
     Optionsfrm->TabSheet3->Caption = _tr("Display");
     Optionsfrm->gbPersonalize->Caption = _tr("Personalize");
     Optionsfrm->AutoBMPersonal->Caption = _tr("Save Personal Bookmarks");
     Optionsfrm->AutoBMOther->Caption = _tr("Save Other Bookmarks");
     Optionsfrm->HintPopups->Caption = _tr("Show Hint Pop-ups");
     Optionsfrm->Label4->Caption = _tr("Language");
     Optionsfrm->AutoLayout->Caption = _tr("Save Screen Layout");
     Optionsfrm->HintStrongs->Caption = _tr("Show Hint Over Strongs 
Numbers");
     Optionsfrm->OkBtn->Caption = _tr("OK");
     Optionsfrm->CancelBtn->Caption = _tr("Cancel");
     Optionsfrm->gbDefModules->Caption = _tr("Original Language Support 
- Default Modules");
     Optionsfrm->Label7->Caption = _tr("Definitions");
     Optionsfrm->Label8->Caption = _tr("Parsing");
     Optionsfrm->Label5->Caption = _tr("Greek");
     Optionsfrm->Label6->Caption = _tr("Hebrew");
     Optionsfrm->Label10->Caption = _tr("Strong's Numbered Text");
     Optionsfrm->gbDevos->Caption = _tr("Daily Devotionals");
     Optionsfrm->Label9->Caption = _tr("Default Devotional");
     Optionsfrm->devSplashCB->Caption = _tr("Show Devotional Splash 
Screen on Startup");
     Optionsfrm->devsAsDictsCB->Caption = _tr("Show Devotionals as 
Dictionaries");
     Optionsfrm->gbGloss->Caption = _tr("Glossaries");
     Optionsfrm->glosAsDictsCB->Caption = _tr("Show Glossaries as 
Dictionaries");
     Optionsfrm->gbColors->Caption = _tr("Display Colors");
     Optionsfrm->Label2->Caption = _tr("Preview");
     Optionsfrm->Label3->Caption = _tr("Module Type");
     Optionsfrm->Label14->Caption = _tr("Scheme");
     Optionsfrm->Label11->Caption = _tr("Text Font");
     Optionsfrm->btnFont->Caption = _tr("Select Font...");
     Optionsfrm->Label13->Caption = _tr("Verse Number Color");
     Optionsfrm->btnNumClr->Caption = _tr("Select Color...");
     Optionsfrm->AutoVSColor->Caption = _tr("Current Verse Color");
     Optionsfrm->btnCurrVerse->Caption = _tr("Select Color...");
     Optionsfrm->Label15->Caption = _tr("Combo/Edit Fields");
     Optionsfrm->btnFieldClr->Caption = _tr("Select Color...");
     Optionsfrm->Label1->Caption = _tr("Individual Modules (Font Only)");
     Optionsfrm->btnModFonts->Caption = _tr("Select Font...");

     // RangeMaintForm
     RangeMaintForm->Caption = _tr("Maintain Custom Ranges");
     RangeMaintForm->Label1->Caption = _tr("Range Name");
     RangeMaintForm->Label2->Caption = _tr("Range Text");
     RangeMaintForm->Label3->Caption = _tr("eg. mat-jo;rev4");
     RangeMaintForm->SpeedButton1->Caption = _tr("&Add");
     RangeMaintForm->SpeedButton2->Caption = _tr("&Remove");
     RangeMaintForm->SpeedButton3->Caption = _tr("&Save");
     RangeMaintForm->SpeedButton4->Caption = _tr("&Cancel");

     // searchForm
     searchForm->Caption = _tr("Search...");
     searchForm->searchBtn->Caption = _tr("Search");
     searchForm->searchTypeGroup->Caption = _tr("Search Type");
     searchForm->searchTypeGroup->Items->CommaText = _tr("\"Mult 
Word\",\"Phrase\",\"Regular Expression\"");
     searchForm->caseSensitiveCkBx->Caption = _tr("Case Sensitive");
     searchForm->searchOptionsGroup->Caption = _tr("Search Options");
     searchForm->scopeGroup->Caption = _tr("Scope");
     searchForm->scopeGroup->Items->CommaText = _tr("\"Entire 
Module\",\"Current Results\",\"Custom Range\"");
     searchForm->customRangeBtn->Caption = _tr("Define Custom Range");
     searchForm->resultsLV->Columns->Items[0]->Caption = _tr("Reference");
     searchForm->resultsLV->Columns->Items[1]->Caption = _tr("Preview...");

     // VerseSelFrm
     VerseSelFrm->Caption = _tr("Type Verse");
     VerseSelFrm->OkBtn->Caption = _tr("OkBtn");
     VerseSelFrm->CancelBtn->Caption = _tr("Cancel");

     // VerseListFrm
     VerseListFrm->Caption = _tr("Verse List");

Windows bitmap

Windows bitmap

Reply via email to