:right-sidebar: True PadController =================================================================== .. currentmodule:: gi.repository.Gtk .. class:: PadController(**properties: ~typing.Any) :no-contents-entry: Superclasses: :class:`~gi.repository.Gtk.EventController`, :class:`~gi.repository.GObject.Object` :Constructors: :: PadController(**properties) new(group:Gio.ActionGroup, pad:Gdk.Device=None) -> Gtk.PadController Constructors ------------ .. rst-class:: interim-class .. class:: PadController :no-index: .. classmethod:: new(group: ~gi.repository.Gio.ActionGroup, pad: ~gi.repository.Gdk.Device | None = None) -> ~gi.repository.Gtk.PadController Creates a new ``GtkPadController`` that will associate events from ``pad`` to actions. A :const:`None` pad may be provided so the controller manages all pad devices generically, it is discouraged to mix ``GtkPadController`` objects with :const:`None` and non-:const:`None` ``pad`` argument on the same toplevel window, as execution order is not guaranteed. The ``GtkPadController`` is created with no mapped actions. In order to map pad events to actions, use :obj:`~gi.repository.Gtk.PadController.set_action_entries` or :obj:`~gi.repository.Gtk.PadController.set_action`. Be aware that pad events will only be delivered to ``GtkWindow``'s, so adding a pad controller to any other type of widget will not have an effect. :param group: ``GActionGroup`` to trigger actions from :param pad: A ``%GDK_SOURCE_TABLET_PAD`` device, or :const:`None` to handle all pads Methods ------- .. rst-class:: interim-class .. class:: PadController :no-index: .. method:: set_action(type: ~gi.repository.Gtk.PadActionType, index: int, mode: int, label: str, action_name: str) -> None Adds an individual action to ``controller``. This action will only be activated if the given button/ring/strip number in ``index`` is interacted while the current mode is ``mode``. -1 may be used for simple cases, so the action is triggered on all modes. The given ``label`` should be considered user-visible, so internationalization rules apply. Some windowing systems may be able to use those for user feedback. :param type: the type of pad feature that will trigger this action :param index: the 0-indexed button/ring/strip number that will trigger this action :param mode: the mode that will trigger this action, or -1 for all modes. :param label: Human readable description of this action, this string should be deemed user-visible. :param action_name: action name that will be activated in the ``GActionGroup`` .. method:: set_action_entries(entries: ~typing.Sequence[~gi.repository.Gtk.PadActionEntry]) -> None A convenience function to add a group of action entries on ``controller``. See :obj:`~gi.repository.Gtk.PadActionEntry` and :obj:`~gi.repository.Gtk.PadController.set_action`. :param entries: the action entries to set on ``controller`` Properties ---------- .. rst-class:: interim-class .. class:: PadController :no-index: .. attribute:: props.action_group :type: ~gi.repository.Gio.ActionGroup .. attribute:: props.pad :type: ~gi.repository.Gdk.Device