:right-sidebar: True ContextMenuItem =================================================================== .. currentmodule:: gi.repository.WebKitWebProcessExtension .. class:: ContextMenuItem(**properties: ~typing.Any) :no-contents-entry: Superclasses: :class:`~gi.repository.GObject.InitiallyUnowned`, :class:`~gi.repository.GObject.Object` One item of a :obj:`~gi.repository.WebKitWebProcessExtension.ContextMenu`\. The :obj:`~gi.repository.WebKitWebProcessExtension.ContextMenu` is composed of :obj:`~gi.repository.WebKitWebProcessExtension.ContextMenuItem`\s. These items can be created from a ``GtkAction``, from a :obj:`~gi.repository.WebKitWebProcessExtension.ContextMenuAction` or from a :obj:`~gi.repository.WebKitWebProcessExtension.ContextMenuAction` and a label. These :obj:`~gi.repository.WebKitWebProcessExtension.ContextMenuAction`\s denote stock actions for the items. You can also create separators and submenus. Constructors ------------ .. rst-class:: interim-class .. class:: ContextMenuItem :no-index: .. classmethod:: new_from_gaction(action: ~gi.repository.Gio.Action, label: str, target: ~gi.repository.GLib.Variant | None = None) -> ~gi.repository.WebKit.ContextMenuItem Creates a new :obj:`~gi.repository.WebKitWebProcessExtension.ContextMenuItem` for the given ``action`` and ``label``\. On activation ``target`` will be passed as parameter to the callback. .. versionadded:: 2.18 :param action: a :obj:`~gi.repository.Gio.Action` :param label: the menu item label text :param target: a :obj:`~gi.repository.GLib.Variant` to use as the action target .. classmethod:: new_from_stock_action(action: ~gi.repository.WebKit.ContextMenuAction) -> ~gi.repository.WebKit.ContextMenuItem Creates a new :obj:`~gi.repository.WebKitWebProcessExtension.ContextMenuItem` for the given stock action. Stock actions are handled automatically by WebKit so that, for example, when a menu item created with a :const:`~gi.repository.WebKitWebProcessExtension.ContextMenuAction.STOP` is activated the action associated will be handled by WebKit and the current load operation will be stopped. You can get the :obj:`~gi.repository.Gio.Action` of a :obj:`~gi.repository.WebKitWebProcessExtension.ContextMenuItem` created with a :obj:`~gi.repository.WebKitWebProcessExtension.ContextMenuAction` with :func:`~gi.repository.WebKitWebProcessExtension.ContextMenuItem.get_gaction` and connect to the :obj:`~gi.repository.Gio.SimpleAction`\::activate signal to be notified when the item is activated, but you can't prevent the associated action from being performed. :param action: a :obj:`~gi.repository.WebKitWebProcessExtension.ContextMenuAction` stock action .. classmethod:: new_from_stock_action_with_label(action: ~gi.repository.WebKit.ContextMenuAction, label: str) -> ~gi.repository.WebKit.ContextMenuItem Creates a new :obj:`~gi.repository.WebKitWebProcessExtension.ContextMenuItem` for the given stock action using the given ``label``\. Stock actions have a predefined label, this method can be used to create a :obj:`~gi.repository.WebKitWebProcessExtension.ContextMenuItem` for a :obj:`~gi.repository.WebKitWebProcessExtension.ContextMenuAction` but using a custom label. :param action: a :obj:`~gi.repository.WebKitWebProcessExtension.ContextMenuAction` stock action :param label: a custom label text to use instead of the predefined one .. classmethod:: new_separator() -> ~gi.repository.WebKit.ContextMenuItem Creates a new :obj:`~gi.repository.WebKitWebProcessExtension.ContextMenuItem` representing a separator. .. classmethod:: new_with_submenu(label: str, submenu: ~gi.repository.WebKit.ContextMenu) -> ~gi.repository.WebKit.ContextMenuItem Creates a new :obj:`~gi.repository.WebKitWebProcessExtension.ContextMenuItem` using the given ``label`` with a submenu. :param label: the menu item label text :param submenu: a :obj:`~gi.repository.WebKitWebProcessExtension.ContextMenu` to set Methods ------- .. rst-class:: interim-class .. class:: ContextMenuItem :no-index: .. method:: get_gaction() -> ~gi.repository.Gio.Action Gets the action associated to ``item`` as a :obj:`~gi.repository.Gio.Action`\. .. versionadded:: 2.18 .. method:: get_stock_action() -> ~gi.repository.WebKit.ContextMenuAction Gets the :obj:`~gi.repository.WebKitWebProcessExtension.ContextMenuAction` of ``item``\. If the :obj:`~gi.repository.WebKitWebProcessExtension.ContextMenuItem` was not created for a stock action :const:`~gi.repository.WebKitWebProcessExtension.ContextMenuAction.CUSTOM` will be returned. If the :obj:`~gi.repository.WebKitWebProcessExtension.ContextMenuItem` is a separator :const:`~gi.repository.WebKitWebProcessExtension.ContextMenuAction.NO_ACTION` will be returned. .. method:: get_submenu() -> ~gi.repository.WebKit.ContextMenu Gets the submenu of ``item``\. .. method:: is_separator() -> bool Checks whether ``item`` is a separator. .. method:: set_submenu(submenu: ~gi.repository.WebKit.ContextMenu | None = None) -> None Sets or replaces the ``item`` submenu. If ``submenu`` is :const:`None` the current submenu of ``item`` is removed. :param submenu: a :obj:`~gi.repository.WebKitWebProcessExtension.ContextMenu`