rendered paste body#include <stdlib.h>
#include <gtk/gtk.h>
#include "conf.h"
#include "log.h"
#include "main.h"
#include "globales.h"
#include <string.h>
void write_msg(GtkWidget *pEntry, gpointer data);
struct session s1, s2;
void function_quit(GtkWidget *widget, gpointer data)
{
gtk_main_quit ();
}
void function_log(GtkWidget *widget, gpointer data)
{
dir_conf ((GtkWidget *)widget, (gpointer) data);
log_conf ((GtkWidget *)widget, (gpointer) data);
}
int init_gtk () {
GtkWidget* MainWindow;
GtkWidget *vbox1;
GtkWidget *hbox1;
GtkWidget *toolbar1;
GtkWidget *label1;
GtkWidget *eButton;
GtkWidget *menubar1;
GtkWidget *menu1;
GtkWidget *menuitem;
GtkWidget *frame1;
GtkWidget *VBoxFrame;
GtkWidget *pScrolled;
MainWindow = gtk_window_new (GTK_WINDOW_TOPLEVEL);
vbox1 =gtk_vbox_new (FALSE, 0);
hbox1 = gtk_hbox_new (FALSE, 0);
toolbar1 = gtk_toolbar_new ();
label1 = gtk_label_new ("#Channel");
eButton = gtk_button_new_with_label ("Valid");
entry1 = gtk_entry_new ();
textview1 = gtk_text_view_new ();
menubar1 = gtk_menu_bar_new();
menu1 = gtk_menu_new();
frame1 = gtk_frame_new("Messages");
VBoxFrame = gtk_vbox_new(FALSE, 0);
pScrolled = gtk_scrolled_window_new(NULL, NULL);
g_signal_connect (G_OBJECT (MainWindow), "show", G_CALLBACK ( function_log ), (gpointer) textview1);
g_signal_connect (G_OBJECT (MainWindow), "show", G_CALLBACK ( start_session_log ), (gpointer) textview1);
menuitem = gtk_menu_item_new_with_label("Connect");
gtk_menu_shell_append(GTK_MENU_SHELL(menu1), menuitem);
//g_signal_connect (G_OBJECT (menuitem), "activate", G_CALLBACK ( func_connect ), (gpointer) textview1);
menuitem = gtk_menu_item_new_with_label("Change server");
gtk_menu_shell_append(GTK_MENU_SHELL(menu1), menuitem);
menuitem = gtk_menu_item_new_with_label("View log");
gtk_menu_shell_append(GTK_MENU_SHELL(menu1), menuitem);
g_signal_connect (G_OBJECT (menuitem), "activate", G_CALLBACK ( show_log ), (gpointer) textview1);
menuitem = gtk_menu_item_new_with_label("Clean log");
gtk_menu_shell_append(GTK_MENU_SHELL(menu1), menuitem);
menuitem = gtk_menu_item_new_with_label("Quit");
gtk_menu_shell_append(GTK_MENU_SHELL(menu1), menuitem);
g_signal_connect (G_OBJECT (menuitem), "activate", G_CALLBACK ( function_quit ), (GtkWidget*) MainWindow);
menuitem = gtk_menu_item_new_with_label("Irchat");
gtk_menu_item_set_submenu(GTK_MENU_ITEM(menuitem), menu1);
gtk_menu_shell_append(GTK_MENU_SHELL(menubar1), menuitem);
menu1 = gtk_menu_new();
menuitem = gtk_menu_item_new_with_label("About...");
gtk_menu_shell_append(GTK_MENU_SHELL(menu1), menuitem);
menuitem = gtk_menu_item_new_with_label("About");
gtk_menu_item_set_submenu(GTK_MENU_ITEM(menuitem), menu1);
gtk_menu_shell_append(GTK_MENU_SHELL(menubar1), menuitem);
gtk_container_add (GTK_CONTAINER (MainWindow), vbox1);
gtk_container_add (GTK_CONTAINER (frame1), VBoxFrame);
gtk_container_set_border_width(GTK_CONTAINER(frame1), 5);
gtk_container_set_border_width(GTK_CONTAINER(VBoxFrame), 5);
gtk_box_pack_start (GTK_BOX (vbox1), menubar1, FALSE, FALSE, 0);
gtk_box_pack_start (GTK_BOX (vbox1), toolbar1, FALSE, TRUE, 0);
gtk_box_pack_start (GTK_BOX (vbox1), frame1, TRUE, TRUE, 0);
gtk_box_pack_start(GTK_BOX(VBoxFrame), pScrolled, TRUE, TRUE, 5);
gtk_container_add(GTK_CONTAINER(pScrolled), textview1);
gtk_box_pack_start (GTK_BOX (vbox1), hbox1, FALSE, TRUE, 0);
gtk_box_pack_start (GTK_BOX (hbox1), label1, FALSE, FALSE, 5);
gtk_box_pack_start (GTK_BOX (hbox1), entry1, TRUE, TRUE, 5);
gtk_box_pack_start (GTK_BOX (hbox1), eButton, FALSE, FALSE, 5);
gtk_text_view_set_editable(GTK_TEXT_VIEW(textview1), FALSE);
gtk_entry_set_max_length(GTK_ENTRY(entry1), 510);
gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(pScrolled), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
gtk_toolbar_insert_stock (GTK_TOOLBAR (toolbar1),
GTK_STOCK_NEW,
"New",
NULL,
NULL,
NULL,
-1);
gtk_toolbar_insert_stock (GTK_TOOLBAR (toolbar1),
GTK_STOCK_OPEN,
"Open",
NULL,
NULL,
NULL,
-1);
gtk_toolbar_insert_stock (GTK_TOOLBAR (toolbar1),
GTK_STOCK_SAVE,
"Save",
NULL,
NULL,
NULL,
-1);
gtk_toolbar_insert_stock (GTK_TOOLBAR (toolbar1),
GTK_STOCK_QUIT,
"Quit",
NULL,
G_CALLBACK (gtk_main_quit),
NULL,
-1);
gtk_toolbar_set_style (GTK_TOOLBAR (toolbar1),
GTK_TOOLBAR_ICONS);
g_signal_connect(G_OBJECT(entry1), "activate", G_CALLBACK(write_msg), (GtkWidget*) textview1);
g_signal_connect(G_OBJECT(eButton), "clicked", G_CALLBACK(write_msg), (GtkWidget*) textview1);
g_signal_connect (G_OBJECT (MainWindow), "delete-event", G_CALLBACK ( function_quit ), NULL);
gtk_window_set_title (GTK_WINDOW (MainWindow), "Fenetre irchat");
gtk_window_set_default_size (GTK_WINDOW (MainWindow), 800, 600);
gtk_window_set_position (GTK_WINDOW (MainWindow), GTK_WIN_POS_CENTER);
gtk_widget_show_all (MainWindow);
gtk_main ();
gtk_exit (EXIT_SUCCESS);
return EXIT_SUCCESS;
}