From 4c6accac37172bfde2c2710badd1fe69c91f0975 Mon Sep 17 00:00:00 2001 From: Charlie Fenton Date: Tue, 9 Feb 2010 02:47:38 +0000 Subject: [PATCH] MGR: Fix build breaks and potential crashes from recent task bar changes svn path=/trunk/boinc/; revision=20471 --- checkin_notes | 7 +++++++ clientgui/BOINCBaseFrame.cpp | 2 +- clientgui/BOINCTaskBar.cpp | 6 +++++- clientgui/BOINCTaskBar.h | 2 +- 4 files changed, 14 insertions(+), 3 deletions(-) diff --git a/checkin_notes b/checkin_notes index 17e9900d1f..91e8a9c433 100644 --- a/checkin_notes +++ b/checkin_notes @@ -1007,3 +1007,10 @@ Rom 8 Feb 2010 client/ hostinfo_win.cpp + +Charlie 8 Feb 2010 + - MGR: Fix build breaks and potential crashes from recent task bar changes. + + clientgui/ + BOINCBaseFrame.cpp + BOINCTaskBar.cpp, .h diff --git a/clientgui/BOINCBaseFrame.cpp b/clientgui/BOINCBaseFrame.cpp index 754d726318..ab306bb3e0 100644 --- a/clientgui/BOINCBaseFrame.cpp +++ b/clientgui/BOINCBaseFrame.cpp @@ -364,10 +364,10 @@ void CBOINCBaseFrame::OnExit(wxCommandEvent& WXUNUSED(event)) { #endif // Under wxWidgets 2.8.0, the task bar icons must be deleted for app to exit its main loop - wxGetApp().DeleteTaskBarIcon(); #ifdef __WXMAC__ wxGetApp().DeleteMacSystemMenu(); #endif + wxGetApp().DeleteTaskBarIcon(); CDlgEventLog* eventLog = wxGetApp().GetEventLog(); if (eventLog) { diff --git a/clientgui/BOINCTaskBar.cpp b/clientgui/BOINCTaskBar.cpp index a35b9c51d3..d4121ce3ea 100644 --- a/clientgui/BOINCTaskBar.cpp +++ b/clientgui/BOINCTaskBar.cpp @@ -51,9 +51,11 @@ BEGIN_EVENT_TABLE(CTaskBarIcon, wxTaskBarIconEx) EVT_TASKBAR_REFRESH(CTaskBarIcon::OnRefresh) EVT_TASKBAR_RELOADSKIN(CTaskBarIcon::OnReloadSkin) EVT_TASKBAR_LEFT_DCLICK(CTaskBarIcon::OnLButtonDClick) +#ifndef __WXMAC__ EVT_TASKBAR_RIGHT_DOWN(CTaskBarIcon::OnRButtonDown) EVT_TASKBAR_RIGHT_UP(CTaskBarIcon::OnRButtonUp) EVT_TASKBAR_MOVE(CTaskBarIcon::OnMouseMove) +#endif EVT_MENU(ID_OPENBOINCMANAGER, CTaskBarIcon::OnOpen) EVT_MENU(ID_OPENWEBSITE, CTaskBarIcon::OnOpenWebsite) EVT_MENU(ID_TB_SUSPEND, CTaskBarIcon::OnSuspendResume) @@ -301,6 +303,7 @@ void CTaskBarIcon::OnExit(wxCommandEvent& event) { } +#ifndef __WXMAC__ // Note: tooltip must not have a trailing linebreak. void CTaskBarIcon::OnMouseMove(wxTaskBarIconEvent& WXUNUSED(event)) { @@ -432,6 +435,7 @@ void CTaskBarIcon::OnRButtonUp(wxTaskBarIconEvent& WXUNUSED(event)) { } } } +#endif // #ifndef __WXMAC__ #ifdef __WXMSW__ @@ -497,7 +501,7 @@ wxMenu *CTaskBarIcon::CreatePopupMenu() { // 16x16 icon for the menubar, while the Dock needs a 128x128 icon. // Rather than using an entire separate icon, overlay the Dock icon with a badge // so we don't need additional Snooze and Disconnected icons for branding. -bool CTaskBarIcon::SetIcon(const wxIcon& icon) { +bool CTaskBarIcon::SetIcon(const wxIcon& icon, const wxString& ) { wxIcon macIcon; bool result; OSStatus err = noErr ; diff --git a/clientgui/BOINCTaskBar.h b/clientgui/BOINCTaskBar.h index 336b8be602..16f73b291f 100644 --- a/clientgui/BOINCTaskBar.h +++ b/clientgui/BOINCTaskBar.h @@ -67,7 +67,7 @@ public: #ifdef __APPLE__ wxMenu *CreatePopupMenu(); - bool SetIcon(const wxIcon& icon); + bool SetIcon(const wxIcon& icon, const wxString& message = wxEmptyString); #endif #ifndef __WXMSW__