00001
00002
00003
00004
00005 #ifdef HAVE_CONFIG_H
00006 # include <config.h>
00007 #endif
00008
00009 #include <sys/types.h>
00010 #include <sys/stat.h>
00011 #ifdef HAVE_UNISTD_H
00012 #include <unistd.h>
00013 #endif
00014 #include <string.h>
00015 #include <stdio.h>
00016
00017 #include <gdk/gdkkeysyms.h>
00018 #include <gtk/gtk.h>
00019
00020 #include "callbacks.h"
00021 #include "interface.h"
00022 #include "support.h"
00023
00024 #define GLADE_HOOKUP_OBJECT(component,widget,name) \
00025 g_object_set_data_full (G_OBJECT (component), name, \
00026 gtk_widget_ref (widget), (GDestroyNotify) gtk_widget_unref)
00027
00028 #define GLADE_HOOKUP_OBJECT_NO_REF(component,widget,name) \
00029 g_object_set_data (G_OBJECT (component), name, widget)
00030
00031 GtkWidget *create_MainWindow(void)
00032 {
00033 GtkWidget *MainWindow;
00034 GtkWidget *VBox;
00035 GtkWidget *Toolbar;
00036 gint tmp_toolbar_icon_size;
00037 GtkWidget *tmp_image;
00038 GtkWidget *BtnSysteme;
00039 GtkWidget *BtnAdherant;
00040 GtkWidget *BtnActivite;
00041 GtkWidget *BtnTresorerie;
00042 GtkWidget *SepTool1;
00043 GtkWidget *BtnAppliquer;
00044 GtkWidget *BtnAnnuler;
00045 GtkWidget *SepTool2;
00046 GtkWidget *BtnQuitter;
00047 GtkWidget *BtnAide;
00048 GtkWidget *ScrolListe;
00049 GtkWidget *Liste;
00050 GtkWidget *label5;
00051 GtkWidget *label6;
00052 GtkWidget *HbxGerer;
00053 GtkWidget *BtnAjouter;
00054 GtkWidget *ImgAjouter;
00055 GtkWidget *BtnSupprimer;
00056 GtkWidget *ImgSupprimer;
00057 GtkWidget *BtnModifier;
00058 GtkWidget *ImgModifier;
00059 GtkWidget *button2;
00060 GtkWidget *button1;
00061 GtkTooltips *tooltips;
00062
00063 tooltips = gtk_tooltips_new();
00064
00065 MainWindow = gtk_window_new(GTK_WINDOW_TOPLEVEL);
00066 gtk_widget_set_size_request(MainWindow, 600, 450);
00067 gtk_window_set_title(GTK_WINDOW(MainWindow), _("Gestion Asso"));
00068 gtk_window_set_position(GTK_WINDOW(MainWindow), GTK_WIN_POS_CENTER);
00069 gtk_window_set_resizable(GTK_WINDOW(MainWindow), FALSE);
00070 gtk_window_set_gravity(GTK_WINDOW(MainWindow), GDK_GRAVITY_CENTER);
00071
00072 VBox = gtk_vbox_new(FALSE, 0);
00073 gtk_widget_show(VBox);
00074 gtk_container_add(GTK_CONTAINER(MainWindow), VBox);
00075
00076 Toolbar = gtk_toolbar_new();
00077 gtk_widget_show(Toolbar);
00078 gtk_box_pack_start(GTK_BOX(VBox), Toolbar, FALSE, FALSE, 0);
00079 gtk_toolbar_set_style(GTK_TOOLBAR(Toolbar), GTK_TOOLBAR_BOTH);
00080 tmp_toolbar_icon_size = gtk_toolbar_get_icon_size(GTK_TOOLBAR(Toolbar));
00081
00082 tmp_image =
00083 gtk_image_new_from_stock("gtk-preferences", tmp_toolbar_icon_size);
00084 gtk_widget_show(tmp_image);
00085 BtnSysteme = (GtkWidget *) gtk_tool_button_new(tmp_image, _("Systeme"));
00086 gtk_widget_show(BtnSysteme);
00087 gtk_container_add(GTK_CONTAINER(Toolbar), BtnSysteme);
00088 gtk_tool_item_set_tooltip(GTK_TOOL_ITEM(BtnSysteme), tooltips,
00089 _("Gerer systeme"), NULL);
00090
00091 tmp_image = gtk_image_new_from_stock("gtk-home", tmp_toolbar_icon_size);
00092 gtk_widget_show(tmp_image);
00093 BtnAdherant = (GtkWidget *) gtk_tool_button_new(tmp_image, _("Adherant"));
00094 gtk_widget_show(BtnAdherant);
00095 gtk_container_add(GTK_CONTAINER(Toolbar), BtnAdherant);
00096 gtk_tool_item_set_tooltip(GTK_TOOL_ITEM(BtnAdherant), tooltips,
00097 _("Gerer adherants"), NULL);
00098
00099 tmp_image = gtk_image_new_from_stock("gtk-network", tmp_toolbar_icon_size);
00100 gtk_widget_show(tmp_image);
00101 BtnActivite = (GtkWidget *) gtk_tool_button_new(tmp_image, _("Activite"));
00102 gtk_widget_show(BtnActivite);
00103 gtk_container_add(GTK_CONTAINER(Toolbar), BtnActivite);
00104 gtk_tool_item_set_tooltip(GTK_TOOL_ITEM(BtnActivite), tooltips,
00105 _("Gerer Activites"), NULL);
00106
00107 tmp_image = gtk_image_new_from_stock("gtk-paste", tmp_toolbar_icon_size);
00108 gtk_widget_show(tmp_image);
00109 BtnTresorerie =
00110 (GtkWidget *) gtk_tool_button_new(tmp_image, _("Tresorerie"));
00111 gtk_widget_show(BtnTresorerie);
00112 gtk_container_add(GTK_CONTAINER(Toolbar), BtnTresorerie);
00113 gtk_tool_item_set_tooltip(GTK_TOOL_ITEM(BtnTresorerie), tooltips,
00114 _("Gerer tresoreries"), NULL);
00115
00116 SepTool1 = (GtkWidget *) gtk_separator_tool_item_new();
00117 gtk_widget_show(SepTool1);
00118 gtk_container_add(GTK_CONTAINER(Toolbar), SepTool1);
00119
00120 tmp_image = gtk_image_new_from_stock("gtk-apply", tmp_toolbar_icon_size);
00121 gtk_widget_show(tmp_image);
00122 BtnAppliquer = (GtkWidget *) gtk_tool_button_new(tmp_image, _("Appliquer"));
00123 gtk_widget_show(BtnAppliquer);
00124 gtk_container_add(GTK_CONTAINER(Toolbar), BtnAppliquer);
00125 gtk_tool_item_set_tooltip(GTK_TOOL_ITEM(BtnAppliquer), tooltips,
00126 _("Appliquer les opperations"), NULL);
00127
00128 tmp_image = gtk_image_new_from_stock("gtk-cancel", tmp_toolbar_icon_size);
00129 gtk_widget_show(tmp_image);
00130 BtnAnnuler = (GtkWidget *) gtk_tool_button_new(tmp_image, _("Annuler"));
00131 gtk_widget_show(BtnAnnuler);
00132 gtk_container_add(GTK_CONTAINER(Toolbar), BtnAnnuler);
00133 gtk_tool_item_set_tooltip(GTK_TOOL_ITEM(BtnAnnuler), tooltips,
00134 _("Annuler les opperations"), NULL);
00135
00136 SepTool2 = (GtkWidget *) gtk_separator_tool_item_new();
00137 gtk_widget_show(SepTool2);
00138 gtk_container_add(GTK_CONTAINER(Toolbar), SepTool2);
00139
00140 tmp_image = gtk_image_new_from_stock("gtk-quit", tmp_toolbar_icon_size);
00141 gtk_widget_show(tmp_image);
00142 BtnQuitter = (GtkWidget *) gtk_tool_button_new(tmp_image, _("Quitter"));
00143 gtk_widget_show(BtnQuitter);
00144 gtk_container_add(GTK_CONTAINER(Toolbar), BtnQuitter);
00145 gtk_tool_item_set_tooltip(GTK_TOOL_ITEM(BtnQuitter), tooltips,
00146 _("Quitter application"), NULL);
00147
00148 tmp_image = gtk_image_new_from_stock("gtk-help", tmp_toolbar_icon_size);
00149 gtk_widget_show(tmp_image);
00150 BtnAide = (GtkWidget *) gtk_tool_button_new(tmp_image, _("Aide"));
00151 gtk_widget_show(BtnAide);
00152 gtk_container_add(GTK_CONTAINER(Toolbar), BtnAide);
00153 gtk_tool_item_set_tooltip(GTK_TOOL_ITEM(BtnAide), tooltips,
00154 _("Afficher aide"), NULL);
00155
00156 ScrolListe = gtk_scrolled_window_new(NULL, NULL);
00157 gtk_widget_show(ScrolListe);
00158 gtk_box_pack_start(GTK_BOX(VBox), ScrolListe, TRUE, TRUE, 0);
00159 gtk_container_set_border_width(GTK_CONTAINER(ScrolListe), 2);
00160
00161 Liste = gtk_clist_new(2);
00162 gtk_widget_show(Liste);
00163 gtk_container_add(GTK_CONTAINER(ScrolListe), Liste);
00164 gtk_container_set_border_width(GTK_CONTAINER(Liste), 2);
00165 gtk_clist_set_column_width(GTK_CLIST(Liste), 0, 80);
00166 gtk_clist_set_column_width(GTK_CLIST(Liste), 1, 80);
00167 gtk_clist_column_titles_show(GTK_CLIST(Liste));
00168
00169 label5 = gtk_label_new(_("label5"));
00170 gtk_widget_show(label5);
00171 gtk_clist_set_column_widget(GTK_CLIST(Liste), 0, label5);
00172
00173 label6 = gtk_label_new(_("label6"));
00174 gtk_widget_show(label6);
00175 gtk_clist_set_column_widget(GTK_CLIST(Liste), 1, label6);
00176
00177 HbxGerer = gtk_hbox_new(FALSE, 0);
00178 gtk_widget_show(HbxGerer);
00179 gtk_box_pack_start(GTK_BOX(VBox), HbxGerer, FALSE, FALSE, 0);
00180
00181 BtnAjouter = gtk_button_new();
00182 gtk_widget_show(BtnAjouter);
00183 gtk_box_pack_start(GTK_BOX(HbxGerer), BtnAjouter, FALSE, FALSE, 0);
00184 GTK_WIDGET_SET_FLAGS(BtnAjouter, GTK_CAN_DEFAULT);
00185 gtk_tooltips_set_tip(tooltips, BtnAjouter, _("Ajouter"), NULL);
00186
00187 ImgAjouter = gtk_image_new_from_stock("gtk-add", GTK_ICON_SIZE_BUTTON);
00188 gtk_widget_show(ImgAjouter);
00189 gtk_container_add(GTK_CONTAINER(BtnAjouter), ImgAjouter);
00190 gtk_misc_set_alignment(GTK_MISC(ImgAjouter), 0, 0);
00191
00192 BtnSupprimer = gtk_button_new();
00193 gtk_widget_show(BtnSupprimer);
00194 gtk_box_pack_start(GTK_BOX(HbxGerer), BtnSupprimer, FALSE, FALSE, 0);
00195 GTK_WIDGET_SET_FLAGS(BtnSupprimer, GTK_CAN_DEFAULT);
00196 gtk_tooltips_set_tip(tooltips, BtnSupprimer, _("Supprimer"), NULL);
00197
00198 ImgSupprimer = gtk_image_new_from_stock("gtk-remove", GTK_ICON_SIZE_BUTTON);
00199 gtk_widget_show(ImgSupprimer);
00200 gtk_container_add(GTK_CONTAINER(BtnSupprimer), ImgSupprimer);
00201 gtk_misc_set_alignment(GTK_MISC(ImgSupprimer), 0, 0);
00202
00203 BtnModifier = gtk_button_new();
00204 gtk_widget_show(BtnModifier);
00205 gtk_box_pack_start(GTK_BOX(HbxGerer), BtnModifier, FALSE, FALSE, 0);
00206 GTK_WIDGET_SET_FLAGS(BtnModifier, GTK_CAN_DEFAULT);
00207 gtk_tooltips_set_tip(tooltips, BtnModifier, _("Editer/Modifier"), NULL);
00208
00209 ImgModifier = gtk_image_new_from_stock("gtk-redo", GTK_ICON_SIZE_BUTTON);
00210 gtk_widget_show(ImgModifier);
00211 gtk_container_add(GTK_CONTAINER(BtnModifier), ImgModifier);
00212 gtk_misc_set_alignment(GTK_MISC(ImgModifier), 0, 0);
00213
00214 button2 = gtk_button_new_with_mnemonic(_("button2"));
00215 gtk_widget_show(button2);
00216 gtk_box_pack_end(GTK_BOX(HbxGerer), button2, FALSE, FALSE, 0);
00217
00218 button1 = gtk_button_new_with_mnemonic(_("button1"));
00219 gtk_widget_show(button1);
00220 gtk_box_pack_end(GTK_BOX(HbxGerer), button1, FALSE, FALSE, 0);
00221
00222 g_signal_connect((gpointer) BtnSysteme, "clicked",
00223 G_CALLBACK(on_BtnSysteme_clicked), NULL);
00224 g_signal_connect((gpointer) BtnAdherant, "clicked",
00225 G_CALLBACK(on_BtnAdherant_clicked), NULL);
00226 g_signal_connect((gpointer) BtnActivite, "clicked",
00227 G_CALLBACK(on_BtnActivite_clicked), NULL);
00228 g_signal_connect((gpointer) BtnTresorerie, "clicked",
00229 G_CALLBACK(on_BtnTresorerie_clicked), NULL);
00230 g_signal_connect((gpointer) BtnAppliquer, "clicked",
00231 G_CALLBACK(on_BtnAppliquer_clicked), NULL);
00232 g_signal_connect((gpointer) BtnAnnuler, "clicked",
00233 G_CALLBACK(on_BtnAnnuler_clicked), NULL);
00234 g_signal_connect((gpointer) BtnQuitter, "clicked",
00235 G_CALLBACK(on_BtnQuitter_clicked), NULL);
00236 g_signal_connect((gpointer) BtnAide, "clicked",
00237 G_CALLBACK(on_BtnAide_clicked), NULL);
00238 g_signal_connect((gpointer) BtnAjouter, "clicked",
00239 G_CALLBACK(on_BtnAjouter_clicked), NULL);
00240 g_signal_connect((gpointer) BtnSupprimer, "clicked",
00241 G_CALLBACK(on_BtnSupprimer_clicked), NULL);
00242 g_signal_connect((gpointer) BtnModifier, "clicked",
00243 G_CALLBACK(on_BtnModifier_clicked), NULL);
00244 g_signal_connect((gpointer) button1, "clicked",
00245 G_CALLBACK(on_button1_clicked), NULL);
00246
00247
00248 GLADE_HOOKUP_OBJECT_NO_REF(MainWindow, MainWindow, "MainWindow");
00249 GLADE_HOOKUP_OBJECT(MainWindow, VBox, "VBox");
00250 GLADE_HOOKUP_OBJECT(MainWindow, Toolbar, "Toolbar");
00251 GLADE_HOOKUP_OBJECT(MainWindow, BtnSysteme, "BtnSysteme");
00252 GLADE_HOOKUP_OBJECT(MainWindow, BtnAdherant, "BtnAdherant");
00253 GLADE_HOOKUP_OBJECT(MainWindow, BtnActivite, "BtnActivite");
00254 GLADE_HOOKUP_OBJECT(MainWindow, BtnTresorerie, "BtnTresorerie");
00255 GLADE_HOOKUP_OBJECT(MainWindow, SepTool1, "SepTool1");
00256 GLADE_HOOKUP_OBJECT(MainWindow, BtnAppliquer, "BtnAppliquer");
00257 GLADE_HOOKUP_OBJECT(MainWindow, BtnAnnuler, "BtnAnnuler");
00258 GLADE_HOOKUP_OBJECT(MainWindow, SepTool2, "SepTool2");
00259 GLADE_HOOKUP_OBJECT(MainWindow, BtnQuitter, "BtnQuitter");
00260 GLADE_HOOKUP_OBJECT(MainWindow, BtnAide, "BtnAide");
00261 GLADE_HOOKUP_OBJECT(MainWindow, ScrolListe, "ScrolListe");
00262 GLADE_HOOKUP_OBJECT(MainWindow, Liste, "Liste");
00263 GLADE_HOOKUP_OBJECT(MainWindow, label5, "label5");
00264 GLADE_HOOKUP_OBJECT(MainWindow, label6, "label6");
00265 GLADE_HOOKUP_OBJECT(MainWindow, HbxGerer, "HbxGerer");
00266 GLADE_HOOKUP_OBJECT(MainWindow, BtnAjouter, "BtnAjouter");
00267 GLADE_HOOKUP_OBJECT(MainWindow, ImgAjouter, "ImgAjouter");
00268 GLADE_HOOKUP_OBJECT(MainWindow, BtnSupprimer, "BtnSupprimer");
00269 GLADE_HOOKUP_OBJECT(MainWindow, ImgSupprimer, "ImgSupprimer");
00270 GLADE_HOOKUP_OBJECT(MainWindow, BtnModifier, "BtnModifier");
00271 GLADE_HOOKUP_OBJECT(MainWindow, ImgModifier, "ImgModifier");
00272 GLADE_HOOKUP_OBJECT(MainWindow, button2, "button2");
00273 GLADE_HOOKUP_OBJECT(MainWindow, button1, "button1");
00274 GLADE_HOOKUP_OBJECT_NO_REF(MainWindow, tooltips, "tooltips");
00275
00276 return MainWindow;
00277 }