IBusHotkeyProfile

IBusHotkeyProfile — Hotkeys and associated events.

Stability Level

Stable, unless otherwise indicated

Synopsis

struct              IBusHotkeyProfile;
struct              IBusHotkeyProfileClass;
gboolean            ibus_hotkey_profile_add_hotkey      (IBusHotkeyProfile *profile,
                                                         guint keyval,
                                                         guint modifiers,
                                                         GQuark event);
gboolean            ibus_hotkey_profile_add_hotkey_from_string
                                                        (IBusHotkeyProfile *profile,
                                                         const gchar *str,
                                                         GQuark event);
gboolean            ibus_hotkey_profile_remove_hotkey   (IBusHotkeyProfile *profile,
                                                         guint keyval,
                                                         guint modifiers);
gboolean            ibus_hotkey_profile_remove_hotkey_by_event
                                                        (IBusHotkeyProfile *profile,
                                                         GQuark event);
GQuark              ibus_hotkey_profile_filter_key_event
                                                        (IBusHotkeyProfile *profile,
                                                         guint keyval,
                                                         guint modifiers,
                                                         guint prev_keyval,
                                                         guint prev_modifiers,
                                                         gpointer user_data);
GQuark              ibus_hotkey_profile_lookup_hotkey   (IBusHotkeyProfile *profile,
                                                         guint keyval,
                                                         guint modifiers);

Object Hierarchy

  GObject
   +----GInitiallyUnowned
         +----IBusObject
               +----IBusSerializable
                     +----IBusHotkeyProfile

Signals

  "trigger"                                        : Has Details

Description

An IBusHotkeyProfile associates a hotkey and an event.

Details

struct IBusHotkeyProfile

struct IBusHotkeyProfile;

An opaque data type representing an IBusHotkeyProfile.


struct IBusHotkeyProfileClass

struct IBusHotkeyProfileClass {
    IBusSerializableClass parent;

    void (* trigger) (IBusHotkeyProfile *profile,
                      GQuark             event,
                      gpointer           user_data);
};


ibus_hotkey_profile_add_hotkey ()

gboolean            ibus_hotkey_profile_add_hotkey      (IBusHotkeyProfile *profile,
                                                         guint keyval,
                                                         guint modifiers,
                                                         GQuark event);

Add a hotkey and its associated event to an IBusHotkeyProfile.

profile :

An IBusHotkeyProfile.

keyval :

Keycode of the hotkey.

modifiers :

Modifiers of the hotkey.

event :

The event to be associated.

Returns :

Always TRUE.

ibus_hotkey_profile_add_hotkey_from_string ()

gboolean            ibus_hotkey_profile_add_hotkey_from_string
                                                        (IBusHotkeyProfile *profile,
                                                         const gchar *str,
                                                         GQuark event);

Add a hotkey and its associated event to an IBusHotkeyProfile. The hotkey is in string format, such like Control+Shift+A.

profile :

An IBusHotkeyProfile.

str :

Key in string representation. '+' is the separator.

event :

The event to be associated.

Returns :

FALSE if str contains invalid symbol; TRUE otherwise.

ibus_hotkey_profile_remove_hotkey ()

gboolean            ibus_hotkey_profile_remove_hotkey   (IBusHotkeyProfile *profile,
                                                         guint keyval,
                                                         guint modifiers);

Remove the hotkey for an IBusHotkeyProfile.

profile :

An IBusHotkeyProfile.

keyval :

Keycode of the hotkey.

modifiers :

Modifiers of the hotkey.

Returns :

FALSE if the key is not in profile, TRUE otherwise.

ibus_hotkey_profile_remove_hotkey_by_event ()

gboolean            ibus_hotkey_profile_remove_hotkey_by_event
                                                        (IBusHotkeyProfile *profile,
                                                         GQuark event);

Remove the hotkey for an IBusHotkeyProfile by event.

profile :

An IBusHotkeyProfile.

event :

The associated event.

Returns :

FALSE if no such event in profile, TRUE otherwise.

ibus_hotkey_profile_filter_key_event ()

GQuark              ibus_hotkey_profile_filter_key_event
                                                        (IBusHotkeyProfile *profile,
                                                         guint keyval,
                                                         guint modifiers,
                                                         guint prev_keyval,
                                                         guint prev_modifiers,
                                                         gpointer user_data);

Emit a ::trigger signal when a hotkey is in a profile.

See also: ::trigger

profile :

An IBusHotkeyProfile.

keyval :

Keycode of the hotkey.

modifiers :

Modifiers of the hotkey.

prev_keyval :

Keycode of the hotkey.

prev_modifiers :

Modifiers of the hotkey.

user_data :

user data for signal "trigger".

Returns :

0 if releasing a hotkey and the hotkey is not in the profile ; an associated event otherwise.

ibus_hotkey_profile_lookup_hotkey ()

GQuark              ibus_hotkey_profile_lookup_hotkey   (IBusHotkeyProfile *profile,
                                                         guint keyval,
                                                         guint modifiers);

profile :

An IBusHotkeyProfile.

keyval :

Keycode of the hotkey.

modifiers :

Modifiers of the hotkey.

Returns :

The event associated to the hotkey or 0 if the hotkey is not in the profile.

Signal Details

The "trigger" signal

void                user_function                      (IBusHotkeyProfile *profile,
                                                        guint              event,
                                                        gpointer           user_data,
                                                        gpointer           user_data)      : Has Details

Emitted when a hotkey is pressed and the hotkey is in profile. Implement the member function trigger() in extended class to receive this signal.

Note

The last parameter, user_data is not actually a valid parameter. It is displayed because of GtkDoc bug.

profile :

An IBusHotkeyProfile.

event :

An event in GQuark.

user_data :

User data for callback.

user_data :

user data set when the signal handler was connected.