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
|
#include <stdio.h>
#include <stdlib.h>
#include <gtk/gtk.h>
#include "constantes.h"
int main (int argc, char *argv[])
{
/* Déclaration des variables */
GtkWidget *fenetre = NULL;
GtkWidget *container_principal = NULL;
/* Initialisation de GTK+ */
gtk_init (&argc, &argv);
/* Création de la fenêtre principale */
fenetre = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_title (GTK_WINDOW (fenetre), "Essai");
gtk_window_maximize (GTK_WINDOW (fenetre));
gtk_container_set_border_width (GTK_CONTAINER (fenetre), 0);
/* Création du container principal */
container_principal = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
gtk_container_add (GTK_CONTAINER (fenetre), container_principal);
/* Liste */
/* Déclaration des variables */
GtkListStore *liste = NULL;
GtkTreeIter element;
GtkWidget *liste_affichable = NULL;
GtkCellRenderer *rendu = NULL;
GtkCellRenderer *rendu_1 = NULL;
GtkCellRenderer *rendu_2 = NULL;
GtkTreeViewColumn *colonne = NULL;
liste = gtk_list_store_new(NB_COLONNE, G_TYPE_STRING, G_TYPE_UINT, G_TYPE_DOUBLE, G_TYPE_BOOLEAN);
/* premier élémnet */
gtk_list_store_append (liste, &element);
gtk_list_store_set (liste, &element, TEXTE, "essai 1", ENTIER, 0, FLOTTANT, 1.0525, BINAIRE, TRUE, -1);
/* deuxième élément */
gtk_list_store_append (liste, &element);
gtk_list_store_set (liste, &element, TEXTE, "essai 2", ENTIER, 1, FLOTTANT, 2.98765, BINAIRE, FALSE, -1);
/* liste affichable */
liste_affichable = gtk_tree_view_new_with_model (GTK_TREE_MODEL (liste));
/* première colonne */
rendu = gtk_cell_renderer_text_new ();
colonne = gtk_tree_view_column_new_with_attributes ("Texte", rendu, "text", TEXTE, NULL);
gtk_tree_view_append_column (GTK_TREE_VIEW (liste_affichable), colonne);
/* deuxième colonne */
rendu = gtk_cell_renderer_text_new ();
colonne = gtk_tree_view_column_new_with_attributes ("Entier", rendu, "text", ENTIER, NULL);
gtk_tree_view_append_column (GTK_TREE_VIEW (liste_affichable), colonne);
/* troisième élément */
rendu_1 = gtk_cell_renderer_spin_new ();
g_object_set (rendu_1, "digits", 2, NULL);
colonne = gtk_tree_view_column_new_with_attributes ("Flottant", rendu_1, "text", FLOTTANT, NULL);
gtk_tree_view_append_column (GTK_TREE_VIEW (liste_affichable), colonne);
/* quatrième élément */
rendu_2 = gtk_cell_renderer_toggle_new ();
colonne = gtk_tree_view_column_new_with_attributes ("Binaire", rendu_2, "active", BINAIRE, NULL);
gtk_tree_view_append_column (GTK_TREE_VIEW (liste_affichable), colonne);
gtk_box_pack_start (GTK_BOX (container_principal), liste_affichable, FALSE, FALSE, 20);
/* Boucle principale */
gtk_widget_show_all (fenetre);
gtk_main ();
return (EXIT_SUCCESS);
} |
Partager