Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "main.h"
- void buttonclicked(GtkWidget *button, gpointer imagesuiv)
- {
- }
- int main (int argc, char *argv[])
- {
- /* Initialize GTK+ */
- g_log_set_handler ("Gtk", G_LOG_LEVEL_WARNING, (GLogFunc) gtk_false, NULL);
- gtk_init (&argc, &argv);
- g_log_set_handler ("Gtk", G_LOG_LEVEL_WARNING, g_log_default_handler, NULL);
- /*declaration des variables*/
- //variable permettant de remplir le tableau
- gint i, j;
- //window
- GtkWidget *win = NULL;
- //box
- GtkWidget* colscore = NULL;
- GtkWidget* hbox = NULL;
- GtkWidget* affichagesuiv = NULL;
- //tableau
- GtkWidget* tableau = NULL;
- //labels
- GtkWidget* frame1 = NULL;
- GtkWidget* frame2 = NULL;
- GtkWidget* frame3 = NULL;
- GtkWidget* frame4 = NULL;
- GtkWidget* frame5 = NULL;
- GtkWidget* score1 = NULL;
- GtkWidget* score2 = NULL;
- GtkWidget* textsuiv = NULL;
- //images
- GtkWidget* imagesuiv = NULL;
- GtkWidget* font = NULL;
- //boutons
- GtkWidget* button[12][8];
- //chaine permettant de modifier le texte dans les labels
- const gchar* text1 = NULL;
- const gchar* text2 = NULL;
- const gchar* text3 = NULL;
- /* Create the main window */
- win = gtk_window_new (GTK_WINDOW_TOPLEVEL);
- gtk_container_set_border_width (GTK_CONTAINER (win),5);
- gtk_window_set_title (GTK_WINDOW (win), "Connect");
- gtk_window_set_position (GTK_WINDOW (win), GTK_WIN_POS_CENTER);
- gtk_widget_realize (win);
- g_signal_connect (win, "destroy", gtk_main_quit, NULL);
- /*Creer les elements de l'interface */
- //les box
- hbox=gtk_hbox_new(FALSE,5);
- colscore= gtk_vbox_new(FALSE,5);
- gtk_container_border_width(GTK_CONTAINER(colscore), 5);
- affichagesuiv=gtk_hbox_new(TRUE,0);
- //le tableau
- tableau= gtk_table_new(12,8,TRUE);
- //convertion du label
- text1= g_locale_to_utf8("<span font_family=\"Vivaldi\" size=\"xx-large\" foreground=\"#336699\"><i><b><big>Score Total:</big></b></i></span>\n", -1, NULL, NULL, NULL);
- text2= g_locale_to_utf8("<span font_family=\"Vivaldi\" size=\"xx-large\" foreground=\"#336699\"><i><b><big>Score obtenu par la derniere boucle:</big></b></i></span>\n", -1, NULL, NULL, NULL);
- text3= g_locale_to_utf8("<span font_family=\"Vivaldi\" size=\"xx-large\" foreground=\"#336699\"><i><b><big>Prochaine brique:</big></b></i></span>\n", -1, NULL, NULL, NULL);
- //application aux labels
- score1= gtk_label_new(NULL);
- gtk_label_set_markup(GTK_LABEL(score1),text1);
- g_free((gpointer)text1);
- gtk_label_set_justify(GTK_LABEL(score1),GTK_JUSTIFY_CENTER);
- score2= gtk_label_new(NULL);
- gtk_label_set_markup(GTK_LABEL(score2),text2);
- g_free((gpointer)text2);
- gtk_label_set_justify (GTK_LABEL(score2),GTK_JUSTIFY_CENTER);
- textsuiv= gtk_label_new(NULL);
- gtk_label_set_markup(GTK_LABEL(textsuiv),text3);
- g_free((gpointer)text3);
- gtk_label_set_justify(GTK_LABEL(textsuiv),GTK_JUSTIFY_CENTER);
- //creation des frames
- frame1=gtk_frame_new("TABLEAU DES SCORES");
- gtk_frame_set_label_align(GTK_FRAME(frame1), 0.5, 0.5);
- gtk_frame_set_shadow_type(GTK_FRAME(frame1), GTK_SHADOW_OUT);
- frame2=gtk_frame_new("-");
- frame3=gtk_frame_new("-");
- frame4=gtk_frame_new("-");
- frame5=gtk_frame_new("CONNECT");
- gtk_frame_set_label_align(GTK_FRAME(frame5), 0.5, 0.5);
- gtk_frame_set_shadow_type(GTK_FRAME(frame5), GTK_SHADOW_OUT);
- //les images
- imagesuiv=gtk_image_new_from_file("bouton14.png");
- //creation du tableau de bouttons
- for(i = 0; i<12; i++)
- {
- for(j = 0; j<8; j++)
- {
- font=gtk_image_new_from_file("case.png");
- button[i][j]=gtk_button_new();
- gtk_container_add(GTK_CONTAINER(button[i][j]),font);
- gtk_table_attach_defaults(GTK_TABLE(tableau),button[i][j],i,i+1,j, j+1);
- g_signal_connect(G_OBJECT(button[i][j]), "clicked", G_CALLBACK(buttonclicked), (gpointer)imagesuiv);
- }
- }
- // organisations des elements de l'interface
- gtk_container_add(GTK_CONTAINER(win), hbox);
- gtk_container_add(GTK_CONTAINER(hbox), frame1);
- gtk_container_add(GTK_CONTAINER(hbox),frame5);
- gtk_container_add(GTK_CONTAINER(frame5),tableau);
- gtk_container_add(GTK_CONTAINER(frame1), colscore);
- gtk_container_add(GTK_CONTAINER(colscore), frame2);
- gtk_container_add(GTK_CONTAINER(frame2), score1);
- gtk_container_add(GTK_CONTAINER(colscore), frame3);
- gtk_container_add(GTK_CONTAINER(frame3), score2);
- gtk_container_add(GTK_CONTAINER(colscore), frame4);
- gtk_container_add(GTK_CONTAINER(frame4),affichagesuiv);
- gtk_container_add(GTK_CONTAINER(affichagesuiv), textsuiv);
- gtk_container_add(GTK_CONTAINER(affichagesuiv),imagesuiv);
- //gerer l'action de l'utilisateur
- //affichage de la fenetre finale
- g_signal_connect(G_OBJECT(win), "delete-event", G_CALLBACK(gtk_main_quit), NULL);
- gtk_widget_show_all (win);
- gtk_main ();
- return 0;
- }
Add Comment
Please, Sign In to add comment