Description
Un GtkAccelGroup représente un groupe d'accélérateurs clavier,
typiquement attachés à un GtkWindow
de niveau supérieur (avec
gtk_window_add_accel_group()
).
Normalement vous n'aurz pas à créer un
GtkAccelGroup directement; à la place, pendant l'utilisation GtkItemFactory,
GTK+
définit automatiquement les accélérateurs pour vos
menus dans automatically sets up the accelerators for your menus dans
l'ensemble des items de GtkAccelGroup.
Notez que ces accelerateurs
sont différents des mnemonics.
Les accélérateurs sont des raccourcis pour activer un
item de menu; ils apparaissent à côté de l'item du
menu auquel ils correspondent. Par exemple "Ctrl+Q" devrait
apparaître à côté de l'item "Quitter" du
menu. Les mnemonics sont des raccourcis pour les
éléments du GUI comme une entrée
texte ou des boutons; ils apparaissent comme des caractères
soulignés. Voir
gtk_label_new_with_mnemonic()
.
Les items de menu peuvent être des accélérateurs et des mnémonics, bien sûr.
Détails
GtkAccelGroup
typedef struct _GtkAccelGroup GtkAccelGroup;
|
Un objet représentant et maintenant un groupe d'accélérateurs.
gtk_accel_group_ref
#define gtk_accel_group_ref g_object_ref
|
Attention
gtk_accel_group_ref
est
déprécié et ne doit plus être utilisé
dans du code nouvellement écrit. Son équivalent est g_object_ref()
.
Retourne : |
Le groupe acclérateur qui a été passé
|
gtk_accel_group_unref
#define gtk_accel_group_unref g_object_unref
|
Attention
est
déprécié et ne doit plus être utilisé
dans du code nouvellement écrit. Son équivalent est
g_object_unref()
.
gtk_accel_group_connect
()
Installe un accélérateur dan ce groupe. Quand accel_group
est activé en réponse à l'appel de gtk_accel_groups_activate()
,
closure
est appelé si accel_key
et accel_mods
de gtk_accel_groups_activate()
réalisent ce genre de connexion.
La signature utilise pour la fermeture (closure)
est celle de GtkAccelGroupActivate.
Notez que, en raison des détails de l'exécution, une
seule fermeture seulement peut être connextée à un
groupe accélérateur.
accel_group : |
Le groupe accélérateur dans lequel l'accélérateur sera installé.
|
accel_key : |
Valeur de touche de l'accélérateur
|
accel_mods : |
Combinaison de modificateur de l'accélérateur.
|
accel_flags : |
Un flag masque pour configurer l'accélérateur.
|
closure : |
Fermeture closure à exécuter sur l'activation de l'accélérateur.
|
gtk_accel_group_connect_by_path
()
Installe un accélérateyr dans ce groupe, en utilisant
un chemin d'accès pour rechercher la touche et les modificateurs
(voir gtk_accel_map_add_entry()
).
Quand accel_group
est activé en réponse à l'appel de
gtk_accel_groups_activate()
,
closure
(fermeture) est appelé si la accel_key
et
accel_mods
de gtk_accel_groups_activate()
combine la touche et les modificateurs pour le chemin d'accès.
La signature utilisée pour closure
est celle de GtkAccelGroupActivate.
accel_group : |
Le groupe accélérateur dans lequel l'accélérateur sera installé.
|
accel_path : |
chemin d'accès utilisé pour déterminer la touche et les modificateurs.
|
closure : |
Fermeture closure à exécuter sur l'activation de l'accélérateur.
|
GtkAccelGroupActivate
()
accel_group : |
|
acceleratable : |
|
keyval : |
|
modifier : |
|
Retourne : |
|
GtkAccelGroupFindFunc
()
key : |
|
closure : |
|
data : |
|
Retourne : |
|
Depuis 2.2
gtk_accel_group_disconnect
()
Supprime un accélérateur installé avec gtk_accel_group_connect()
.
accel_group : |
Le groupe accélérateur où supprimer un accélérateur
|
closure : |
La fermeture à supprimer de ce groupe accélérateur
|
Retourne : |
TRUE si la ferleture est trouvée et est déconnectée
|
gtk_accel_group_disconnect_key
()
Supprimer un accélérateur préalablement installé par
gtk_accel_group_connect()
.
accel_group : |
Le groupe accélérateur où supprimer un accélérateur
|
accel_key : |
Valeur de touche de l'accélérateur
|
accel_mods : |
combinaison de modificateur de l'accélérateur
|
Retourne : |
TRUE si il y a un accélérateur qui sera supprimé, FALSE autrement
|
gtk_accel_group_query
()
Cherche un groupe accélérateur pour toutes les entrées combinant accel_key
et accel_mods
.
accel_group : |
Le groupe accélérateur cherché
|
accel_key : |
Valeur de touche de l'accélérateur
|
accel_mods : |
combinaison de modifieur de l'accélérateur
|
n_entries : |
Localisation pour retourner le nombre d'entrées trouvé , ou NULL
|
Retourne : |
un tableau d'éléments n_entries
de GtkAccelGroupEntry , ou NULL . Le tableau appartient à GTK+ et ne doit pas être libéré. |
gtk_accel_group_activate
()
accel_group : |
|
accel_quark : |
|
acceleratable : |
|
accel_key : |
|
accel_mods : |
|
Retourne : |
|
gtk_accel_group_lock
()
Verrouille le groupe accélérateur donné.
Le verrouillage du groupe accélérateur empêche
que les accélérateurs qu'il contient soient
modifiés pendant le temps d'exécution.
référez à
gtk_accel_map_change_entry()
au sujet des changement d'accélérateur pendant le temps d'exécution.
Si vous appelez plusieurs fois la fonction, accel_group
reste verrouillé tant que
gtk_accel_group_unlock()
soit appelé un nombre équivalent de fois.
gtk_accel_groups_activate
()
Trouve le premier accélérateur dans tous les GtkAccelGroup attachés à object
qui combine accel_key
et accel_mods
,
et active cet accélérateur. Si un
accélérateur a été activé et que
la touche est manipulée, TRUE
est retourné.
object : |
le GObject, habituellement un GtkWindow, pour lequel l'accélérateur est activé
|
accel_key : |
Valeur de touche de l'accélérateur pour l'événement de touche.
|
accel_mods : |
Masque d'état du clavier d'un événement de touche.
|
Returns : |
TRUE si l'accélérateur est manipulé , FALSE autrement
|
gtk_accel_groups_from_object
()
Obtient la liste de tous les groupes accélérateurs qui sont attachés à object
.
object : |
Un GObject, habituellement GtkWindow |
Retourne : |
La liste de tous les groupes accelérateur qui sont attachés à object
|
gtk_accel_group_find
()
Trouve la première entrée dans le groupe accélérateur pour lequel find_func
retourne TRUE
et returne ses GtkAccelKey.
accel_group : |
Un GtkAccelGroup
|
find_func : |
Une fonction pour filtrer les entrées de accel_group
|
data : |
Données à passer à find_func
|
Retourne : |
La touche de la première entrée passant find_func .
La touche est appartient à GTK+ et ne doit pas être libérée.
|
GtkAccelKey
typedef struct { guint accel_key; GdkModifierType accel_mods; guint accel_flags : 16; } GtkAccelKey;
|
gtk_accelerator_valid
()
Détermine si une valeur de touche donnée et un
masque de modificateur constituent un accélérateur de
clavier valide. Par exemple, le valeur de touche GDK_a avec GDK_CONTROL_MASK
est valide - c'est un accélérateur "Ctrl+a".
Mais, vous pouvez, à la place, utiliser la valeur de
touche GDK_Control_L
comme un accélérateur.
keyval : |
Une valeur de touche GDK
|
modifiers : |
masque de modificateur |
Retourne : |
TRUE si l'accélérateur est valide
|
gtk_accelerator_parse
()
Analyse une chaîne représentant un
accélérateur. Le format ressemble à
"<Control>a" ou
"<Shift><Alt>F1" ou
"<Release>z" (la dernière forme sert aux touches de
sortie).
L'analyseur est assez libéral et permet les minuscules, les
majuscules et aussi les abréviations telles que
"<Ctl>" et
"<Ctrl>".
Si l'analyse échoue, accelerator_key
et accelerator_mods
seront définis à 0 (zéro).
accelerator : |
Chaîne représentant un accélérateur
|
accelerator_key : |
Localisation de retour pour la valeur de touche de l'accélérateur
|
accelerator_mods : |
Localisation de retour pour le masque du modificateur de l'accélérateur.
|
gtk_accelerator_name
()
Convertit un valeur de touche d'un accélérateur et le masque du modificateur en une chaîne analysable par gtk_accelerator_parse()
. Par exemple, si vous lui passé GDK_q et GDK_CONTROL_MASK, cette fonction retounera <Control>q".
Si vous avez besoin d'afficher des accélérateur dans l'interface utilisateur, voir gtk_accelerator_get_label()
.
accelerator_key : |
Valeur de touche de l'accélérateur
|
accelerator_mods : |
Masque de modificateur d'accélérateur
|
Retourne : |
Une nouvelle allocation de nom d'accélérateur.
|
gtk_accelerator_get_label
()
Convertit un valeur de touche d'accélérateur et un
masque de modificateur en une chaîne qui peut être
utilisée pour représenter l'accélérateur
à l'utilisateur.
accelerator_key : |
Valeur de touche de l'accélérateur
|
accelerator_mods : |
Masque de modificateur d'accélérateur
|
Retourne : |
Une nouvelle allocation de chaîne représentant l'accélérateur.
|
Depuis 2.6
gtk_accelerator_set_default_mod_mask
()
void gtk_accelerator_set_default_mod_mask (GdkModifierType default_mod_mask);
|
Définit les modificateurs qui seront considérés
significatifs pour les accélérateurs de clavier.
Le masque de modificateur par défaut est GDK_CONTROL_MASK |
GDK_SHIFT_MASK | GDK_MOD1_MASK | GDK_SUPER_MASK | GDK_HYPER_MASK | GDK_META_MASK, c'est ,
Control, Shift, Alt, Super, Hyper et Meta. Les autres modificateurs sont ignorés par GtkAccelGroup.
Au final,vous devez inclure les trois modificateurs Control,
Shift et Alt dans n'importe quelle valeur que vous passez à
cette fonction.
Le masque de modificateur par défaut doit être
modifié au début des appliactions, avant d'utiliser
n'importe quel groupe accélérateur.
default_mod_mask : |
Masque de modificateur d'accélérateur.
|
gtk_accelerator_get_default_mod_mask
()
guint gtk_accelerator_get_default_mod_mask (void);
|
Obtient la valeur définit par gtk_accelerator_set_default_mod_mask()
.
Retourne : |
Le masque de modificatuer par défaut de l'accélérateur
|