Annotation of sbbs/src/sbbs3/gtkchat/interface.c, revision 1.1.1.1

1.1       root        1: #include <sys/types.h>
                      2: #include <sys/stat.h>
                      3: #include <unistd.h>
                      4: #include <string.h>
                      5: #include <stdio.h>
                      6: 
                      7: #include <gdk/gdkkeysyms.h>
                      8: #include <gtk/gtk.h>
                      9: 
                     10: #include "callbacks.h"
                     11: #include "interface.h"
                     12: #include "support.h"
                     13: 
                     14: #define GLADE_HOOKUP_OBJECT(component,widget,name) \
                     15:   g_object_set_data_full (G_OBJECT (component), name, \
                     16:     gtk_widget_ref (widget), (GDestroyNotify) gtk_widget_unref)
                     17: 
                     18: #define GLADE_HOOKUP_OBJECT_NO_REF(component,widget,name) \
                     19:   g_object_set_data (G_OBJECT (component), name, widget)
                     20: 
                     21: GtkWidget *MessageLabel;
                     22: 
                     23: GtkWidget*
                     24: create_MainWindow (void)
                     25: {
                     26:   GtkWidget *MainWindow;
                     27:   GtkWidget *SplitPane;
                     28:   GtkWidget *RemoteText;
                     29:   GtkWidget *LocalText;
                     30:   GtkTooltips *tooltips;
                     31: 
                     32:   tooltips = gtk_tooltips_new ();
                     33: 
                     34:   MainWindow = gtk_window_new (GTK_WINDOW_TOPLEVEL);
                     35:   gtk_widget_set_size_request (MainWindow, 400, 300);
                     36:   gtk_window_set_title (GTK_WINDOW (MainWindow), "Synchronet Sysop Chat");
                     37:   gtk_window_set_icon_name (GTK_WINDOW (MainWindow), "stock_help-chat");
                     38:   gtk_window_set_type_hint (GTK_WINDOW (MainWindow), GDK_WINDOW_TYPE_HINT_UTILITY);
                     39: 
                     40:   SplitPane = gtk_vpaned_new ();
                     41:   gtk_widget_show (SplitPane);
                     42:   gtk_container_add (GTK_CONTAINER (MainWindow), SplitPane);
                     43:   gtk_paned_set_position (GTK_PANED (SplitPane), 148);
                     44: 
                     45:   RemoteText = gtk_text_view_new ();
                     46:   gtk_widget_show (RemoteText);
                     47:   gtk_paned_pack1 (GTK_PANED (SplitPane), RemoteText, FALSE, TRUE);
                     48:   GTK_WIDGET_UNSET_FLAGS (RemoteText, GTK_CAN_FOCUS);
                     49:   gtk_tooltips_set_tip (tooltips, RemoteText, "Remote Text Window", NULL);
                     50:   gtk_text_view_set_editable (GTK_TEXT_VIEW (RemoteText), FALSE);
                     51:   gtk_text_view_set_wrap_mode (GTK_TEXT_VIEW (RemoteText), GTK_WRAP_WORD);
                     52: 
                     53:   LocalText = gtk_text_view_new ();
                     54:   gtk_widget_show (LocalText);
                     55:   gtk_paned_pack2 (GTK_PANED (SplitPane), LocalText, TRUE, TRUE);
                     56:   gtk_text_view_set_wrap_mode (GTK_TEXT_VIEW (LocalText), GTK_WRAP_WORD);
                     57:   gtk_text_view_set_editable (GTK_TEXT_VIEW (LocalText), FALSE);
                     58: 
                     59:   g_signal_connect ((gpointer) MainWindow, "destroy",
                     60:                     G_CALLBACK (on_MainWindow_destroy),
                     61:                     NULL);
                     62:   g_signal_connect ((gpointer) LocalText, "key_press_event",
                     63:                     G_CALLBACK (on_LocalText_key_press_event),
                     64:                     NULL);
                     65: 
                     66:   /* Store pointers to all widgets, for use by lookup_widget(). */
                     67:   GLADE_HOOKUP_OBJECT_NO_REF (MainWindow, MainWindow, "MainWindow");
                     68:   GLADE_HOOKUP_OBJECT (MainWindow, SplitPane, "SplitPane");
                     69:   GLADE_HOOKUP_OBJECT (MainWindow, RemoteText, "RemoteText");
                     70:   GLADE_HOOKUP_OBJECT (MainWindow, LocalText, "LocalText");
                     71:   GLADE_HOOKUP_OBJECT_NO_REF (MainWindow, tooltips, "tooltips");
                     72: 
                     73:   gtk_widget_grab_focus (LocalText);
                     74: 
                     75:   gtk_timeout_add(50, get_from_remote, RemoteText);
                     76: 
                     77:   return MainWindow;
                     78: }
                     79: 
                     80: GtkWidget*
                     81: create_WaitWindow (void)
                     82: {
                     83:   GtkWidget *WaitWindow;
                     84:   GtkWidget *fixed1;
                     85:   GtkWidget *CancelButton;
                     86:   GtkWidget *alignment1;
                     87:   GtkWidget *hbox1;
                     88:   GtkWidget *image1;
                     89:   GtkWidget *label2;
                     90: 
                     91:   WaitWindow = gtk_window_new (GTK_WINDOW_TOPLEVEL);
                     92:   gtk_window_set_title (GTK_WINDOW (WaitWindow), "Waiting for user");
                     93: 
                     94:   fixed1 = gtk_fixed_new ();
                     95:   gtk_widget_show (fixed1);
                     96:   gtk_container_add (GTK_CONTAINER (WaitWindow), fixed1);
                     97:   gtk_widget_set_size_request (fixed1, 400, 40);
                     98: 
                     99:   MessageLabel = gtk_label_new ("Waiting for user to connect.");
                    100:   gtk_widget_show (MessageLabel);
                    101:   gtk_fixed_put (GTK_FIXED (fixed1), MessageLabel, 0, 0);
                    102:   gtk_widget_set_size_request (MessageLabel, 400, 16);
                    103: 
                    104:   CancelButton = gtk_button_new ();
                    105:   gtk_widget_show (CancelButton);
                    106:   gtk_fixed_put (GTK_FIXED (fixed1), CancelButton, 160, 16);
                    107:   gtk_widget_set_size_request (CancelButton, 88, 24);
                    108: 
                    109:   alignment1 = gtk_alignment_new (0.5, 0.5, 0, 0);
                    110:   gtk_widget_show (alignment1);
                    111:   gtk_container_add (GTK_CONTAINER (CancelButton), alignment1);
                    112: 
                    113:   hbox1 = gtk_hbox_new (FALSE, 2);
                    114:   gtk_widget_show (hbox1);
                    115:   gtk_container_add (GTK_CONTAINER (alignment1), hbox1);
                    116: 
                    117:   image1 = gtk_image_new_from_stock ("gtk-cancel", GTK_ICON_SIZE_BUTTON);
                    118:   gtk_widget_show (image1);
                    119:   gtk_box_pack_start (GTK_BOX (hbox1), image1, FALSE, FALSE, 0);
                    120: 
                    121:   label2 = gtk_label_new_with_mnemonic ("Cancel");
                    122:   gtk_widget_show (label2);
                    123:   gtk_box_pack_start (GTK_BOX (hbox1), label2, FALSE, FALSE, 0);
                    124: 
                    125:   g_signal_connect ((gpointer) CancelButton, "clicked",
                    126:                     G_CALLBACK (on_CancelButton_clicked),
                    127:                     NULL);
                    128: 
                    129:   /* Store pointers to all widgets, for use by lookup_widget(). */
                    130:   GLADE_HOOKUP_OBJECT_NO_REF (WaitWindow, WaitWindow, "WaitWindow");
                    131:   GLADE_HOOKUP_OBJECT (WaitWindow, fixed1, "fixed1");
                    132:   GLADE_HOOKUP_OBJECT (WaitWindow, MessageLabel, "MessageLabel");
                    133:   GLADE_HOOKUP_OBJECT (WaitWindow, CancelButton, "CancelButton");
                    134:   GLADE_HOOKUP_OBJECT (WaitWindow, alignment1, "alignment1");
                    135:   GLADE_HOOKUP_OBJECT (WaitWindow, hbox1, "hbox1");
                    136:   GLADE_HOOKUP_OBJECT (WaitWindow, image1, "image1");
                    137:   GLADE_HOOKUP_OBJECT (WaitWindow, label2, "label2");
                    138: 
                    139:   gtk_timeout_add(50, connect_wait, WaitWindow);
                    140:   return WaitWindow;
                    141: }
                    142: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.