wxWidgets/docs/latex/wx/taskbar.tex
Vadim Zeitlin 39f0cb547f added wxTaskBarIcon::Destroy()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48076 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-08-14 22:43:39 +00:00

148 lines
5.1 KiB
TeX

\section{\class{wxTaskBarIcon}}\label{wxtaskbaricon}
This class represents a taskbar icon. A taskbar icon is an icon that appears in the `system tray' and responds to mouse clicks, optionally with a tooltip above it to help provide information.
\wxheading{X Window System Note}
Under X Window System, the window manager must support either
the \urlref{System Tray Protocol by freedesktop.org}{http://freedesktop.org/Standards/systemtray-spec}
(WMs used by modern desktop environments such as GNOME >= 2, KDE
>= 3 and XFCE >= 4 all do) or the older methods used in GNOME 1.2 and
KDE 1 and 2. If it doesn't, the icon will appear as a toplevel window on
user's desktop.
Because not all window managers have system tray, there's no guarantee that
wxTaskBarIcon will work correctly under X Window System and so the applications
should use it only as an optional component of their user interface. The user
should be required to explicitly enable the taskbar icon on Unix, it shouldn't
be on by default.
\wxheading{Derived from}
\helpref{wxEvtHandler}{wxevthandler}\\
\helpref{wxObject}{wxobject}
\wxheading{Include files}
<wx/taskbar.h>
\wxheading{Library}
\helpref{wxAdv}{librarieslist}
\wxheading{Event handling}
To process input from a taskbar icon, use the following event handler macros to direct input to member
functions that take a wxTaskBarIconEvent argument. Note that not all ports are
required to send these events and so it's better to override
\helpref{CreatePopupMenu}{wxtaskbariconcreatepopupmenu} if all that
the application does is that it shows a popup menu in reaction to mouse click.
\twocolwidtha{7cm}
\begin{twocollist}\itemsep=0pt
\twocolitem{{\bf EVT\_TASKBAR\_MOVE(func)}}{Process a
wxEVT\_TASKBAR\_MOVE event.}
\twocolitem{{\bf EVT\_TASKBAR\_LEFT\_DOWN(func)}}{Process a
wxEVT\_TASKBAR\_LEFT\_DOWN event.}
\twocolitem{{\bf EVT\_TASKBAR\_LEFT\_UP(func)}}{Process a
wxEVT\_TASKBAR\_LEFT\_UP event.}
\twocolitem{{\bf EVT\_TASKBAR\_RIGHT\_DOWN(func)}}{Process a
wxEVT\_TASKBAR\_RIGHT\_DOWN event.}
\twocolitem{{\bf EVT\_TASKBAR\_RIGHT\_UP(func)}}{Process a
wxEVT\_TASKBAR\_RIGHT\_UP event.}
\twocolitem{{\bf EVT\_TASKBAR\_LEFT\_DCLICK(func)}}{Process a
wxEVT\_TASKBAR\_LEFT\_DCLICK event.}
\twocolitem{{\bf EVT\_TASKBAR\_RIGHT\_DCLICK(func)}}{Process a
wxEVT\_TASKBAR\_RIGHT\_DCLICK event.}
\twocolitem{{\bf EVT\_TASKBAR\_CLICK(func)}}{This is a synonym for either
EVT\_TASKBAR\_RIGHT\_DOWN or UP depending on the platform, use this event macro
to catch the event which should result in the menu being displayed on the
current platform.}
\end{twocollist}%
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxTaskBarIcon::wxTaskBarIcon}\label{wxtaskbariconctor}
\func{}{wxTaskBarIcon}{\void}
Default constructor.
\membersection{wxTaskBarIcon::\destruct{wxTaskBarIcon}}\label{wxtaskbaricondtor}
\func{}{\destruct{wxTaskBarIcon}}{\void}
Destroys the wxTaskBarIcon object, removing the icon if not already removed.
\membersection{wxTaskBarIcon::CreatePopupMenu}\label{wxtaskbariconcreatepopupmenu}
\func{virtual wxMenu*}{CreatePopupMenu}{\void}
This method is called by the library when the user requests popup menu
(on Windows and Unix platforms, this is when the user right-clicks the icon).
Override this function in order to provide popup menu associated with the icon.
If CreatePopupMenu returns NULL (this happens by default),
no menu is shown, otherwise the menu is
displayed and then deleted by the library as soon as the user dismisses it.
The events can be handled by a class derived from wxTaskBarIcon.
\membersection{wxTaskBarIcon::Destroy}\label{wxtaskbaricondestroy}
\func{void}{Destroy}{\void}
This method is similar to \helpref{wxWindow::Destroy}{wxwindowdestroy} and can
be used to schedule the task bar icon object for the delayed destruction: it
will be deleted during the next event loop iteration, which allows the task bar
icon to process any pending events for it before being destroyed.
\membersection{wxTaskBarIcon::IsIconInstalled}\label{wxtaskbariconisiconinstalled}
\func{bool}{IsIconInstalled}{\void}
Returns true if \helpref{SetIcon}{wxtaskbariconseticon} was called with no subsequent \helpref{RemoveIcon}{wxtaskbariconremoveicon}.
\membersection{wxTaskBarIcon::IsOk}\label{wxtaskbariconisok}
\func{bool}{IsOk}{\void}
Returns true if the object initialized successfully.
\membersection{wxTaskBarIcon::PopupMenu}\label{wxtaskbariconpopupmenu}
\func{bool}{PopupMenu}{\param{wxMenu*}{ menu}}
Pops up a menu at the current mouse position. The events can be handled by
a class derived from wxTaskBarIcon.
\wxheading{Note}
It is recommended to override
\helpref{CreatePopupMenu}{wxtaskbariconcreatepopupmenu}
callback instead of calling this method from event handler, because some
ports (e.g. wxCocoa) may not implement PopupMenu and mouse click events at all.
\membersection{wxTaskBarIcon::RemoveIcon}\label{wxtaskbariconremoveicon}
\func{bool}{RemoveIcon}{\void}
Removes the icon previously set with \helpref{SetIcon}{wxtaskbariconseticon}.
\membersection{wxTaskBarIcon::SetIcon}\label{wxtaskbariconseticon}
\func{bool}{SetIcon}{\param{const wxIcon\&}{ icon}, \param{const wxString\& }{tooltip}}
Sets the icon, and optional tooltip text.