tray-item

The class of tray-item objects. A tray-item instance is
used for each item that a standalone Common Graphics application
places into the system "tray", also known as the Taskbar Notification
Area. This is the area at the rightmost end of the system taskbar
that contains small icons with custom mouse behavior for various
applications.

A tray-item
generally needs an icon to display, which may be specified either by
passing an icon handle as the :icon initarg to make-instance, or later by calling
(setf tray-item-icon). An optional tooltip may also be specified either
with the :tooltip initarg or by calling (setf
tray-item-tooltip). A name for identifying the tray-item
programmatically may be specified by passing a symbol as the :name
initarg or by calling (setf name).

When the user moves the mouse over the tray icon or clicks on it, the
generic function tray-item-message is called. An
application may supply tray-item-message methods to handle
the mouse events in a custom way.

Microsoft Windows note: to make it easy for the user to select
a choice or to cancel a pop-up menu, you may want to ensure that a
window from the same process has the keyboard focus, or at least that
such a window is present on the screen. In Microsoft Windows,
keypresses will apply to a pop-up menu only if the window that
currently has the keyboard focus was created in the process that
popped up the menu. Otherwise the Escape key will not dismiss the
menu, and a choice cannot be made with the keyboard. Clicking the
mouse outside a pop-up menu will dismiss the menu only if there is at
least one currently visible (not shrunk) top-level window that was
created in the process that popped up the menu.