+//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+//
+// wxTaskBarIcon
+//
+//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+IMPLEMENT_DYNAMIC_CLASS(wxTaskBarIcon, wxEvtHandler)
+
+//-----------------------------------------------------------------------------
+// wxTaskBarIcon Constructor
+//
+// Creates the backend
+//
+// Note that we only support DOCK currently as others require cocoa and
+// also some require hacks and other such things. (MenuExtras are
+// actually seperate programs that also require a special undocumented id
+// hack and other such fun stuff).
+//-----------------------------------------------------------------------------
+wxTaskBarIcon::wxTaskBarIcon(wxTaskBarIconType nType)
+{
+ wxASSERT_MSG(
+ nType == DOCK,
+ wxT("Only the DOCK implementation of wxTaskBarIcon on Mac-Carbon is currently supported!") );
+
+ m_impl = new wxDockTaskBarIcon(this);
+}
+
+//-----------------------------------------------------------------------------
+// wxTaskBarIcon Destructor
+//
+// Destroys the backend
+//-----------------------------------------------------------------------------
+wxTaskBarIcon::~wxTaskBarIcon()
+{
+ delete m_impl;
+}
+
+//-----------------------------------------------------------------------------
+// wxTaskBarIcon::SetIcon
+// wxTaskBarIcon::RemoveIcon
+// wxTaskBarIcon::PopupMenu
+//
+// Just calls the backend version of the said function.
+//-----------------------------------------------------------------------------
+bool wxTaskBarIcon::IsIconInstalled() const
+{ return m_impl->IsIconInstalled(); }
+
+bool wxTaskBarIcon::SetIcon(const wxIcon& icon, const wxString& tooltip)
+{ return m_impl->SetIcon(icon, tooltip); }
+
+bool wxTaskBarIcon::RemoveIcon()
+{ return m_impl->RemoveIcon(); }
+
+bool wxTaskBarIcon::PopupMenu(wxMenu *menu)
+{ return m_impl->PopupMenu(menu); }
+
+#endif // wxHAS_TASK_BAR_ICON