summaryrefslogtreecommitdiffstats
path: root/chathans/src/interface.c
diff options
context:
space:
mode:
Diffstat (limited to 'chathans/src/interface.c')
-rw-r--r--chathans/src/interface.c308
1 files changed, 308 insertions, 0 deletions
diff --git a/chathans/src/interface.c b/chathans/src/interface.c
new file mode 100644
index 0000000..d7b969a
--- /dev/null
+++ b/chathans/src/interface.c
@@ -0,0 +1,308 @@
+/*Copyright (c) 2008, Rajeesh K Nambiar *
+ * *
+ * Chathans is a free software; you can redistribute it and/or modify it under the terms*
+ * of GNU General Public License as published by the Free Software Foundation, either *
+ * version 3 of the License, or (at your option) any later version. *
+ * *
+ * Chathans is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;*
+ * without even implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.*
+ * See the GNU General Public License for more details. *
+ */
+
+/*
+ * DO NOT EDIT THIS FILE - it is generated by Glade.
+ */
+
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <unistd.h>
+#include <string.h>
+#include <stdio.h>
+
+#include <gdk/gdkkeysyms.h>
+#include <gtk/gtk.h>
+
+#include "callbacks.h"
+#include "interface.h"
+#include "support.h"
+
+#define GLADE_HOOKUP_OBJECT(component,widget,name) \
+ g_object_set_data_full (G_OBJECT (component), name, \
+ gtk_widget_ref (widget), (GDestroyNotify) gtk_widget_unref)
+
+#define GLADE_HOOKUP_OBJECT_NO_REF(component,widget,name) \
+ g_object_set_data (G_OBJECT (component), name, widget)
+
+GtkWidget*
+create_MainWindow (void)
+{
+ GtkWidget *MainWindow;
+ GdkPixbuf *MainWindow_icon_pixbuf;
+ GtkWidget *FrameTable;
+ GtkWidget *MainButtonBox;
+ GtkWidget *ConvertButton;
+ GtkWidget *alignment2;
+ GtkWidget *hbox2;
+ GtkWidget *image2;
+ GtkWidget *label6;
+ GtkWidget *CancelButton;
+ GtkWidget *alignment1;
+ GtkWidget *hbox1;
+ GtkWidget *image1;
+ GtkWidget *label5;
+ GtkWidget *MainMenuBar;
+ GtkWidget *Menu_File;
+ GtkWidget *Menu_File_menu;
+ GtkWidget *Menu_New;
+ GtkWidget *separatormenuitem1;
+ GtkWidget *Menu_Quit;
+ GtkWidget *Menu_Help;
+ GtkWidget *Menu_Help_menu;
+ GtkWidget *Menu_Contents;
+ GtkWidget *image3;
+ GtkWidget *Menu_About;
+ GtkWidget *UnicodeLabel;
+ GtkWidget *UnicodeFileButton;
+ GtkWidget *MappingLabel;
+ GtkWidget *MappingFileButton;
+ GtkWidget *AsciiLabel;
+ GtkWidget *AsciiFileButton;
+ GtkWidget *StatusBar;
+ GtkAccelGroup *accel_group;
+ GtkTooltips *tooltips;
+
+ tooltips = gtk_tooltips_new ();
+
+ accel_group = gtk_accel_group_new ();
+
+ MainWindow = gtk_window_new (GTK_WINDOW_TOPLEVEL);
+ gtk_window_set_title (GTK_WINDOW (MainWindow), _("Chathans"));
+ gtk_window_set_position (GTK_WINDOW (MainWindow), GTK_WIN_POS_CENTER);
+ gtk_window_set_modal (GTK_WINDOW (MainWindow), TRUE);
+ MainWindow_icon_pixbuf = create_pixbuf ("user_icon.png");
+ if (MainWindow_icon_pixbuf)
+ {
+ gtk_window_set_icon (GTK_WINDOW (MainWindow), MainWindow_icon_pixbuf);
+ gdk_pixbuf_unref (MainWindow_icon_pixbuf);
+ }
+
+ FrameTable = gtk_table_new (7, 2, FALSE);
+ gtk_widget_show (FrameTable);
+ gtk_container_add (GTK_CONTAINER (MainWindow), FrameTable);
+ gtk_container_set_border_width (GTK_CONTAINER (FrameTable), 1);
+ gtk_table_set_row_spacings (GTK_TABLE (FrameTable), 1);
+ gtk_table_set_col_spacings (GTK_TABLE (FrameTable), 6);
+
+ MainButtonBox = gtk_hbutton_box_new ();
+ gtk_widget_show (MainButtonBox);
+ gtk_table_attach (GTK_TABLE (FrameTable), MainButtonBox, 1, 2, 5, 6,
+ (GtkAttachOptions) (GTK_FILL),
+ (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), 0, 0);
+ gtk_container_set_border_width (GTK_CONTAINER (MainButtonBox), 6);
+ gtk_button_box_set_layout (GTK_BUTTON_BOX (MainButtonBox), GTK_BUTTONBOX_SPREAD);
+
+ ConvertButton = gtk_button_new ();
+ gtk_widget_show (ConvertButton);
+ gtk_container_add (GTK_CONTAINER (MainButtonBox), ConvertButton);
+ gtk_container_set_border_width (GTK_CONTAINER (ConvertButton), 1);
+ GTK_WIDGET_SET_FLAGS (ConvertButton, GTK_CAN_DEFAULT);
+
+ alignment2 = gtk_alignment_new (0.5, 0.5, 0, 0);
+ gtk_widget_show (alignment2);
+ gtk_container_add (GTK_CONTAINER (ConvertButton), alignment2);
+
+ hbox2 = gtk_hbox_new (FALSE, 2);
+ gtk_widget_show (hbox2);
+ gtk_container_add (GTK_CONTAINER (alignment2), hbox2);
+
+ image2 = gtk_image_new_from_stock ("gtk-convert", GTK_ICON_SIZE_BUTTON);
+ gtk_widget_show (image2);
+ gtk_box_pack_start (GTK_BOX (hbox2), image2, FALSE, FALSE, 0);
+
+ label6 = gtk_label_new_with_mnemonic (_("Convert"));
+ gtk_widget_show (label6);
+ gtk_box_pack_start (GTK_BOX (hbox2), label6, FALSE, FALSE, 0);
+
+ CancelButton = gtk_button_new ();
+ gtk_widget_show (CancelButton);
+ gtk_container_add (GTK_CONTAINER (MainButtonBox), CancelButton);
+ gtk_container_set_border_width (GTK_CONTAINER (CancelButton), 1);
+ GTK_WIDGET_SET_FLAGS (CancelButton, GTK_CAN_DEFAULT);
+
+ alignment1 = gtk_alignment_new (0.5, 0.5, 0, 0);
+ gtk_widget_show (alignment1);
+ gtk_container_add (GTK_CONTAINER (CancelButton), alignment1);
+
+ hbox1 = gtk_hbox_new (FALSE, 2);
+ gtk_widget_show (hbox1);
+ gtk_container_add (GTK_CONTAINER (alignment1), hbox1);
+
+ image1 = gtk_image_new_from_stock ("gtk-cancel", GTK_ICON_SIZE_BUTTON);
+ gtk_widget_show (image1);
+ gtk_box_pack_start (GTK_BOX (hbox1), image1, FALSE, FALSE, 0);
+
+ label5 = gtk_label_new_with_mnemonic (_("Cancel"));
+ gtk_widget_show (label5);
+ gtk_box_pack_start (GTK_BOX (hbox1), label5, FALSE, FALSE, 0);
+
+ MainMenuBar = gtk_menu_bar_new ();
+ gtk_widget_show (MainMenuBar);
+ gtk_table_attach (GTK_TABLE (FrameTable), MainMenuBar, 0, 2, 0, 1,
+ (GtkAttachOptions) (GTK_FILL),
+ (GtkAttachOptions) (0), 0, 0);
+
+ Menu_File = gtk_menu_item_new_with_mnemonic (_("_File"));
+ gtk_widget_show (Menu_File);
+ gtk_container_add (GTK_CONTAINER (MainMenuBar), Menu_File);
+
+ Menu_File_menu = gtk_menu_new ();
+ gtk_menu_item_set_submenu (GTK_MENU_ITEM (Menu_File), Menu_File_menu);
+
+ Menu_New = gtk_image_menu_item_new_from_stock ("gtk-new", accel_group);
+ gtk_widget_show (Menu_New);
+ gtk_container_add (GTK_CONTAINER (Menu_File_menu), Menu_New);
+
+ separatormenuitem1 = gtk_separator_menu_item_new ();
+ gtk_widget_show (separatormenuitem1);
+ gtk_container_add (GTK_CONTAINER (Menu_File_menu), separatormenuitem1);
+ gtk_widget_set_sensitive (separatormenuitem1, FALSE);
+
+ Menu_Quit = gtk_image_menu_item_new_from_stock ("gtk-quit", accel_group);
+ gtk_widget_show (Menu_Quit);
+ gtk_container_add (GTK_CONTAINER (Menu_File_menu), Menu_Quit);
+
+ Menu_Help = gtk_menu_item_new_with_mnemonic (_("_Help"));
+ gtk_widget_show (Menu_Help);
+ gtk_container_add (GTK_CONTAINER (MainMenuBar), Menu_Help);
+
+ Menu_Help_menu = gtk_menu_new ();
+ gtk_menu_item_set_submenu (GTK_MENU_ITEM (Menu_Help), Menu_Help_menu);
+
+ Menu_Contents = gtk_image_menu_item_new_with_mnemonic (_("_Contents"));
+ gtk_widget_show (Menu_Contents);
+ gtk_container_add (GTK_CONTAINER (Menu_Help_menu), Menu_Contents);
+ gtk_tooltips_set_tip (tooltips, Menu_Contents, _("Explains how to use Payyans"), NULL);
+
+ image3 = gtk_image_new_from_stock ("gtk-help", GTK_ICON_SIZE_MENU);
+ gtk_widget_show (image3);
+ gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (Menu_Contents), image3);
+
+ Menu_About = gtk_image_menu_item_new_from_stock ("gtk-about", accel_group);
+ gtk_widget_show (Menu_About);
+ gtk_container_add (GTK_CONTAINER (Menu_Help_menu), Menu_About);
+
+ UnicodeLabel = gtk_label_new (_("Unicode File"));
+ gtk_widget_show (UnicodeLabel);
+ gtk_table_attach (GTK_TABLE (FrameTable), UnicodeLabel, 0, 1, 4, 5,
+ (GtkAttachOptions) (GTK_FILL),
+ (GtkAttachOptions) (0), 0, 0);
+ gtk_misc_set_alignment (GTK_MISC (UnicodeLabel), 0, 0.5);
+
+ UnicodeFileButton = gtk_file_chooser_button_new (_("Select Output Unicode File"), GTK_FILE_CHOOSER_ACTION_OPEN);
+ gtk_widget_show (UnicodeFileButton);
+ gtk_table_attach (GTK_TABLE (FrameTable), UnicodeFileButton, 1, 2, 4, 5,
+ (GtkAttachOptions) (GTK_FILL),
+ (GtkAttachOptions) (GTK_FILL), 0, 0);
+ gtk_container_set_border_width (GTK_CONTAINER (UnicodeFileButton), 1);
+
+ MappingLabel = gtk_label_new (_("Mapping File"));
+ gtk_widget_show (MappingLabel);
+ gtk_table_attach (GTK_TABLE (FrameTable), MappingLabel, 0, 1, 3, 4,
+ (GtkAttachOptions) (GTK_FILL),
+ (GtkAttachOptions) (0), 0, 0);
+ gtk_misc_set_alignment (GTK_MISC (MappingLabel), 0, 0.5);
+
+ MappingFileButton = gtk_file_chooser_button_new (_("Select the ASCII-Unicode Mapping File"), GTK_FILE_CHOOSER_ACTION_OPEN);
+ gtk_widget_show (MappingFileButton);
+ gtk_table_attach (GTK_TABLE (FrameTable), MappingFileButton, 1, 2, 3, 4,
+ (GtkAttachOptions) (GTK_FILL),
+ (GtkAttachOptions) (GTK_FILL), 0, 0);
+ gtk_container_set_border_width (GTK_CONTAINER (MappingFileButton), 1);
+
+ AsciiLabel = gtk_label_new (_("ASCII File"));
+ gtk_widget_show (AsciiLabel);
+ gtk_table_attach (GTK_TABLE (FrameTable), AsciiLabel, 0, 1, 2, 3,
+ (GtkAttachOptions) (GTK_FILL),
+ (GtkAttachOptions) (0), 0, 0);
+ gtk_misc_set_alignment (GTK_MISC (AsciiLabel), 0, 0.5);
+ gtk_label_set_single_line_mode (GTK_LABEL (AsciiLabel), TRUE);
+
+ AsciiFileButton = gtk_file_chooser_button_new (_("Select the ASCII File (.txt,.pdf)"), GTK_FILE_CHOOSER_ACTION_OPEN);
+ gtk_widget_show (AsciiFileButton);
+ gtk_table_attach (GTK_TABLE (FrameTable), AsciiFileButton, 1, 2, 2, 3,
+ (GtkAttachOptions) (GTK_FILL),
+ (GtkAttachOptions) (GTK_FILL), 0, 0);
+ gtk_container_set_border_width (GTK_CONTAINER (AsciiFileButton), 1);
+
+ StatusBar = gtk_statusbar_new ();
+ gtk_widget_show (StatusBar);
+ gtk_table_attach (GTK_TABLE (FrameTable), StatusBar, 0, 2, 6, 7,
+ (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
+ (GtkAttachOptions) (0), 0, 0);
+ gtk_container_set_border_width (GTK_CONTAINER (StatusBar), 1);
+
+ g_signal_connect ((gpointer) MainWindow, "destroy",
+ G_CALLBACK (gtk_main_quit),
+ NULL);
+ g_signal_connect ((gpointer) ConvertButton, "clicked",
+ G_CALLBACK (convert_asccii_to_unicode),
+ NULL);
+ g_signal_connect ((gpointer) CancelButton, "clicked",
+ G_CALLBACK (gtk_main_quit),
+ NULL);
+ g_signal_connect ((gpointer) Menu_New, "activate",
+ G_CALLBACK (start_new_project),
+ NULL);
+ g_signal_connect ((gpointer) Menu_Quit, "activate",
+ G_CALLBACK (gtk_main_quit),
+ NULL);
+ g_signal_connect ((gpointer) Menu_Contents, "activate",
+ G_CALLBACK (display_help_topics),
+ NULL);
+ g_signal_connect ((gpointer) Menu_About, "activate",
+ G_CALLBACK (display_about),
+ NULL);
+
+ /* Store pointers to all widgets, for use by lookup_widget(). */
+ GLADE_HOOKUP_OBJECT_NO_REF (MainWindow, MainWindow, "MainWindow");
+ GLADE_HOOKUP_OBJECT (MainWindow, FrameTable, "FrameTable");
+ GLADE_HOOKUP_OBJECT (MainWindow, MainButtonBox, "MainButtonBox");
+ GLADE_HOOKUP_OBJECT (MainWindow, ConvertButton, "ConvertButton");
+ GLADE_HOOKUP_OBJECT (MainWindow, alignment2, "alignment2");
+ GLADE_HOOKUP_OBJECT (MainWindow, hbox2, "hbox2");
+ GLADE_HOOKUP_OBJECT (MainWindow, image2, "image2");
+ GLADE_HOOKUP_OBJECT (MainWindow, label6, "label6");
+ GLADE_HOOKUP_OBJECT (MainWindow, CancelButton, "CancelButton");
+ GLADE_HOOKUP_OBJECT (MainWindow, alignment1, "alignment1");
+ GLADE_HOOKUP_OBJECT (MainWindow, hbox1, "hbox1");
+ GLADE_HOOKUP_OBJECT (MainWindow, image1, "image1");
+ GLADE_HOOKUP_OBJECT (MainWindow, label5, "label5");
+ GLADE_HOOKUP_OBJECT (MainWindow, MainMenuBar, "MainMenuBar");
+ GLADE_HOOKUP_OBJECT (MainWindow, Menu_File, "Menu_File");
+ GLADE_HOOKUP_OBJECT (MainWindow, Menu_File_menu, "Menu_File_menu");
+ GLADE_HOOKUP_OBJECT (MainWindow, Menu_New, "Menu_New");
+ GLADE_HOOKUP_OBJECT (MainWindow, separatormenuitem1, "separatormenuitem1");
+ GLADE_HOOKUP_OBJECT (MainWindow, Menu_Quit, "Menu_Quit");
+ GLADE_HOOKUP_OBJECT (MainWindow, Menu_Help, "Menu_Help");
+ GLADE_HOOKUP_OBJECT (MainWindow, Menu_Help_menu, "Menu_Help_menu");
+ GLADE_HOOKUP_OBJECT (MainWindow, Menu_Contents, "Menu_Contents");
+ GLADE_HOOKUP_OBJECT (MainWindow, image3, "image3");
+ GLADE_HOOKUP_OBJECT (MainWindow, Menu_About, "Menu_About");
+ GLADE_HOOKUP_OBJECT (MainWindow, UnicodeLabel, "UnicodeLabel");
+ GLADE_HOOKUP_OBJECT (MainWindow, UnicodeFileButton, "UnicodeFileButton");
+ GLADE_HOOKUP_OBJECT (MainWindow, MappingLabel, "MappingLabel");
+ GLADE_HOOKUP_OBJECT (MainWindow, MappingFileButton, "MappingFileButton");
+ GLADE_HOOKUP_OBJECT (MainWindow, AsciiLabel, "AsciiLabel");
+ GLADE_HOOKUP_OBJECT (MainWindow, AsciiFileButton, "AsciiFileButton");
+ GLADE_HOOKUP_OBJECT (MainWindow, StatusBar, "StatusBar");
+ GLADE_HOOKUP_OBJECT_NO_REF (MainWindow, tooltips, "tooltips");
+
+ gtk_window_add_accel_group (GTK_WINDOW (MainWindow), accel_group);
+
+ return MainWindow;
+}
+