Menu

gio.menu.Menu is a simple implementation of gio.menu_model.MenuModel. You populate a gio.menu.Menu by adding gio.menu_item.MenuItem instances to it.

There are some convenience functions to allow you to directly add items (avoiding gio.menu_item.MenuItem) for the common cases. To add a regular item, use gio.menu.Menu.insert. To add a section, use gio.menu.Menu.insertSection. To add a submenu, use gio.menu.Menu.insertSubmenu.

Constructors

this
this()

Creates a new #GMenu.

Members

Functions

append
void append(string label, string detailedAction)

Convenience function for appending a normal menu item to the end of menu. Combine gio.menu_item.MenuItem.new_ and gio.menu.Menu.insertItem for a more flexible alternative.

appendItem
void appendItem(gio.menu_item.MenuItem item)

Appends item to the end of menu.

appendSection
void appendSection(string label, gio.menu_model.MenuModel section)

Convenience function for appending a section menu item to the end of menu. Combine gio.menu_item.MenuItem.newSection and gio.menu.Menu.insertItem for a more flexible alternative.

appendSubmenu
void appendSubmenu(string label, gio.menu_model.MenuModel submenu)

Convenience function for appending a submenu menu item to the end of menu. Combine gio.menu_item.MenuItem.newSubmenu and gio.menu.Menu.insertItem for a more flexible alternative.

freeze
void freeze()

Marks menu as frozen.

insert
void insert(int position, string label, string detailedAction)

Convenience function for inserting a normal menu item into menu. Combine gio.menu_item.MenuItem.new_ and gio.menu.Menu.insertItem for a more flexible alternative.

insertItem
void insertItem(int position, gio.menu_item.MenuItem item)

Inserts item into menu.

insertSection
void insertSection(int position, string label, gio.menu_model.MenuModel section)

Convenience function for inserting a section menu item into menu. Combine gio.menu_item.MenuItem.newSection and gio.menu.Menu.insertItem for a more flexible alternative.

insertSubmenu
void insertSubmenu(int position, string label, gio.menu_model.MenuModel submenu)

Convenience function for inserting a submenu menu item into menu. Combine gio.menu_item.MenuItem.newSubmenu and gio.menu.Menu.insertItem for a more flexible alternative.

prepend
void prepend(string label, string detailedAction)

Convenience function for prepending a normal menu item to the start of menu. Combine gio.menu_item.MenuItem.new_ and gio.menu.Menu.insertItem for a more flexible alternative.

prependItem
void prependItem(gio.menu_item.MenuItem item)

Prepends item to the start of menu.

prependSection
void prependSection(string label, gio.menu_model.MenuModel section)

Convenience function for prepending a section menu item to the start of menu. Combine gio.menu_item.MenuItem.newSection and gio.menu.Menu.insertItem for a more flexible alternative.

prependSubmenu
void prependSubmenu(string label, gio.menu_model.MenuModel submenu)

Convenience function for prepending a submenu menu item to the start of menu. Combine gio.menu_item.MenuItem.newSubmenu and gio.menu.Menu.insertItem for a more flexible alternative.

remove
void remove(int position)

Removes an item from the menu.

removeAll
void removeAll()

Removes all items in the menu.

Inherited Members

From MenuModel

getItemAttributeValue
glib.variant.VariantG getItemAttributeValue(int itemIndex, string attribute, glib.variant_type.VariantType expectedType)

Queries the item at position item_index in model for the attribute specified by attribute.

getItemLink
gio.menu_model.MenuModel getItemLink(int itemIndex, string link)

Queries the item at position item_index in model for the link specified by link.

getNItems
int getNItems()

Query the number of items in model.

isMutable
bool isMutable()

Queries if model is mutable.

itemsChanged
void itemsChanged(int position, int removed, int added)

Requests emission of the #GMenuModel::items-changed signal on model.

iterateItemAttributes
gio.menu_attribute_iter.MenuAttributeIter iterateItemAttributes(int itemIndex)

Creates a #GMenuAttributeIter to iterate over the attributes of the item at position item_index in model.

iterateItemLinks
gio.menu_link_iter.MenuLinkIter iterateItemLinks(int itemIndex)

Creates a #GMenuLinkIter to iterate over the links of the item at position item_index in model.

connectItemsChanged
ulong connectItemsChanged(T callback, Flag!"After" after)

Connect to ItemsChanged signal.