]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/latex/wx/taskbar.tex
I think I found out how GTK+ want popup windows
[wxWidgets.git] / docs / latex / wx / taskbar.tex
index c560b0297c0ed7ad29fe14e150a915f879437181..dbe8d2e7895eab4bde2349bcbe59fee5b28f7103 100644 (file)
@@ -1,9 +1,8 @@
 \section{\class{wxTaskBarIcon}}\label{wxtaskbaricon}
 
 This class represents a taskbar icon, appearing in the `system tray' and
-responding to mouse clicks. An icon has an optional tooltip. This class is only
-supported under Windows 95/NT and in X Window System ports (wxGTK, wxMotif,
-wxX11). 
+responding to mouse clicks. An icon has an optional tooltip.  Supported under
+most ports (wxMSW, wxGTK, wxMotif, wxX11, wxMac).
 
 \wxheading{X Window System Note}
 
@@ -33,7 +32,10 @@ be on by default.
 \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.
+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
@@ -55,18 +57,31 @@ wxEVT\_TASKBAR\_RIGHT\_DCLICK event.}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
 
-\membersection{wxTaskBarIcon::wxTaskBarIcon}\label{wxtaskbariconconstr}
+\membersection{wxTaskBarIcon::wxTaskBarIcon}\label{wxtaskbariconctor}
 
 \func{}{wxTaskBarIcon}{\void}
 
 Default constructor.
 
-\membersection{wxTaskBarIcon::\destruct{wxTaskBarIcon}}
+\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 CreatePopupIcon 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::IsIconInstalled}\label{wxtaskbariconisiconinstalled}
 
 \func{bool}{IsIconInstalled}{\void}
@@ -86,6 +101,13 @@ Returns true if the object initialized successfully.
 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{CreatePopupIcon}{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}