📄 windows.c
字号:
#ifdef HAVE_CONFIG_H# include <config.h>#endif#include <sys/types.h>#include <sys/stat.h>#include <unistd.h>#include <string.h>#include <gdk/gdkkeysyms.h>#include <gtk/gtk.h>#include "zmodem.h"#include "callbacks.h"#include "windows.h"#include "winutils.h"#include "support.h"#include "gcomm.h"#include "term.h" GtkWidget *mainwindow; GtkWidget *quitConfirm; GtkWidget *mainPanel; GtkWidget *menubar; guint tmp_key; GtkWidget *file; GtkWidget *file_menu; GtkAccelGroup *file_menu_accels; GtkWidget *help5; GtkWidget *help5_menu; GtkAccelGroup *help5_menu_accels; GtkWidget *topPanel; GtkWidget *connTypeFm; GtkWidget *vbox2; GSList *vbox2_group = NULL; GtkWidget *connSerial; guint connPipe_key; GtkWidget *connPipe; guint connNet_key; GtkWidget *connNet; GtkWidget *connFm; GtkWidget *vbox3; guint connectBut_key; GtkWidget *connectBut; guint disconnectBut_key; GtkWidget *disconnectBut; GtkWidget *timeLabel; GtkWidget *vbox4; GtkWidget *hbox2; guint clearBut_key; GtkWidget *clearBut; guint breakBut_key; GtkWidget *breakBut; GtkWidget *hbox3; guint echoBut_key; GtkWidget *echoBut; guint transferBut_key; GtkWidget *transferBut; GtkWidget *statusbar; GtkWidget *serialFm; GtkWidget *serialBox; GtkWidget *hbox4; GtkWidget *lineLbl; GtkWidget *lineTxt = NULL; GtkWidget *alignment2; GtkWidget *baudmenu; GtkWidget *baudmenu_menu; GtkWidget *protocolFrame; GtkWidget *hbox5; GSList *hbox5_group = NULL; GtkWidget *p8n1But; GtkWidget *p7e1But; GtkWidget *p7o1But; GtkWidget *hbox6; GtkWidget *phoneLbl; GtkWidget *phoneNoEnt; GtkWidget *moreBut; guint moreBut_key; GtkWidget *alignment4; GtkWidget *frame3; GtkWidget *hbox7; GtkWidget *leLbl; GtkWidget *dtrLbl; GtkWidget *rtsLbl; GtkWidget *ctsLbl; GtkWidget *cdLbl; GtkWidget *rngLbl; GtkWidget *dsrLbl; GtkWidget *hfLbl; GtkWidget *serialMoreBox; GtkWidget *byteFrame; GtkWidget *vbox7; GSList *vbox7_group = NULL; GtkWidget *bit5But; GtkWidget *bit7But; GtkWidget *bit8But; GtkWidget *parityFm; GtkWidget *vbox8; GSList *vbox8_group = NULL; GtkWidget *noneBut; GtkWidget *evenBut; GtkWidget *oddBut; GtkWidget *zeroBut; GtkWidget *oneBut; GtkWidget *vbox6; GtkWidget *stopbitsFm; GtkWidget *vbox9; GSList *vbox9_group = NULL; GtkWidget *stop1But; GtkWidget *stop2But; guint stripBut_key; GtkWidget *stripBut; GtkWidget *flowFm; GtkWidget *vbox10; GSList *vbox10_group = NULL; GtkWidget *flowNoneBut; GtkWidget *flowXonBut; GtkWidget *flowRtsBut; GtkWidget *attnFm; GtkWidget *vbox11; GtkWidget *hbox16; GSList *attnGroup_group = NULL; GtkWidget *attnEscBut; GtkWidget *alignment3; GtkWidget *escChar; GtkWidget *attnBreakBut; GtkWidget *attnDtrBut; GtkWidget *pipeFm; GtkWidget *vbox17; GtkWidget *programEnt; GtkWidget *netFm; GtkWidget *netBox; GtkWidget *hotidLbl; GtkWidget *hostEnt; GtkWidget *portNo; GtkWidget *portLbl; GtkWidget *xferFm; GtkWidget *vbox13; GtkWidget *hbox9; GtkWidget *protocolFm; GtkWidget *vbox14; GSList *vbox14_group = NULL; guint xmodemBut_key; GtkWidget *xmodemBut; guint ymodemBut_key; GtkWidget *ymodemBut; guint zmodemBut_key; GtkWidget *zmodemBut; GtkWidget *xferFm2; GtkWidget *vbox16; GtkWidget *hbox12; guint receiveBut_key; GtkWidget *receiveBut; guint sendBut_key; GtkWidget *sendBut; guint cancelBut_key; GtkWidget *cancelBut; guint serverBut_key; GtkWidget *serverBut; guint cdBut_key; GtkWidget *cdBut; GtkWidget *hbox13; GtkWidget *fileLbl; GtkWidget *fileEntry; GtkWidget *hbox14; GtkWidget *progressbar; GtkWidget *progressLbl; GtkWidget *zmodemFm; GtkWidget *vbox15; GtkWidget *hbox10; GtkWidget *xferModeLbl; GtkWidget *optionmenu1; GtkWidget *optionmenu1_menu; guint replaceBut_key; GtkWidget *replaceBut; guint asciiBut_key; GtkWidget *asciiBut; guint resumeBut_key; GtkWidget *resumeBut; GtkWidget *hbox11; GtkWidget *pktSizeLbl; GtkWidget *optionmenu2; GtkWidget *optionmenu2_menu; GtkWidget *winSizeLbl; GtkWidget *optionmenu3; GtkWidget *optionmenu3_menu; GtkAccelGroup *accel_group; GtkTooltips *tooltips; GtkStyle *lightOffStyle ; GtkStyle *lightOnStyle ;static void createBaudItem( GtkWidget *menu, int baud ) ;static GtkWidget *addMenuItem(gchar *lbl, void (*)(), gpointer, GtkWidget *menu) ;GtkWidget*create_mainwindow (void){ GdkColor color ; GdkColormap *cmap ; int i ; GtkWidget *menuitem; tooltips = gtk_tooltips_new (); accel_group = gtk_accel_group_new (); mainwindow = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_window_set_title (GTK_WINDOW (mainwindow), _("gcomm")); gtk_window_set_policy (GTK_WINDOW (mainwindow), FALSE, FALSE, TRUE); mainPanel = gtk_vbox_new (FALSE, 0); gtk_widget_show (mainPanel); gtk_container_add (GTK_CONTAINER (mainwindow), mainPanel); menubar = gtk_menu_bar_new (); gtk_widget_show (menubar); gtk_box_pack_start (GTK_BOX (mainPanel), menubar, FALSE, FALSE, 0); file = gtk_menu_item_new_with_label (""); tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (file)->child), _("_File")); gtk_widget_add_accelerator (file, "activate_item", accel_group, tmp_key, GDK_MOD1_MASK, 0); gtk_widget_show (file); gtk_container_add (GTK_CONTAINER (menubar), file); file_menu = gtk_menu_new (); gtk_menu_item_set_submenu (GTK_MENU_ITEM (file), file_menu); file_menu_accels = gtk_menu_ensure_uline_accel_group (GTK_MENU (file_menu)); menuitem = addMenuItem("_Quit", on_quit, NULL, file_menu) ; topPanel = gtk_hbox_new (FALSE, 2); gtk_widget_show (topPanel); gtk_box_pack_start (GTK_BOX (mainPanel), topPanel, TRUE, TRUE, 0); gtk_container_set_border_width (GTK_CONTAINER (topPanel), 2); connTypeFm = gtk_frame_new (_("Connection Type:")); gtk_widget_show (connTypeFm); gtk_box_pack_start (GTK_BOX (topPanel), connTypeFm, FALSE, FALSE, 0); vbox2 = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox2); gtk_container_add (GTK_CONTAINER (connTypeFm), vbox2); connSerial = gtk_radio_button_new_with_label (vbox2_group, _("serial")); vbox2_group = gtk_radio_button_group (GTK_RADIO_BUTTON (connSerial)); gtk_widget_show (connSerial); gtk_box_pack_start (GTK_BOX (vbox2), connSerial, FALSE, FALSE, 0); gtk_tooltips_set_tip (tooltips, connSerial, _("Serial port"), NULL); connPipe = gtk_radio_button_new_with_label (vbox2_group, _("pipe")); vbox2_group = gtk_radio_button_group (GTK_RADIO_BUTTON (connPipe)); gtk_widget_show (connPipe); gtk_box_pack_start (GTK_BOX (vbox2), connPipe, FALSE, FALSE, 0); gtk_tooltips_set_tip (tooltips, connPipe, _("Pipe through a program"),NULL); connNet = gtk_radio_button_new_with_label (vbox2_group, _("net")); vbox2_group = gtk_radio_button_group (GTK_RADIO_BUTTON (connNet)); gtk_widget_show (connNet); gtk_box_pack_start (GTK_BOX (vbox2), connNet, FALSE, FALSE, 0); gtk_tooltips_set_tip (tooltips, connNet, _("Network connection"), NULL); connFm = gtk_frame_new (_("Connection:")); gtk_widget_show (connFm); gtk_box_pack_start (GTK_BOX (topPanel), connFm, FALSE, FALSE, 0); vbox3 = gtk_vbox_new (FALSE, 2); gtk_widget_show (vbox3); gtk_container_add (GTK_CONTAINER (connFm), vbox3); gtk_container_set_border_width (GTK_CONTAINER (vbox3), 2); connectBut = gtk_button_new_with_label (""); connectBut_key = gtk_label_parse_uline ( GTK_LABEL (GTK_BIN (connectBut)->child), _("_Connect")); gtk_widget_add_accelerator (connectBut, "clicked", accel_group, connectBut_key, GDK_MOD1_MASK, 0); gtk_widget_show (connectBut); gtk_box_pack_start (GTK_BOX (vbox3), connectBut, FALSE, FALSE, 0); gtk_tooltips_set_tip (tooltips, connectBut, _("Make connection"), NULL); disconnectBut = gtk_button_new_with_label (""); disconnectBut_key = gtk_label_parse_uline( GTK_LABEL (GTK_BIN (disconnectBut)->child), _("_Disconnect")); gtk_widget_add_accelerator (disconnectBut, "clicked", accel_group, disconnectBut_key, GDK_MOD1_MASK, 0); gtk_widget_show (disconnectBut); gtk_box_pack_start (GTK_BOX (vbox3), disconnectBut, FALSE, FALSE, 0); timeLabel = gtk_label_new ("0:00:00"); gtk_widget_show (timeLabel); gtk_box_pack_start (GTK_BOX (vbox3), timeLabel, FALSE, FALSE, 0); vbox4 = gtk_vbox_new (FALSE, 2); gtk_widget_show (vbox4); gtk_box_pack_start (GTK_BOX (topPanel), vbox4, FALSE, TRUE, 0);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -