/usr/share/help/fr/gnome-devel-demos/togglebutton.c.page is in gnome-devel-docs 3.18.1-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 | <?xml version="1.0" encoding="utf-8"?>
<page xmlns="http://projectmallard.org/1.0/" xmlns:its="http://www.w3.org/2005/11/its" xmlns:xi="http://www.w3.org/2001/XInclude" type="guide" style="task" id="togglebutton.c" xml:lang="fr">
<info>
<title type="text">ToggleButton (C)</title>
<link type="guide" xref="c#buttons"/>
<link type="seealso" xref="grid.c"/>
<link type="seealso" xref="switch.c"/>
<revision version="0.1" date="2012-06-12" status="draft"/>
<credit type="author copyright">
<name>Monica Kochofar</name>
<email its:translate="no">monicakochofar@gmail.com</email>
<years>2012</years>
</credit>
<desc>Un bouton qui mémorise l'état</desc>
<mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
<mal:name>Luc Rebert,</mal:name>
<mal:email>traduc@rebert.name</mal:email>
<mal:years>2011</mal:years>
</mal:credit>
<mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
<mal:name>Alain Lojewski,</mal:name>
<mal:email>allomervan@gmail.com</mal:email>
<mal:years>2011-2012</mal:years>
</mal:credit>
<mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
<mal:name>Luc Pionchon</mal:name>
<mal:email>pionchon.luc@gmail.com</mal:email>
<mal:years>2011</mal:years>
</mal:credit>
<mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
<mal:name>Bruno Brouard</mal:name>
<mal:email>annoa.b@gmail.com</mal:email>
<mal:years>2011-12</mal:years>
</mal:credit>
<mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
<mal:name>Luis Menina</mal:name>
<mal:email>liberforce@freeside.fr</mal:email>
<mal:years>2014</mal:years>
</mal:credit>
</info>
<title>ToggleButton</title>
<media type="image" mime="image/png" src="media/togglebutton.png"/>
<p>Quand ce ToggleButton est activé, l'indicateur d'activité tourne.</p>
<code mime="text/x-csrc" style="numbered">
#include <gtk/gtk.h>
/*This is the callback function. It is a handler function
which reacts to the signal. In this case, it will cause the
spinner to start and stop according to how many times the user
presses the button.*/
static void
button_toggled_cb (GtkWidget *button,
gpointer user_data)
{
GtkWidget *spinner = user_data;
if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(button)))
gtk_spinner_start (GTK_SPINNER (spinner));
else {
gtk_spinner_stop (GTK_SPINNER (spinner));
}
}
static void
activate (GtkApplication *app,
gpointer user_data)
{
GtkWidget *window;
GtkWidget *button;
GtkWidget *grid;
GtkWidget *spinner;
/*Create a window with a title, border width and a default size*/
window = gtk_application_window_new (app);
gtk_window_set_title (GTK_WINDOW (window), "ToggleButton Example");
gtk_window_set_default_size (GTK_WINDOW (window), 300, 300);
gtk_container_set_border_width(GTK_CONTAINER(window), 30);
/*Create a togglebutton with a label*/
button = gtk_toggle_button_new_with_label ("Start/Stop");
/*Create a spinner, with extra horizontal and vertical space*/
spinner = gtk_spinner_new ();
gtk_widget_set_hexpand (spinner, TRUE);
gtk_widget_set_vexpand (spinner, TRUE);
/*Create a grid and set the row spacing, attach the togglebutton
and spinner onto the grid and position them accordingly*/
grid = gtk_grid_new();
gtk_grid_set_row_homogeneous (GTK_GRID (grid), FALSE);
gtk_grid_set_row_spacing (GTK_GRID (grid), 15);
gtk_grid_attach (GTK_GRID (grid), spinner, 0, 0, 1, 1);
gtk_grid_attach (GTK_GRID (grid), button, 0, 1, 1, 1);
gtk_container_add (GTK_CONTAINER (window), grid);
/*Connecting the toggled signal to the callback*/
g_signal_connect (GTK_TOGGLE_BUTTON (button), "toggled",
G_CALLBACK (button_toggled_cb), spinner);
gtk_widget_show_all (window);
}
int
main (int argc, char **argv)
{
GtkApplication *app;
int status;
app = gtk_application_new ("org.gtk.example", G_APPLICATION_FLAGS_NONE);
g_signal_connect (app, "activate", G_CALLBACK (activate), NULL);
status = g_application_run (G_APPLICATION (app), argc, argv);
g_object_unref (app);
return status;
}
</code>
<p>Dans cet exemple, les éléments suivants sont utilisés :</p>
<list>
<item><p><link href="http://developer.gnome.org/gtk3/3.4/GtkApplication.html">GtkApplication</link></p></item>
<item><p><link href="http://developer.gnome.org/gtk3/3.4/GtkWindow.html">GtkWindow</link></p></item>
<item><p><link href="http://developer.gnome.org/gtk3/stable/GtkSpinner.html">GtkSpinner</link></p></item>
<item><p><link href="http://developer.gnome.org/gtk3/stable/GtkToggleButton.html">GtkTogglebutton</link></p></item>
<item><p><link href="http://developer.gnome.org/gtk3/stable/GtkGrid.html">GtkGrid</link></p></item>
</list>
</page>
|