gtk-0.12.5.2: Binding to the Gtk+ graphical user interface library.

Portabilityportable (depends on GHC)
Stabilityprovisional
Maintainergtk2hs-users@lists.sourceforge.net
Safe HaskellNone

Graphics.UI.Gtk.MenuComboToolbar.MenuItem

Contents

Description

The widget used for item in menus

Synopsis

Detail

The MenuItem widget and the derived widgets are the only valid childs for menus. Their function is to correctly handle highlighting, alignment, events and submenus.

As it derives from Bin it can hold any valid child widget, altough only a few are really useful.

Class Hierarchy

 | GObject
 | +----Object
 | +----Widget
 | +----Container
 | +----Bin
 | +----Item
 | +----MenuItem
 | +----CheckMenuItem
 | +----ImageMenuItem
 | +----SeparatorMenuItem
 | +----TearoffMenuItem

Types

Constructors

menuItemNewWithLabelSource

Arguments

:: String

label - the text for the label

-> IO MenuItem 

Creates a new MenuItem whose child is a Label.

menuItemNewWithMnemonicSource

Arguments

:: String

label - The text of the label, with an underscore in front of the mnemonic character

-> IO MenuItem 

Creates a new MenuItem containing a label. The label will be created using labelNewWithMnemonic, so underscores in label indicate the mnemonic for the menu item.

Methods

menuItemSetLabel :: MenuItemClass self => self -> String -> IO ()Source

Sets text on the MenuItem label

menuItemGetLabel :: MenuItemClass self => self -> IO StringSource

Gets text on the MenuItem label

menuItemSetUseUnderline :: MenuItemClass self => self -> Bool -> IO ()Source

If True, an underline in the text indicates the next character should be used for the mnemonic accelerator key.

menuItemGetUseUnderline :: MenuItemClass self => self -> IO BoolSource

Checks if an underline in the text indicates the next character should be used for the mnemonic accelerator key.

menuItemSetSubmenu :: (MenuItemClass self, MenuClass submenu) => self -> submenu -> IO ()Source

Sets the item's submenu, or changes it.

menuItemGetSubmenuSource

Arguments

:: MenuItemClass self 
=> self 
-> IO (Maybe Widget)

returns submenu for this menu item, or Nothing if none.

Gets the submenu underneath this menu item, if any. See menuItemSetSubmenu.

menuItemRemoveSubmenu :: MenuItemClass self => self -> IO ()Source

Removes the item's submenu.

menuItemEmitSelect :: MenuItemClass self => self -> IO ()Source

Select the menu item. Emits the "select" signal on the item.

menuItemEmitDeselect :: MenuItemClass self => self -> IO ()Source

Deselect the menu item. Emits the "deselect" signal on the item.

menuItemEmitActivate :: MenuItemClass self => self -> IO ()Source

Simulate a click on the menu item. Emits the "activate" signal on the item.

menuItemSetRightJustifiedSource

Arguments

:: MenuItemClass self 
=> self 
-> Bool

rightJustified - if True the menu item will appear at the far right if added to a menu bar.

-> IO () 

Sets whether the menu item appears justified at the right side of a menu bar. This was traditionally done for "Help" menu items, but is now considered a bad idea. (If the widget layout is reversed for a right-to-left language like Hebrew or Arabic, right-justified-menu-items appear at the left.)

menuItemGetRightJustified :: MenuItemClass self => self -> IO BoolSource

Gets whether the menu item appears justified at the right side of the menu bar.

menuItemSetAccelPathSource

Arguments

:: MenuItemClass self 
=> self 
-> Maybe String

accelPath - accelerator path, corresponding to this menu item's functionality, or Nothing to unset the current path.

-> IO () 

Set the accelerator path on the menu item, through which runtime changes of the menu item's accelerator caused by the user can be identified and saved to persistant storage (see accelMapSave on this). To setup a default accelerator for this menu item, call accelMapAddEntry with the same accel path. See also accelMapAddEntry on the specifics of accelerator paths, and menuSetAccelPath for a more convenient variant of this function.

This function is basically a convenience wrapper that handles calling widgetSetAccelPath with the appropriate accelerator group for the menu item.

Note that you do need to set an accelerator on the parent menu with menuSetAccelGroup for this to work.

Attributes

menuItemSubmenu :: (MenuItemClass self, MenuClass submenu) => ReadWriteAttr self (Maybe Widget) submenuSource

'submenu' property. See menuItemGetSubmenu and menuItemSetSubmenu

menuItemUseUnderline :: MenuItemClass self => Attr self BoolSource

'useUnderline' property. See menuItemSetUseUnderline and menuItemGetUseEUnderline

Signals

menuItemActivatedItem :: MenuItemClass self => Signal self (IO ())Source

Emitted when the user chooses a menu item that has a submenu.

  • This signal is not emitted if the menu item does not have a submenu.

menuItemActivated :: MenuItemClass self => Signal self (IO ())Source

The user has chosen the menu item.

  • This is the only function applications normally connect to. It is not emitted if the item has a submenu.

menuItemActivate :: MenuItemClass self => Signal self (IO ())Source

Deprecated. See menuItemActivated.

menuItemSelect :: MenuItemClass i => Signal i (IO ())Source

This signal is emitted when the item is selected.

menuItemDeselect :: MenuItemClass i => Signal i (IO ())Source

This signal is emitted when the item is deselected.

menuItemToggle :: MenuItemClass i => Signal i (IO ())Source

This signal is emitted when the item is toggled.

Deprecated

onActivateItem :: MenuItemClass self => self -> IO () -> IO (ConnectId self)Source

afterActivateItem :: MenuItemClass self => self -> IO () -> IO (ConnectId self)Source

onActivateLeaf :: MenuItemClass self => self -> IO () -> IO (ConnectId self)Source

afterActivateLeaf :: MenuItemClass self => self -> IO () -> IO (ConnectId self)Source

onSelect :: ItemClass i => i -> IO () -> IO (ConnectId i)Source

afterSelect :: ItemClass i => i -> IO () -> IO (ConnectId i)Source

onDeselect :: ItemClass i => i -> IO () -> IO (ConnectId i)Source

afterDeselect :: ItemClass i => i -> IO () -> IO (ConnectId i)Source

onToggle :: ItemClass i => i -> IO () -> IO (ConnectId i)Source

afterToggle :: ItemClass i => i -> IO () -> IO (ConnectId i)Source