X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/dae73d7473aac7cabc3918c96a6d0103f17fdfc7..f0fbbe236452ae27a7577deafbbc44ace2c209e7:/src/common/taskbarcmn.cpp diff --git a/src/common/taskbarcmn.cpp b/src/common/taskbarcmn.cpp index 14b4f1dd5b..5373d527c7 100644 --- a/src/common/taskbarcmn.cpp +++ b/src/common/taskbarcmn.cpp @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////// -// File: taskbarcmn.cpp +// File: src/common/taskbarcmn.cpp // Purpose: Common parts of wxTaskBarIcon class // Author: Julian Smart // Modified by: @@ -9,22 +9,26 @@ // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////// -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) -#pragma implementation "taskbar.h" -#endif - // For compilers that support precompilation, includes "wx.h". #include "wx/wxprec.h" -#include "wx/defs.h" +#ifdef __BORLANDC__ + #pragma hdrstop +#endif + +#if wxUSE_TASKBARICON + +#ifndef WX_PRECOMP + #include "wx/app.h" + #include "wx/list.h" + #include "wx/menu.h" +#endif -#ifdef wxHAS_TASK_BAR_ICON +extern WXDLLIMPEXP_DATA_CORE(wxList) wxPendingDelete; // DLL options compatibility check: -#include "wx/app.h" WX_CHECK_BUILD_OPTIONS("wxAdvanced") - #include "wx/taskbar.h" DEFINE_EVENT_TYPE( wxEVT_TASKBAR_MOVE ) @@ -34,13 +38,15 @@ DEFINE_EVENT_TYPE( wxEVT_TASKBAR_RIGHT_DOWN ) DEFINE_EVENT_TYPE( wxEVT_TASKBAR_RIGHT_UP ) DEFINE_EVENT_TYPE( wxEVT_TASKBAR_LEFT_DCLICK ) DEFINE_EVENT_TYPE( wxEVT_TASKBAR_RIGHT_DCLICK ) +DEFINE_EVENT_TYPE( wxEVT_TASKBAR_BALLOON_TIMEOUT ) +DEFINE_EVENT_TYPE( wxEVT_TASKBAR_BALLOON_CLICK ) BEGIN_EVENT_TABLE(wxTaskBarIconBase, wxEvtHandler) - EVT_TASKBAR_RIGHT_DOWN(wxTaskBarIconBase::OnRightButtonDown) + EVT_TASKBAR_CLICK(wxTaskBarIconBase::OnRightButtonDown) END_EVENT_TABLE() -void wxTaskBarIconBase::OnRightButtonDown(wxEvent& WXUNUSED(event)) +void wxTaskBarIconBase::OnRightButtonDown(wxTaskBarIconEvent& WXUNUSED(event)) { wxMenu *menu = CreatePopupMenu(); if (menu) @@ -49,5 +55,10 @@ void wxTaskBarIconBase::OnRightButtonDown(wxEvent& WXUNUSED(event)) delete menu; } } - -#endif // defined(wxHAS_TASK_BAR_ICON) + +void wxTaskBarIconBase::Destroy() +{ + wxPendingDelete.Append(this); +} + +#endif // wxUSE_TASKBARICON