From f2a68969a4a34d01f240d60c00e330f365d7f927 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonas=20Sundstr=C3=B6m?= Date: Wed, 10 Mar 2010 22:25:01 +0000 Subject: [PATCH] Adding menu item Restart Tracker, to be shown when Tracker isn't running. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35805 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/apps/deskbar/BarApp.cpp | 7 +++++++ src/apps/deskbar/BarApp.h | 1 + src/apps/deskbar/BeMenu.cpp | 11 ++++++++++- 3 files changed, 18 insertions(+), 1 deletion(-) diff --git a/src/apps/deskbar/BarApp.cpp b/src/apps/deskbar/BarApp.cpp index c1ccc29bf6..8483fe0772 100644 --- a/src/apps/deskbar/BarApp.cpp +++ b/src/apps/deskbar/BarApp.cpp @@ -507,6 +507,13 @@ TBarApp::MessageReceived(BMessage* message) run_be_about(); break; + case kRestartTracker: + { + BRoster roster; + roster.Launch(kTrackerSignature); + break; + } + default: BApplication::MessageReceived(message); break; diff --git a/src/apps/deskbar/BarApp.h b/src/apps/deskbar/BarApp.h index 59650e4cce..0976c1a3df 100644 --- a/src/apps/deskbar/BarApp.h +++ b/src/apps/deskbar/BarApp.h @@ -79,6 +79,7 @@ const uint32 kSortRunningApps = 'SAps'; const uint32 kSuperExpando = 'SprE'; const uint32 kExpandNewTeams = 'ExTm'; const uint32 kAutoRaise = 'AtRs'; +const uint32 kRestartTracker = 'TRAK'; // from roster_private.h const uint32 kShutdownSystem = 301; diff --git a/src/apps/deskbar/BeMenu.cpp b/src/apps/deskbar/BeMenu.cpp index 82f84efcc0..c2fca348ef 100644 --- a/src/apps/deskbar/BeMenu.cpp +++ b/src/apps/deskbar/BeMenu.cpp @@ -48,6 +48,7 @@ All rights reserved. #include "PublicCommands.h" #include "RecentItems.h" #include "StatusView.h" +#include "tracker_private.h" #define ROSTER_SIG "application/x-vnd.Be-ROST" @@ -222,7 +223,15 @@ TBeMenu::AddStandardBeMenuItems() if (fBarView) dragging = fBarView->Dragging(); - BMenuItem* item = new BMenuItem( + BMenuItem* item; + BRoster roster; + if (!roster.IsRunning(kTrackerSignature)) { + item = new BMenuItem("Restart Tracker", new BMessage(kRestartTracker)); + AddItem(item); + AddSeparatorItem(); + } + + item = new BMenuItem( #ifdef HAIKU_DISTRO_COMPATIBILITY_OFFICIAL "About Haiku" #else