| ||||||||||
| ||||||||||
| ||||||||||
Description | ||||||||||
Display an icon in the system tray
| ||||||||||
Synopsis | ||||||||||
Detail | ||||||||||
The "system tray" or notification area is normally used for transient icons that indicate some special state. For example, a system tray icon might appear to tell the user that they have new mail, or have an incoming instant message, or something along those lines. The basic idea is that creating an icon in the notification area is less annoying than popping up a dialog. A StatusIcon object can be used to display an icon in a "system tray". The icon can have a tooltip, and the user can interact with it by activating it or popping up a context menu. Critical information should not solely be displayed in a StatusIcon, since it may not be visible (e.g. when the user doesn't have a notification area on his panel). This can be checked with statusIconIsEmbedded. On X11, the implementation follows the freedesktop.org "System Tray" specification. Implementations of the "tray" side of this specification can be found e.g. in the GNOME and KDE panel applications. Note that a StatusIcon is not a widget, but just a GObject. Making it a widget would be impractical, since the system tray on Win32 doesn't allow to embed arbitrary widgets. | ||||||||||
Class Hierarchy | ||||||||||
| GObject | +----StatusIcon | ||||||||||
Types | ||||||||||
data StatusIcon | ||||||||||
class TreeSortableClass o => StatusIconClass o | ||||||||||
castToStatusIcon :: GObjectClass obj => obj -> StatusIcon | ||||||||||
toStatusIcon :: StatusIconClass o => o -> StatusIcon | ||||||||||
Constructors | ||||||||||
statusIconNew :: IO StatusIcon | ||||||||||
Creates an empty status icon object. | ||||||||||
statusIconNewFromPixbuf | ||||||||||
| ||||||||||
statusIconNewFromFile | ||||||||||
| ||||||||||
statusIconNewFromStock | ||||||||||
| ||||||||||
statusIconNewFromIconName | ||||||||||
| ||||||||||
Methods | ||||||||||
statusIconSetFromPixbuf | ||||||||||
| ||||||||||
statusIconSetFromFile | ||||||||||
| ||||||||||
statusIconSetFromStock | ||||||||||
| ||||||||||
statusIconSetFromIconName | ||||||||||
| ||||||||||
statusIconGetStorageType | ||||||||||
| ||||||||||
statusIconGetPixbuf | ||||||||||
| ||||||||||
statusIconGetStock | ||||||||||
| ||||||||||
statusIconGetIconName | ||||||||||
| ||||||||||
statusIconGetSize | ||||||||||
| ||||||||||
statusIconSetTooltip | ||||||||||
| ||||||||||
statusIconSetVisible | ||||||||||
| ||||||||||
statusIconGetVisible | ||||||||||
| ||||||||||
statusIconSetBlinking | ||||||||||
| ||||||||||
statusIconGetBlinking | ||||||||||
| ||||||||||
statusIconIsEmbedded | ||||||||||
| ||||||||||
statusIconPositionMenu | ||||||||||
| ||||||||||
statusIconGetGeometry :: StatusIconClass self => self -> IO (Maybe (Rectangle, Orientation)) | ||||||||||
Obtains information about the location of the status icon on screen. This information can be used to e.g. position popups like notification bubbles. Note that some platforms do not allow Gtk+ to provide this information, and even on platforms that do allow it, the information is not reliable unless the status icon is embedded in a notification area, see statusIconIsEmbedded. | ||||||||||
Attributes | ||||||||||
statusIconPixbuf :: StatusIconClass self => Attr self Pixbuf | ||||||||||
A Pixbuf to display. | ||||||||||
statusIconFile :: StatusIconClass self => WriteAttr self (Maybe String) | ||||||||||
Filename to load and display. Default value: Nothing | ||||||||||
statusIconStock :: StatusIconClass self => Attr self (Maybe String) | ||||||||||
Stock ID for a stock image to display. Default value: Nothing | ||||||||||
statusIconIconName :: StatusIconClass self => Attr self (Maybe String) | ||||||||||
The name of the icon from the icon theme. Default value: Nothing | ||||||||||
statusIconStorageType :: StatusIconClass self => ReadAttr self ImageType | ||||||||||
The representation being used for image data. Default value: Graphics.UI.Gtk.Display.Image.ImageEmpty | ||||||||||
statusIconSize :: StatusIconClass self => ReadAttr self Int | ||||||||||
The size of the icon. Allowed values: >= 0 Default value: 0 | ||||||||||
statusIconBlinking :: StatusIconClass self => Attr self Bool | ||||||||||
Whether or not the status icon is blinking. Default value: False | ||||||||||
statusIconVisible :: StatusIconClass self => Attr self Bool | ||||||||||
Whether or not the status icon is visible. Default value: True | ||||||||||
Signals | ||||||||||
statusIconSizeChanged :: StatusIconClass self => Signal self (Int -> IO Bool) | ||||||||||
Gets emitted when the size available for the image changes, e.g. because the notification area got resized. | ||||||||||
statusIconActivate :: StatusIconClass self => Signal self (IO ()) | ||||||||||
Gets emitted when the user activates the status icon. If and how status icons can activated is platform-dependent. | ||||||||||
statusIconPopupMenu :: StatusIconClass self => Signal self (Maybe MouseButton -> TimeStamp -> IO ()) | ||||||||||
Gets emitted when the user brings up the context menu of the status icon. Whether status icons can have context menus and how these are activated is platform-dependent. The MouseButton and TimeStamp parameters should be passed as the last to arguments to Graphics.UI.Gtk.menuPopup. | ||||||||||
Deprecated | ||||||||||
onActivate :: StatusIconClass self => self -> IO () -> IO (ConnectId self) | ||||||||||
afterActivate :: StatusIconClass self => self -> IO () -> IO (ConnectId self) | ||||||||||
onPopupMenu :: StatusIconClass self => self -> (Maybe MouseButton -> TimeStamp -> IO ()) -> IO (ConnectId self) | ||||||||||
afterPopupMenu :: StatusIconClass self => self -> (Maybe MouseButton -> TimeStamp -> IO ()) -> IO (ConnectId self) | ||||||||||
onSizeChanged :: StatusIconClass self => self -> (Int -> IO Bool) -> IO (ConnectId self) | ||||||||||
afterSizeChanged :: StatusIconClass self => self -> (Int -> IO Bool) -> IO (ConnectId self) | ||||||||||
Produced by Haddock version 2.6.0 |