Gtk.AccelGroup

g GObject.Object GObject.Object Gtk.AccelGroup Gtk.AccelGroup GObject.Object->Gtk.AccelGroup

Subclasses

None

Methods

Inherited

GObject.Object (37)

Structs

GObject.ObjectClass (5)

class

from_accel_closure (closure)

class

new ()

activate (accel_quark, acceleratable, accel_key, accel_mods)

connect (accel_key, accel_mods, accel_flags, closure)

connect_by_path (accel_path, closure)

disconnect (closure)

disconnect_key (accel_key, accel_mods)

find (find_func, *data)

get_is_locked ()

get_modifier_mask ()

lock ()

query (accel_key, accel_mods)

unlock ()

Virtual Methods

Inherited

GObject.Object (7)

do_accel_changed (keyval, modifier, accel_closure)

Properties

Name

Type

Flags

Short Description

is-locked

bool

r

Is the accel group locked

modifier-mask

Gdk.ModifierType

r

Modifier Mask

Signals

Inherited

GObject.Object (1)

Name

Short Description

accel-activate

The accel-activate signal is an implementation detail of Gtk.AccelGroup and not meant to be used by applications.

accel-changed

The accel-changed signal is emitted when an entry is added to or removed from the accel group.

Fields

Inherited

GObject.Object (1)

Name

Type

Access

Description

parent

GObject.Object

r

Class Details

class Gtk.AccelGroup(**kwargs)
Bases

GObject.Object

Abstract

No

Structure

Gtk.AccelGroupClass

A Gtk.AccelGroup represents a group of keyboard accelerators, typically attached to a toplevel Gtk.Window (with Gtk.Window.add_accel_group()). Usually you won’t need to create a Gtk.AccelGroup directly; instead, when using Gtk.UIManager, GTK+ automatically sets up the accelerators for your menus in the ui manager’s Gtk.AccelGroup.

Note that “accelerators” are different from “mnemonics”. Accelerators are shortcuts for activating a menu item; they appear alongside the menu item they’re a shortcut for. For example “Ctrl+Q” might appear alongside the “Quit” menu item. Mnemonics are shortcuts for GUI elements such as text entries or buttons; they appear as underlined characters. See Gtk.Label.new_with_mnemonic(). Menu items can have both accelerators and mnemonics, of course.

classmethod from_accel_closure(closure)[source]
Parameters

closure (GObject.Closure) – a GObject.Closure

Returns

the Gtk.AccelGroup to which closure is connected, or None

Return type

Gtk.AccelGroup or None

Finds the Gtk.AccelGroup to which closure is connected; see Gtk.AccelGroup.connect().

classmethod new()[source]
Returns

a new Gtk.AccelGroup object

Return type

Gtk.AccelGroup

Creates a new Gtk.AccelGroup.

activate(accel_quark, acceleratable, accel_key, accel_mods)[source]
Parameters
Returns

True if an accelerator was activated and handled this keypress

Return type

bool

Finds the first accelerator in self that matches accel_key and accel_mods, and activates it.

connect(accel_key, accel_mods, accel_flags, closure)[source]
Parameters
  • accel_key (int) – key value of the accelerator

  • accel_mods (Gdk.ModifierType) – modifier combination of the accelerator

  • accel_flags (Gtk.AccelFlags) – a flag mask to configure this accelerator

  • closure (GObject.Closure) – closure to be executed upon accelerator activation

Installs an accelerator in this group. When self is being activated in response to a call to Gtk.accel_groups_activate(), closure will be invoked if the accel_key and accel_mods from Gtk.accel_groups_activate() match those of this connection.

The signature used for the closure is that of Gtk.AccelGroupActivate.

Note that, due to implementation details, a single closure can only be connected to one accelerator group.

connect_by_path(accel_path, closure)[source]
Parameters
  • accel_path (str) – path used for determining key and modifiers

  • closure (GObject.Closure) – closure to be executed upon accelerator activation

Installs an accelerator in this group, using an accelerator path to look up the appropriate key and modifiers (see Gtk.AccelMap.add_entry()). When self is being activated in response to a call to Gtk.accel_groups_activate(), closure will be invoked if the accel_key and accel_mods from Gtk.accel_groups_activate() match the key and modifiers for the path.

The signature used for the closure is that of Gtk.AccelGroupActivate.

Note that accel_path string will be stored in a #GQuark. Therefore, if you pass a static string, you can save some memory by interning it first with GLib.intern_static_string().

disconnect(closure)[source]
Parameters

closure (GObject.Closure or None) – the closure to remove from this accelerator group, or None to remove all closures

Returns

True if the closure was found and got disconnected

Return type

bool

Removes an accelerator previously installed through Gtk.AccelGroup.connect().

Since 2.20 closure can be None.

disconnect_key(accel_key, accel_mods)[source]
Parameters
  • accel_key (int) – key value of the accelerator

  • accel_mods (Gdk.ModifierType) – modifier combination of the accelerator

Returns

True if there was an accelerator which could be removed, False otherwise

Return type

bool

Removes an accelerator previously installed through Gtk.AccelGroup.connect().

find(find_func, *data)[source]
Parameters
Returns

the key of the first entry passing find_func. The key is owned by GTK+ and must not be freed.

Return type

Gtk.AccelKey

Finds the first entry in an accelerator group for which find_func returns True and returns its Gtk.AccelKey.

get_is_locked()[source]
Returns

True if there are 1 or more locks on the self, False otherwise.

Return type

bool

Locks are added and removed using Gtk.AccelGroup.lock() and Gtk.AccelGroup.unlock().

New in version 2.14.

get_modifier_mask()[source]
Returns

the modifier mask for this accel group.

Return type

Gdk.ModifierType

Gets a Gdk.ModifierType representing the mask for this self. For example, Gdk.ModifierType.CONTROL_MASK, Gdk.ModifierType.SHIFT_MASK, etc.

New in version 2.14.

lock()[source]

Locks the given accelerator group.

Locking an acelerator group prevents the accelerators contained within it to be changed during runtime. Refer to Gtk.AccelMap.change_entry() about runtime accelerator changes.

If called more than once, self remains locked until Gtk.AccelGroup.unlock() has been called an equivalent number of times.

query(accel_key, accel_mods)[source]
Parameters
  • accel_key (int) – key value of the accelerator

  • accel_mods (Gdk.ModifierType) – modifier combination of the accelerator

Returns

an array of n_entries Gtk.AccelGroupEntry elements, or None. The array is owned by GTK+ and must not be freed.

Return type

[Gtk.AccelGroupEntry] or None

Queries an accelerator group for all entries matching accel_key and accel_mods.

unlock()[source]

Undoes the last call to Gtk.AccelGroup.lock() on this self.

do_accel_changed(keyval, modifier, accel_closure) virtual
Parameters

Signal Details

Gtk.AccelGroup.signals.accel_activate(accel_group, acceleratable, keyval, modifier)
Signal Name

accel-activate

Flags

DETAILED

Parameters
  • accel_group (Gtk.AccelGroup) – The object which received the signal

  • acceleratable (GObject.Object) – the object on which the accelerator was activated

  • keyval (int) – the accelerator keyval

  • modifier (Gdk.ModifierType) – the modifier combination of the accelerator

Returns

True if the accelerator was activated

Return type

bool

The accel-activate signal is an implementation detail of Gtk.AccelGroup and not meant to be used by applications.

Gtk.AccelGroup.signals.accel_changed(accel_group, keyval, modifier, accel_closure)
Signal Name

accel-changed

Flags

RUN_FIRST, DETAILED

Parameters

The accel-changed signal is emitted when an entry is added to or removed from the accel group.

Widgets like Gtk.AccelLabel which display an associated accelerator should connect to this signal, and rebuild their visual representation if the accel_closure is theirs.

Property Details

Gtk.AccelGroup.props.is_locked
Name

is-locked

Type

bool

Default Value

False

Flags

READABLE

Is the accel group locked

Gtk.AccelGroup.props.modifier_mask
Name

modifier-mask

Type

Gdk.ModifierType

Default Value

Gdk.ModifierType.SHIFT_MASK | Gdk.ModifierType.CONTROL_MASK | Gdk.ModifierType.MOD1_MASK | Gdk.ModifierType.SUPER_MASK | Gdk.ModifierType.HYPER_MASK | Gdk.ModifierType.META_MASK | Gdk.ModifierType.MODIFIER_MASK

Flags

READABLE

Modifier Mask