|
Graphics.UI.Gtk.MenuComboToolbar.Menu | Portability | portable (depends on GHC) | Stability | provisional | Maintainer | gtk2hs-users@lists.sourceforge.net |
|
|
|
|
|
Description |
A menu widget
|
|
Synopsis |
|
|
|
|
Detail
|
|
A Menu is a MenuShell that implements a drop down menu consisting of
a list of MenuItem objects which can be navigated and activated by the
user to perform application functions.
A Menu is most commonly dropped down by activating a MenuItem in a
MenuBar or popped up by activating a MenuItem in another Menu.
A Menu can also be popped up by activating a OptionMenu. Other
composite widgets such as the Notebook can pop up a Menu as well.
Applications can display a Menu as a popup menu by calling the
menuPopup function.
|
|
Class Hierarchy
|
|
| GObject
| +----Object
| +----Widget
| +----Container
| +----MenuShell
| +----Menu
|
|
Types
|
|
data Menu |
Instances | |
|
|
class MenuShellClass o => MenuClass o |
| Instances | |
|
|
castToMenu :: GObjectClass obj => obj -> Menu |
|
toMenu :: MenuClass o => o -> Menu |
|
Constructors
|
|
menuNew :: IO Menu |
Creates a new Menu.
|
|
Methods
|
|
menuReorderChild |
|
|
menuPopup |
:: MenuClass self | | => self | The menu to be shown.
| -> Maybe (MouseButton, TimeStamp) | The mouse button from the Button event and
the time of the event. These values are used to match the corresponding
relase of the button. If this context menu is shown by programmatic
means, supply Nothing.
| -> IO () | | Popup a context menu where a button press occurred.
- This function must be called in response to a button click. It opens
the given menu at a place determined by the last emitted event (hence
the requirement that this function is called as response to a button
press signal).
|
|
|
menuSetAccelGroup |
:: MenuClass self | | => self | | -> AccelGroup | accelGroup - the AccelGroup to be associated with the
menu.
| -> IO () | | Set the AccelGroup which holds global accelerators for the menu. This
accelerator group needs to also be added to all windows that this menu is
being used in with windowAddAccelGroup, in order for those windows to
support all the accelerators contained in this group.
|
|
|
menuGetAccelGroup |
|
|
menuSetAccelPath |
:: MenuClass self | | => self | | -> String | accelPath - a valid accelerator path
| -> IO () | | Sets an accelerator path for this menu from which accelerator paths for
its immediate children, its menu items, can be constructed. The main purpose
of this function is to spare the programmer the inconvenience of having to
call menuItemSetAccelPath on each menu item that should support runtime
user changable accelerators. Instead, by just calling menuSetAccelPath on
their parent, each menu item of this menu, that contains a label describing
its purpose, automatically gets an accel path assigned.
For example, a menu containing menu items "New" and "Exit", will, after
calling
menu `menuSetAccelPath` "<Gnumeric-Sheet>/File"
assign its items the accel paths: "<Gnumeric-Sheet>/File/New" and
"<Gnumeric-Sheet>/File/Exit".
Assigning accel paths to menu items then enables the user to change their
accelerators at runtime. More details about accelerator paths and their
default setups can be found at accelMapAddEntry.
|
|
|
menuSetTitle :: MenuClass self => self -> String -> IO () |
Sets the title string for the menu. The title is displayed when the menu
is shown as a tearoff menu.
|
|
menuGetTitle |
:: MenuClass self | | => self | | -> IO (Maybe String) | returns the title of the menu, or Nothing if the
menu has no title set on it.
| Returns the title of the menu. See menuSetTitle.
|
|
|
menuPopdown :: MenuClass self => self -> IO () |
Removes the menu from the screen.
|
|
menuReposition :: MenuClass self => self -> IO () |
Repositions the menu according to its position function.
|
|
menuGetActive |
:: MenuClass self | | => self | | -> IO MenuItem | returns the MenuItem that was last selected in the menu.
If a selection has not yet been made, the first menu item is
selected.
| Returns the selected menu item from the menu. This is used by the
OptionMenu.
|
|
|
menuSetActive |
:: MenuClass self | | => self | | -> Int | index - the index of the menu item to select. Index values
are from 0 to n-1.
| -> IO () | | Selects the specified menu item within the menu. This is used by the
OptionMenu and should not be used by anyone else.
|
|
|
menuSetTearoffState |
:: MenuClass self | | => self | | -> Bool | tornOff - If True, menu is displayed as a tearoff menu.
| -> IO () | | Changes the tearoff state of the menu. A menu is normally displayed as
drop down menu which persists as long as the menu is active. It can also be
displayed as a tearoff menu which persists until it is closed or reattached.
|
|
|
menuGetTearoffState |
|
|
menuAttachToWidget :: (MenuClass self, WidgetClass attachWidget) => self -> attachWidget -> IO () |
Attach this menu to another widget.
|
|
menuDetach :: MenuClass self => self -> IO () |
Detach this menu from the widget it is attached to.
|
|
menuGetAttachWidget :: MenuClass self => self -> IO (Maybe Widget) |
Get the widget this menu is attached to. Returns Nothing if this is a
tearoff (context) menu.
|
|
menuSetScreen |
:: MenuClass self | | => self | | -> Maybe Screen | screen - a Screen, or Nothing if the screen should
be determined by the widget the menu is attached to.
| -> IO () | | Sets the Screen on which the menu will be displayed.
- Available since Gtk+ version 2.2
|
|
|
menuSetMonitor |
:: MenuClass self | | => self | | -> Int | monitorNum - the number of the monitor on which the menu
should be popped up
| -> IO () | | Informs Gtk+ on which monitor a menu should be popped up. See
screenGetMonitorGeometry.
- Available since Gtk+ version 2.4
|
|
|
menuAttach |
:: (MenuClass self, MenuItemClass child) | | => self | | -> child | child - a MenuItem.
| -> Int | leftAttach - The column number to attach the left side of the
item to.
| -> Int | rightAttach - The column number to attach the right side of
the item to.
| -> Int | topAttach - The row number to attach the top of the item to.
| -> Int | bottomAttach - The row number to attach the bottom of the
item to.
| -> IO () | | Adds a new MenuItem to a (table) menu. The number of 'cells' that an
item will occupy is specified by leftAttach, rightAttach, topAttach
and bottomAttach. These each represent the leftmost, rightmost, uppermost
and lower column and row numbers of the table. (Columns and rows are indexed
from zero).
Note that this function is not related to menuDetach.
- Available since Gtk+ version 2.4
|
|
|
menuGetForAttachWidget |
:: WidgetClass widget | | => widget | widget - a Widget
| -> IO [Menu] | | Returns a list of the menus which are attached to this widget.
- Available since Gtk+ version 2.6
|
|
|
Attributes
|
|
menuTearoffState :: MenuClass self => Attr self Bool |
A boolean that indicates whether the menu is torn-off.
Default value: False
|
|
menuAccelGroup :: MenuClass self => Attr self AccelGroup |
'accelGroup' property. See menuGetAccelGroup and menuSetAccelGroup
|
|
menuActive :: MenuClass self => ReadWriteAttr self MenuItem Int |
'active' property. See menuGetActive and menuSetActive
|
|
menuTitle :: MenuClass self => ReadWriteAttr self (Maybe String) String |
'title' property. See menuGetTitle and menuSetTitle
|
|
Child Attributes
|
|
menuChildLeftAttach :: (MenuClass self, WidgetClass child) => child -> Attr self Int |
The column number to attach the left side of the child to.
Allowed values: >= -1
Default value: -1
|
|
menuChildRightAttach :: (MenuClass self, WidgetClass child) => child -> Attr self Int |
The column number to attach the right side of the child to.
Allowed values: >= -1
Default value: -1
|
|
menuChildTopAttach :: (MenuClass self, WidgetClass child) => child -> Attr self Int |
The row number to attach the top of the child to.
Allowed values: >= -1
Default value: -1
|
|
menuChildBottomAttach :: (MenuClass self, WidgetClass child) => child -> Attr self Int |
The row number to attach the bottom of the child to.
Allowed values: >= -1
Default value: -1
|
|
Produced by Haddock version 0.8 |