📄 interface.c
字号:
GTK_SIGNAL_FUNC (on_drawingarea4_expose_event), NULL); gtk_object_set_data (GTK_OBJECT (window1), "tooltips", tooltips); return window1;}GtkWidget*create_about2 (void){ const gchar *authors[] = { "Lawrence Glaister VE7IT", NULL }; GtkWidget *about2; about2 = gnome_about_new ("Gspy", VERSION, "Copyright 2000 - released under GPL", authors, "\n A gnome video for linux security camera\n\n ve7it@shaw.ca\n http://gspy.sourceforge.net/", "gspy/lpg2.xpm"); gtk_object_set_data (GTK_OBJECT (about2), "about2", about2); gtk_window_set_modal (GTK_WINDOW (about2), TRUE); return about2;}GtkWidget*create_propertybox1 (void){ GtkWidget *propertybox1; GtkWidget *notebook1; GtkWidget *table1; GtkWidget *label4; GtkWidget *label5; GtkWidget *label6; GtkWidget *label7; GtkWidget *label8; GtkWidget *label9; GtkWidget *image_dir; GtkWidget *img_label; GtkWidget *Pix_interval; GtkWidget *save_interval; GtkWidget *label1; GtkWidget *table2; GtkWidget *label10; GtkWidget *video_src; GtkWidget *label2; GtkWidget *table3; GtkWidget *label11; GtkWidget *label12; GtkWidget *label13; GtkWidget *label14; GtkWidget *label15; GtkWidget *ref_fraction; GtkWidget *alrm_threshold; GtkWidget *sig_pix_thres; GtkWidget *plt_scaler; GtkWidget *beep_on_alrm; GtkWidget *label16; GtkWidget *label17; GtkWidget *label18; GtkWidget *label19; GtkWidget *label20; GtkWidget *show_target_box; GtkWidget *label21; GtkWidget *alarm_command; GtkWidget *label3; GtkWidget *empty_notebook_page; GtkWidget *label22; GtkTooltips *tooltips; tooltips = gtk_tooltips_new (); propertybox1 = gnome_property_box_new (); gtk_object_set_data (GTK_OBJECT (propertybox1), "propertybox1", propertybox1); gtk_container_set_border_width (GTK_CONTAINER (propertybox1), 5); GTK_WIDGET_SET_FLAGS (propertybox1, GTK_CAN_FOCUS); gtk_window_set_title (GTK_WINDOW (propertybox1), "gspy - preferences"); gtk_window_set_position (GTK_WINDOW (propertybox1), GTK_WIN_POS_CENTER); gtk_window_set_policy (GTK_WINDOW (propertybox1), FALSE, FALSE, FALSE); notebook1 = GNOME_PROPERTY_BOX (propertybox1)->notebook; gtk_object_set_data (GTK_OBJECT (propertybox1), "notebook1", notebook1); gtk_widget_show (notebook1); gtk_container_set_border_width (GTK_CONTAINER (notebook1), 4); gtk_notebook_set_tab_hborder (GTK_NOTEBOOK (notebook1), 5); gtk_notebook_set_tab_vborder (GTK_NOTEBOOK (notebook1), 0); table1 = gtk_table_new (4, 3, FALSE); gtk_widget_ref (table1); gtk_object_set_data_full (GTK_OBJECT (propertybox1), "table1", table1, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (table1); gtk_container_add (GTK_CONTAINER (notebook1), table1); label4 = gtk_label_new ("Image Save Directory"); gtk_widget_ref (label4); gtk_object_set_data_full (GTK_OBJECT (propertybox1), "label4", label4, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (label4); gtk_table_attach (GTK_TABLE (table1), label4, 0, 1, 0, 1, (GtkAttachOptions) (0), (GtkAttachOptions) (0), 0, 0); gtk_label_set_justify (GTK_LABEL (label4), GTK_JUSTIFY_RIGHT); label5 = gtk_label_new ("Image Label"); gtk_widget_ref (label5); gtk_object_set_data_full (GTK_OBJECT (propertybox1), "label5", label5, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (label5); gtk_table_attach (GTK_TABLE (table1), label5, 0, 1, 1, 2, (GtkAttachOptions) (0), (GtkAttachOptions) (0), 0, 0); gtk_label_set_justify (GTK_LABEL (label5), GTK_JUSTIFY_RIGHT); label6 = gtk_label_new ("Picture Interval"); gtk_widget_ref (label6); gtk_object_set_data_full (GTK_OBJECT (propertybox1), "label6", label6, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (label6); gtk_table_attach (GTK_TABLE (table1), label6, 0, 1, 2, 3, (GtkAttachOptions) (0), (GtkAttachOptions) (0), 0, 0); gtk_label_set_justify (GTK_LABEL (label6), GTK_JUSTIFY_RIGHT); label7 = gtk_label_new ("Periodically Save Image Every"); gtk_widget_ref (label7); gtk_object_set_data_full (GTK_OBJECT (propertybox1), "label7", label7, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (label7); gtk_table_attach (GTK_TABLE (table1), label7, 0, 1, 3, 4, (GtkAttachOptions) (0), (GtkAttachOptions) (0), 0, 0); gtk_label_set_justify (GTK_LABEL (label7), GTK_JUSTIFY_RIGHT); label8 = gtk_label_new ("seconds"); gtk_widget_ref (label8); gtk_object_set_data_full (GTK_OBJECT (propertybox1), "label8", label8, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (label8); gtk_table_attach (GTK_TABLE (table1), label8, 2, 3, 2, 3, (GtkAttachOptions) (0), (GtkAttachOptions) (0), 0, 0); label9 = gtk_label_new ("snapshots"); gtk_widget_ref (label9); gtk_object_set_data_full (GTK_OBJECT (propertybox1), "label9", label9, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (label9); gtk_table_attach (GTK_TABLE (table1), label9, 2, 3, 3, 4, (GtkAttachOptions) (0), (GtkAttachOptions) (0), 0, 0); image_dir = gtk_entry_new_with_max_length (128); gtk_widget_ref (image_dir); gtk_object_set_data_full (GTK_OBJECT (propertybox1), "image_dir", image_dir, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (image_dir); gtk_table_attach (GTK_TABLE (table1), image_dir, 1, 2, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_widget_set_usize (image_dir, 200, -2); gtk_tooltips_set_tip (tooltips, image_dir, "/home/lg/images/", NULL); img_label = gtk_entry_new (); gtk_widget_ref (img_label); gtk_object_set_data_full (GTK_OBJECT (propertybox1), "img_label", img_label, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (img_label); gtk_table_attach (GTK_TABLE (table1), img_label, 1, 2, 1, 2, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_tooltips_set_tip (tooltips, img_label, "Computer Room %Y-%m-%d %H:%M:%S", NULL); Pix_interval = gtk_entry_new (); gtk_widget_ref (Pix_interval); gtk_object_set_data_full (GTK_OBJECT (propertybox1), "Pix_interval", Pix_interval, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (Pix_interval); gtk_table_attach (GTK_TABLE (table1), Pix_interval, 1, 2, 2, 3, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_tooltips_set_tip (tooltips, Pix_interval, "typical value = 3", NULL); save_interval = gtk_entry_new (); gtk_widget_ref (save_interval); gtk_object_set_data_full (GTK_OBJECT (propertybox1), "save_interval", save_interval, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (save_interval); gtk_table_attach (GTK_TABLE (table1), save_interval, 1, 2, 3, 4, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_tooltips_set_tip (tooltips, save_interval, "typical interval 200", NULL); label1 = gtk_label_new ("General"); gtk_widget_ref (label1); gtk_object_set_data_full (GTK_OBJECT (propertybox1), "label1", label1, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (label1); gtk_notebook_set_tab_label (GTK_NOTEBOOK (notebook1), gtk_notebook_get_nth_page (GTK_NOTEBOOK (notebook1), 0), label1); table2 = gtk_table_new (1, 3, FALSE); gtk_widget_ref (table2); gtk_object_set_data_full (GTK_OBJECT (propertybox1), "table2", table2, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (table2); gtk_container_add (GTK_CONTAINER (notebook1), table2); label10 = gtk_label_new ("Video Source"); gtk_widget_ref (label10); gtk_object_set_data_full (GTK_OBJECT (propertybox1), "label10", label10, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (label10); gtk_table_attach (GTK_TABLE (table2), label10, 0, 1, 0, 1, (GtkAttachOptions) (0), (GtkAttachOptions) (0), 0, 0); gtk_label_set_justify (GTK_LABEL (label10), GTK_JUSTIFY_RIGHT); video_src = gtk_entry_new (); gtk_widget_ref (video_src); gtk_object_set_data_full (GTK_OBJECT (propertybox1), "video_src", video_src, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (video_src); gtk_table_attach (GTK_TABLE (table2), video_src, 1, 2, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_tooltips_set_tip (tooltips, video_src, "/dev/video0", NULL); label2 = gtk_label_new ("Video4Linux"); gtk_widget_ref (label2); gtk_object_set_data_full (GTK_OBJECT (propertybox1), "label2", label2, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (label2); gtk_notebook_set_tab_label (GTK_NOTEBOOK (notebook1), gtk_notebook_get_nth_page (GTK_NOTEBOOK (notebook1), 1), label2); table3 = gtk_table_new (7, 3, FALSE); gtk_widget_ref (table3); gtk_object_set_data_full (GTK_OBJECT (propertybox1), "table3", table3, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (table3);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -