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
| void LectureRepertoireImage (GtkWidget *Widget, gchar *NomDossier)
{
GtkWidget *Fenetre;
GtkWidget *BoxExt;
GtkWidget *BoxBoutons;
GtkWidget *BoxCommande;
GtkWidget *BarreDefilement;
GtkWidget *Bouton;
Fenetre = gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_window_set_title(GTK_WINDOW(Fenetre),"Contenu du répertoire Images");
gtk_window_set_default_size(GTK_WINDOW(Fenetre), 320, 200);
gtk_window_set_position(GTK_WINDOW(Fenetre), GTK_WIN_POS_CENTER);
/*VBox extérieure*/
BoxExt = gtk_vbox_new(TRUE, 0);
/*Ajout dans la Fenetre*/
gtk_container_add(GTK_CONTAINER(Fenetre), BoxExt);
/*Creation d'une fenetre défilable*/
BarreDefilement = gtk_scrolled_window_new(NULL, NULL);
/*Ajout des "défilables" dans BoxExt*/
gtk_container_add(GTK_CONTAINER(BoxExt), BarreDefilement);
/*Fixation des politiques de défilement - Aucune en horizontale et Toujours en verticale*/
gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(BarreDefilement), GTK_POLICY_NEVER, GTK_POLICY_ALWAYS);
/*Creation de la boite à boutons*/
BoxBoutons = gtk_vbox_new(FALSE, 0);
/*Ajout des proprietes d'étirementà la boite de boutons*/
gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(BarreDefilement), BoxBoutons);
GDir *Repertoire = g_dir_open(NomDossier, 0, NULL);
if(Repertoire)
{
const gchar *NomFichier = NULL;
while ((NomFichier = g_dir_read_name(Repertoire)))
{
Bouton = gtk_check_button_new_with_label(NomFichier);
gtk_box_pack_start(GTK_BOX(BoxBoutons), Bouton, FALSE, FALSE, 0);
}
}
/*Boite horizontale avec les boutons de commande*/
BoxCommande = gtk_hbox_new(TRUE, 0);
/*Ajout de cette HBox dans la BoxExt*/
gtk_container_add(GTK_CONTAINER(BoxExt), BoxCommande);
Bouton = gtk_button_new_from_stock(GTK_STOCK_OK);
gtk_box_pack_start(GTK_BOX(BoxCommande), Bouton, FALSE, FALSE, 0);
g_signal_connect(G_OBJECT(Bouton), "activate", G_CALLBACK(AjoutDiaporama), (GtkWidget *)BoxBoutons);
Bouton = gtk_button_new_from_stock(GTK_STOCK_CANCEL);
gtk_box_pack_start(GTK_BOX(BoxCommande), Bouton, FALSE, FALSE, 0);
gtk_widget_show_all(Fenetre);
} |
Partager