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
|
#include <gtk/gtk.h>
void cb_aide (GtkButton *pBouton, gpointer user_data)
{
GtkWidget *Ma_VBox = NULL;
GtkWidget *Zone_Texte = NULL;
GtkTextBuffer *Buffer = NULL;
GtkTextIter iStart;
gchar *Mon_Fichier, *Buffer_Fichier;
/*Creation de la fenetre d'aide et configuration*/
user_data = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_default_size(GTK_WINDOW (user_data), 300, 240);
gtk_window_set_title (GTK_WINDOW (user_data), "Informations");
gtk_window_set_position(GTK_WINDOW (user_data), GTK_WIN_POS_CENTER);
g_signal_connect (G_OBJECT (user_data), "destroy", G_CALLBACK (gtk_main_quit), NULL);
/* Creation de la GtkBox verticale */
Ma_VBox = gtk_vbox_new(TRUE, 0);
/* Ajout de la GtkVBox dans la fenetre */
gtk_container_add(GTK_CONTAINER(user_data), Ma_VBox);
/* Creation de la zone de texte */
Zone_Texte = gtk_text_view_new_with_buffer (Buffer);
gtk_text_view_set_editable(GTK_TEXT_VIEW(Zone_Texte),0);
/*L'utilisateur n'a pas la possibilité dediter la zone de texte*/
gtk_text_view_set_cursor_visible (GTK_TEXT_VIEW(Zone_Texte),0);
/*L'utilisateur ne verra pas de curseur dans la zone de texte*/
gtk_text_view_set_justification (GTK_TEXT_VIEW(Zone_Texte),GTK_JUSTIFY_CENTER);
/*insertion de la zone de texte dans la Vbox*/
gtk_box_pack_start(GTK_BOX(Ma_VBox), Zone_Texte, TRUE, TRUE, 25);
/* Recuperation du chemin */
Mon_Fichier = gtk_file_chooser_select_filename (GTK_FILE_CHOOSER_ACTION_OPEN, "Readme.txt");
Buffer_Fichier = NULL;
g_file_get_contents(Mon_Fichier, &Buffer_Fichier, NULL, NULL);
g_free(Mon_Fichier);
/* Recuperation du buffer */
Buffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (Zone_Texte));
/* Affichage du fichier */
gtk_text_buffer_get_start_iter(Buffer, &iStart);
gtk_text_buffer_insert(Buffer, &iStart, Buffer_Fichier, -1);
g_free(Buffer_Fichier);
/* Affichage de la fenetre d'aide */
gtk_widget_show_all (user_data);
/* Lancement de la boucle principale */
gtk_main ();
(void)pBouton;
} |
Partager