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
|
#include "F_Ajouter.h"
#include "article.h"
#include <stdio.h>
#include <stdlib.h>
#include <iostream>
#include <gtk/gtk.h>
****************************************
****************************************
void F_Ajouter::effacerFAjouter()
{
gtk_entry_set_text(GTK_ENTRY(entry[0]),"");
gtk_entry_set_text(GTK_ENTRY(entry[1]),"");
}
****************************************
****************************************
F_Ajouter::F_Ajouter()
{
/****** creation de la fenetre ********/
windowAjouter=gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_window_set_title(GTK_WINDOW(windowAjouter),"Nouveau Article");
gtk_window_set_default_size(GTK_WINDOW(windowAjouter),500,300);
gtk_window_set_position(GTK_WINDOW(windowAjouter),GTK_WIN_POS_CENTER);
Layout=gtk_layout_new(NULL,NULL);
gtk_container_add(GTK_CONTAINER(windowAjouter), GTK_WIDGET(Layout));
gtk_window_set_modal(GTK_WINDOW(windowAjouter),TRUE);
/*Couleur bleu pale du layout*/
GdkColor color;
color.pixel = 0;
color.red=60500;
color.green=62001;
color.blue=63504;
gtk_widget_modify_bg(GTK_WIDGET(Layout), GTK_STATE_NORMAL, &color);
// creation, personnalisation et positionnement des labels
Label[0]=gtk_label_new("");
Label[1]=gtk_label_new("");
Label[2]=gtk_label_new("");
Label[3]=gtk_label_new("");
gtk_label_set_markup(GTK_LABEL(Label[0]), "<span font_desc=\"Times New Roman italic 20\"foreground=\"#0000FF\"><b><i>Ajouter Article</i></b></span>\n");
gtk_label_set_markup(GTK_LABEL(Label[1]), "<span font_desc=\"Times New Roman 12\"><u><i>Code Article</i></u></span>\n");
gtk_label_set_markup(GTK_LABEL(Label[2]), "<span font_desc=\"Times New Roman 12\"><u><i>Prix Article</i></u></span>\n");
gtk_label_set_markup(GTK_LABEL(Label[3]), "<span font_desc=\"Times New Roman 12\"><u><i>Libelle Article</i></u></span>\n");
gtk_layout_put (GTK_LAYOUT(Layout),Label[0],200,10);
gtk_layout_put (GTK_LAYOUT(Layout),Label[1],70,100);
gtk_layout_put (GTK_LAYOUT(Layout),Label[2],70,140);
gtk_layout_put (GTK_LAYOUT(Layout),Label[3],70,180);
// creation, et positionnement des buttons
button[0]=gtk_button_new_with_label("Valider");
button[1]=gtk_button_new_with_label(" Effacer ");
button[2]=gtk_button_new_with_label(" Annuler ");
gtk_layout_put (GTK_LAYOUT(Layout),button[0],70,240);
gtk_layout_put (GTK_LAYOUT(Layout),button[1],180,240);
gtk_layout_put (GTK_LAYOUT(Layout),button[2],290,240);
gtk_widget_set_size_request(button[0],80,-1);
gtk_widget_set_size_request(button[1],80,-1);
gtk_widget_set_size_request(button[2],80,-1);
// g_signal_connect(G_OBJECT(button[2]), "activate", G_CALLBACK(~F_Ajouter),NULL);
*****************************************
****************************************
g_signal_connect(G_OBJECT(button[1]), "clicked", G_CALLBACK(effacerFAjouter),NULL);
****************************************
****************************************
// création & positionnement des zones de de saisies
entry[0]=gtk_entry_new();
entry[1]=gtk_entry_new();
entry[2]=gtk_entry_new();
gtk_layout_put (GTK_LAYOUT(Layout),entry[0],200,100);
gtk_layout_put (GTK_LAYOUT(Layout),entry[1],200,140);
gtk_layout_put (GTK_LAYOUT(Layout),entry[2],200,180);
gtk_widget_set_size_request(entry[0],80,-1);
gtk_widget_set_size_request(entry[1],80,-1);
gtk_widget_set_size_request(entry[2],200,-1);
gtk_entry_set_max_length(GTK_ENTRY(entry[0]),6);
gtk_entry_set_max_length(GTK_ENTRY(entry[1]),12);
}
F_Ajouter::~F_Ajouter()
{
gtk_widget_destroy(windowAjouter);
}
void F_Ajouter::afficherFAjouter()
{
gtk_widget_show_all(windowAjouter);
}
void F_Ajouter::validerFAjouter(Article article)
{
const gchar * identifiant, *prix,*libelle;
identifiant=gtk_entry_get_text(GTK_ENTRY(entry[0]));
prix=gtk_entry_get_text(GTK_ENTRY(entry[1]));
libelle=gtk_entry_get_text(GTK_ENTRY(entry[2]));
article.setIdentifiant((long int)identifiant);
double d_prix=atof(prix); // CONVERSION DE TYPE GCHAR TO DOUBLE
article.setPrix(d_prix);
libelle=new char[strlen(article.getLibelle())+1];
article.setLibelle((char *)libelle);
Article * art;
art=new Article();
art->ajouter_article(article);
} |
Partager