Patch by mt (ticket #5573) : localize deskbar. Thanks !

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36117 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Adrien Destugues 2010-04-10 17:52:05 +00:00
parent e085a65aee
commit ae7a6e3a6f
8 changed files with 121 additions and 65 deletions

View File

@ -39,10 +39,12 @@ All rights reserved.
#include <AppFileInfo.h>
#include <Autolock.h>
#include <Bitmap.h>
#include <Catalog.h>
#include <Directory.h>
#include <Dragger.h>
#include <File.h>
#include <FindDirectory.h>
#include <Locale.h>
#include <Mime.h>
#include <Path.h>
#include <Roster.h>
@ -93,6 +95,7 @@ TBarApp::TBarApp()
InitSettings();
InitIconPreloader();
be_locale->GetAppCatalog(&fCatalog);
be_roster->StartWatching(this);
sBarTeamInfoList.MakeEmpty();

View File

@ -36,6 +36,7 @@ All rights reserved.
#include <Application.h>
#include <Catalog.h>
#include <List.h>
#include "BarWindow.h"
#include "PreferencesWindow.h"
@ -178,6 +179,8 @@ class TBarApp : public BApplication {
static BLocker sSubscriberLock;
static BList sBarTeamInfoList;
static BList sSubscribers;
BCatalog fCatalog;
};
#endif // BAR_APP_H

View File

@ -34,7 +34,9 @@ All rights reserved.
#include <Debug.h>
#include <Bitmap.h>
#include <Catalog.h>
#include <Dragger.h>
#include <Locale.h>
#include <Menu.h>
#include <MenuItem.h>
#include <Roster.h>
@ -50,6 +52,9 @@ All rights reserved.
#include "StatusView.h"
#include "tracker_private.h"
#undef TR_CONTEXT
#define TR_CONTEXT "BeMenu"
#define ROSTER_SIG "application/x-vnd.Be-ROST"
#ifdef MOUNT_MENU_IN_DESKBAR
@ -67,6 +72,8 @@ class DeskbarMountMenu : public BPrivate::MountMenu {
namespace BPrivate {
BMenu* TrackerBuildRecentFindItemsMenu(const char*);
}
using namespace BPrivate;
@ -134,7 +141,7 @@ void
TBeMenu::DoneBuildingItemList()
{
if (fItemList->CountItems() <= 0) {
BMenuItem* item = new BMenuItem("<Be folder is empty>", 0);
BMenuItem* item = new BMenuItem(TR("<Be folder is empty>"), 0);
item->SetEnabled(false);
AddItem(item);
} else
@ -150,8 +157,8 @@ TBeMenu::AddNextItem()
TrackingHookData* data = fBarView->GetTrackingHookData();
if (fAddState == kAddingRecents) {
const char* recentTitle[] = {"Recent documents", "Recent folders",
"Recent applications"};
static const char* recentTitle[] = {TR_MARK("Recent documents"),
TR_MARK("Recent folders"), TR_MARK("Recent applications")};
const int recentType[] = {kRecentDocuments, kRecentFolders,
kRecentApplications};
const int recentTypes = 3;
@ -160,7 +167,7 @@ TBeMenu::AddNextItem()
bool enabled = false;
for (int i = 0; i < recentTypes; i++) {
recentItem[i] = new TRecentsMenu(recentTitle[i], fBarView,
recentItem[i] = new TRecentsMenu(TR(recentTitle[i]), fBarView,
recentType[i]);
if (recentItem[i])
@ -226,63 +233,75 @@ TBeMenu::AddStandardBeMenuItems()
BMenuItem* item;
BRoster roster;
if (!roster.IsRunning(kTrackerSignature)) {
item = new BMenuItem("Restart Tracker", new BMessage(kRestartTracker));
item = new BMenuItem(TR("Restart Tracker"), new BMessage(kRestartTracker));
AddItem(item);
AddSeparatorItem();
}
static const char* kAboutHaikuMenuItemStr = TR_MARK(
"About Haiku" B_UTF8_ELLIPSIS);
static const char* kAboutThisSystemMenuItemStr = TR_MARK(
"About this system" B_UTF8_ELLIPSIS);
item = new BMenuItem(
#ifdef HAIKU_DISTRO_COMPATIBILITY_OFFICIAL
"About Haiku"
TR(kAboutHaikuMenuItemStr)
#else
"About this system"
TR(kAboutThisSystemMenuItemStr)
#endif
B_UTF8_ELLIPSIS, new BMessage(kShowSplash));
, new BMessage(kShowSplash));
item->SetEnabled(!dragging);
AddItem(item);
static const char* kFindMenuItemStr = TR_MARK("Find" B_UTF8_ELLIPSIS);
#ifdef SHOW_RECENT_FIND_ITEMS
item = new BMenuItem(TrackerBuildRecentFindItemsMenu("Find"B_UTF8_ELLIPSIS),
item = new BMenuItem(
TrackerBuildRecentFindItemsMenu(kFindMenuItemStr),
new BMessage(kFindButton));
#else
item = new BMenuItem("Find"B_UTF8_ELLIPSIS, new BMessage(kFindButton));
item = new BMenuItem(TR(kFindMenuItemStr), new BMessage(kFindButton));
#endif
item->SetEnabled(!dragging);
AddItem(item);
item = new BMenuItem("Show replicants", new BMessage(kToggleDraggers));
item = new BMenuItem(TR("Show replicants"), new BMessage(kToggleDraggers));
item->SetEnabled(!dragging);
item->SetMarked(BDragger::AreDraggersDrawn());
AddItem(item);
static const char* kMountMenuStr = TR_MARK("Mount");
#ifdef MOUNT_MENU_IN_DESKBAR
DeskbarMountMenu* mountMenu = new DeskbarMountMenu("Mount");
DeskbarMountMenu* mountMenu = new DeskbarMountMenu(TR(kMountMenuStr));
mountMenu->SetEnabled(!dragging);
AddItem(mountMenu);
#endif
item = new BMenuItem("Deskbar preferences" B_UTF8_ELLIPSIS,
item = new BMenuItem(TR("Deskbar preferences" B_UTF8_ELLIPSIS),
new BMessage(kConfigShow));
item->SetTarget(be_app);
AddItem(item);
AddSeparatorItem();
BMenu* shutdownMenu = new BMenu("Shutdown" B_UTF8_ELLIPSIS);
BMenu* shutdownMenu = new BMenu(TR("Shutdown" B_UTF8_ELLIPSIS));
item = new BMenuItem("Restart system", new BMessage(kRebootSystem));
item = new BMenuItem(TR("Restart system"), new BMessage(kRebootSystem));
item->SetEnabled(!dragging);
shutdownMenu->AddItem(item);
static const char* kSuspendMenuItemStr = TR_MARK("Suspend");
#ifdef APM_SUPPORT
if (_kapm_control_(APM_CHECK_ENABLED) == B_OK) {
item = new BMenuItem("Suspend", new BMessage(kSuspendSystem));
item = new BMenuItem(kSuspendMenuItemStr), new BMessage(kSuspendSystem));
item->SetEnabled(!dragging);
shutdownMenu->AddItem(item);
}
#endif
item = new BMenuItem("Power off", new BMessage(kShutdownSystem));
item = new BMenuItem(TR("Power off"), new BMessage(kShutdownSystem));
item->SetEnabled(!dragging);
shutdownMenu->AddItem(item);
shutdownMenu->SetFont(be_plain_font);
@ -633,5 +652,6 @@ DeskbarMountMenu::AddDynamicItem(add_state s)
return false;
}
#endif

View File

@ -39,6 +39,15 @@ Application Deskbar :
ResourceSet.cpp
Switcher.cpp
$(targetSource)
: be tracker $(targetLib) $(TARGET_LIBSUPC++)
: be tracker liblocale.so $(targetLib) $(TARGET_LIBSUPC++)
;
DoCatalogs Deskbar :
application/x-vnd.Be-TSKB
:
BeMenu.cpp
PreferencesWindow.cpp
StatusView.cpp
TimeView.cpp
WindowMenu.cpp
;

View File

@ -9,8 +9,10 @@
#include "PreferencesWindow.h"
#include <Catalog.h>
#include <CheckBox.h>
#include <GroupLayout.h>
#include <Locale.h>
#include <LayoutBuilder.h>
#include <OpenWithTracker.h>
#include <RadioButton.h>
@ -22,17 +24,20 @@
#include "StatusView.h"
#undef TR_CONTEXT
#define TR_CONTEXT "PreferencesWindow"
PreferencesWindow::PreferencesWindow(BRect frame)
:
BWindow(frame, "Deskbar preferences", B_TITLED_WINDOW,
BWindow(frame, TR("Deskbar preferences"), B_TITLED_WINDOW,
B_NOT_RESIZABLE | B_AUTO_UPDATE_SIZE_LIMITS | B_NOT_ZOOMABLE)
{
// Controls
fMenuRecentDocuments = new BCheckBox("Recent documents:",
fMenuRecentDocuments = new BCheckBox(TR("Recent documents:"),
new BMessage(kUpdateRecentCounts));
fMenuRecentApplications = new BCheckBox("Recent applications:",
fMenuRecentApplications = new BCheckBox(TR("Recent applications:"),
new BMessage(kUpdateRecentCounts));
fMenuRecentFolders = new BCheckBox("Recent folders:",
fMenuRecentFolders = new BCheckBox(TR("Recent folders:"),
new BMessage(kUpdateRecentCounts));
fMenuRecentDocumentCount = new BTextControl(NULL, NULL,
@ -42,25 +47,25 @@ PreferencesWindow::PreferencesWindow(BRect frame)
fMenuRecentFolderCount = new BTextControl(NULL, NULL,
new BMessage(kUpdateRecentCounts));
fAppsSort = new BCheckBox("Sort running applications",
fAppsSort = new BCheckBox(TR("Sort running applications"),
new BMessage(kSortRunningApps));
fAppsSortTrackerFirst = new BCheckBox("Tracker always first",
fAppsSortTrackerFirst = new BCheckBox(TR("Tracker always first"),
new BMessage(kTrackerFirst));
fAppsShowExpanders = new BCheckBox("Show application expander",
fAppsShowExpanders = new BCheckBox(TR("Show application expander"),
new BMessage(kSuperExpando));
fAppsExpandNew = new BCheckBox("Expand new applications",
fAppsExpandNew = new BCheckBox(TR("Expand new applications"),
new BMessage(kExpandNewTeams));
fClock24Hours = new BCheckBox("24 hour clock", new BMessage(kMilTime));
fClockSeconds = new BCheckBox("Show seconds",
fClock24Hours = new BCheckBox(TR("24 hour clock"), new BMessage(kMilTime));
fClockSeconds = new BCheckBox(TR("Show seconds"),
new BMessage(kShowSeconds));
fClockEuropeanDate = new BCheckBox("European date",
fClockEuropeanDate = new BCheckBox(TR("European date"),
new BMessage(kEuroDate));
fClockFullDate = new BCheckBox("Full date", new BMessage(kFullDate));
fClockFullDate = new BCheckBox(TR("Full date"), new BMessage(kFullDate));
fWindowAlwaysOnTop = new BCheckBox("Always on top",
fWindowAlwaysOnTop = new BCheckBox(TR("Always on top"),
new BMessage(kAlwaysTop));
fWindowAutoRaise = new BCheckBox("Auto-raise", new BMessage(kAutoRaise));
fWindowAutoRaise = new BCheckBox(TR("Auto-raise"), new BMessage(kAutoRaise));
BTextView* docTextView = fMenuRecentDocumentCount->TextView();
BTextView* appTextView = fMenuRecentApplicationCount->TextView();
@ -149,10 +154,10 @@ PreferencesWindow::PreferencesWindow(BRect frame)
fClockBox = new BBox("fClockBox");
fWindowBox = new BBox("fWindowBox");
fMenuBox->SetLabel("Menu");
fAppsBox->SetLabel("Applications");
fClockBox->SetLabel("Clock");
fWindowBox->SetLabel("Window");
fMenuBox->SetLabel(TR("Menu"));
fAppsBox->SetLabel(TR("Applications"));
fClockBox->SetLabel(TR("Clock"));
fWindowBox->SetLabel(TR("Window"));
BView* view;
view = BLayoutBuilder::Group<>()
@ -169,7 +174,7 @@ PreferencesWindow::PreferencesWindow(BRect frame)
.Add(fMenuRecentApplicationCount)
.End()
.End()
.Add(new BButton("Edit menu" B_UTF8_ELLIPSIS,
.Add(new BButton(TR("Edit menu" B_UTF8_ELLIPSIS),
new BMessage(kEditMenuInTracker)))
.SetInsets(10, 10, 10, 10)
.End()

View File

@ -47,9 +47,11 @@ All rights reserved.
#include <Application.h>
#include <Beep.h>
#include <Bitmap.h>
#include <Catalog.h>
#include <ControlLook.h>
#include <Directory.h>
#include <FindDirectory.h>
#include <Locale.h>
#include <MenuItem.h>
#include <NodeInfo.h>
#include <NodeMonitor.h>
@ -118,6 +120,9 @@ DumpList(BList* itemlist)
#endif /* DB_ADDONS */
#undef TR_CONTEXT
#define TR_CONTEXT "Tray"
// don't change the name of this view to anything other than "Status"!
TReplicantTray::TReplicantTray(TBarView* parent, bool vertical)
@ -163,6 +168,7 @@ TReplicantTray::AttachedToWindow()
Window()->SetPulseRate(1000000);
DealWithClock(fBarView->ShowingClock());
#ifdef DB_ADDONS
// load addons and rehydrate archives
#if !defined(HAIKU_TARGET_PLATFORM_LIBBE_TEST)
@ -412,7 +418,7 @@ TReplicantTray::ShowReplicantMenu(BPoint point)
if (fBarView->ShowingClock())
fClock->ShowClockOptions(ConvertToScreen(point));
else {
BMenuItem* item = new BMenuItem("Show Time", new BMessage('time'));
BMenuItem* item = new BMenuItem(TR("Show Time"), new BMessage('time'));
menu->AddItem(item);
menu->SetTargetForItems(this);
BPoint where = ConvertToScreen(point);

View File

@ -37,7 +37,9 @@ All rights reserved.
#include <string.h>
#include <Catalog.h>
#include <Debug.h>
#include <Locale.h>
#include <MenuItem.h>
#include <MessageRunner.h>
#include <PopUpMenu.h>
@ -66,6 +68,9 @@ enum {
};
#undef TR_CONTEXT
#define TR_CONTEXT "TimeView"
TTimeView::TTimeView(float maxWidth, float height, bool showSeconds,
bool milTime, bool fullDate, bool euroDate, bool)
:
@ -558,14 +563,14 @@ TTimeView::ShowClockOptions(BPoint point)
menu->SetFont(be_plain_font);
BMenuItem* item;
item = new BMenuItem("Change time" B_UTF8_ELLIPSIS,
item = new BMenuItem(TR("Change time" B_UTF8_ELLIPSIS),
new BMessage(kChangeClock));
menu->AddItem(item);
item = new BMenuItem("Hide time", new BMessage('time'));
item = new BMenuItem(TR("Hide time"), new BMessage('time'));
menu->AddItem(item);
item = new BMenuItem("Show calendar" B_UTF8_ELLIPSIS,
item = new BMenuItem(TR("Show calendar" B_UTF8_ELLIPSIS),
new BMessage(kShowCalendar));
menu->AddItem(item);

View File

@ -35,6 +35,8 @@ All rights reserved.
#include <malloc.h>
#include <stdio.h>
#include <string.h>
#include <Catalog.h>
#include <Locale.h>
#include <Window.h>
#include "BarApp.h"
@ -58,6 +60,9 @@ const int32 kListFloater = 5;
const int32 kSystemFloater = 6;
#undef TR_CONTEXT
#define TR_CONTEXT "WindowMenu"
bool
TWindowMenu::WindowShouldBeListed(uint32 behavior)
{
@ -173,7 +178,7 @@ TWindowMenu::AttachedToWindow()
int32 itemCount = CountItems() + parentMenuItems;
if (itemCount < 1) {
TWindowMenuItem* noWindowsItem =
new TWindowMenuItem("No windows", -1, false, false);
new TWindowMenuItem(TR("No windows"), -1, false, false);
noWindowsItem->SetEnabled(false);
@ -183,7 +188,7 @@ TWindowMenu::AttachedToWindow()
// it. (but we only add this option if the application is not Tracker.)
if (fApplicationSignature.ICompare(kTrackerSignature) != 0) {
AddSeparatorItem();
AddItem(new TShowHideMenuItem("Quit application", fTeam,
AddItem(new TShowHideMenuItem(TR("Quit application"), fTeam,
B_QUIT_REQUESTED));
}
} else {
@ -191,11 +196,11 @@ TWindowMenu::AttachedToWindow()
// to the menu
if (!dragging) {
TShowHideMenuItem* hide =
new TShowHideMenuItem("Hide all", fTeam, B_MINIMIZE_WINDOW);
new TShowHideMenuItem(TR("Hide all"), fTeam, B_MINIMIZE_WINDOW);
TShowHideMenuItem* show =
new TShowHideMenuItem("Show all", fTeam, B_BRING_TO_FRONT);
new TShowHideMenuItem(TR("Show all"), fTeam, B_BRING_TO_FRONT);
TShowHideMenuItem* close =
new TShowHideMenuItem("Close all", fTeam, B_QUIT_REQUESTED);
new TShowHideMenuItem(TR("Close all"), fTeam, B_QUIT_REQUESTED);
if (miniCount == itemCount)
hide->SetEnabled(false);