⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 filter-windows.c

📁 一个功能全面的电子邮件客户端
💻 C
📖 第 1 页 / 共 2 页
字号:
  combo4_items = g_list_append (combo4_items, _("Folder4"));  gtk_combo_set_popdown_strings (GTK_COMBO (combo4), combo4_items);  g_list_free (combo4_items);  folder = GTK_COMBO (combo4)->entry;  gtk_widget_set_name (folder, "folder");  gtk_widget_ref (folder);  gtk_object_set_data_full (GTK_OBJECT (rule_editor), "folder", folder,                            (GtkDestroyNotify) gtk_widget_unref);  gtk_widget_show (folder);  gtk_entry_set_text (GTK_ENTRY (folder), _("Folder1"));  scrolledwindow1 = gtk_scrolled_window_new (NULL, NULL);  gtk_widget_set_name (scrolledwindow1, "scrolledwindow1");  gtk_widget_ref (scrolledwindow1);  gtk_object_set_data_full (GTK_OBJECT (rule_editor), "scrolledwindow1", scrolledwindow1,                            (GtkDestroyNotify) gtk_widget_unref);  gtk_widget_show (scrolledwindow1);  gtk_table_attach (GTK_TABLE (table1), scrolledwindow1, 1, 3, 3, 4,                    (GtkAttachOptions) (GTK_FILL),                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), 0, 0);  gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow1), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);  human_readable = gtk_text_new (NULL, NULL);  gtk_widget_set_name (human_readable, "human_readable");  gtk_widget_ref (human_readable);  gtk_object_set_data_full (GTK_OBJECT (rule_editor), "human_readable", human_readable,                            (GtkDestroyNotify) gtk_widget_unref);  gtk_widget_show (human_readable);  gtk_container_add (GTK_CONTAINER (scrolledwindow1), human_readable);  drawingarea1 = gtk_drawing_area_new ();  gtk_widget_set_name (drawingarea1, "drawingarea1");  gtk_widget_ref (drawingarea1);  gtk_object_set_data_full (GTK_OBJECT (rule_editor), "drawingarea1", drawingarea1,                            (GtkDestroyNotify) gtk_widget_unref);  gtk_widget_show (drawingarea1);  gtk_table_attach (GTK_TABLE (table1), drawingarea1, 0, 1, 3, 4,                    (GtkAttachOptions) (GTK_FILL),                    (GtkAttachOptions) (GTK_FILL), 0, 0);  drawingarea2 = gtk_drawing_area_new ();  gtk_widget_set_name (drawingarea2, "drawingarea2");  gtk_widget_ref (drawingarea2);  gtk_object_set_data_full (GTK_OBJECT (rule_editor), "drawingarea2", drawingarea2,                            (GtkDestroyNotify) gtk_widget_unref);  gtk_widget_show (drawingarea2);  gtk_table_attach (GTK_TABLE (table1), drawingarea2, 0, 1, 1, 2,                    (GtkAttachOptions) (GTK_FILL),                    (GtkAttachOptions) (GTK_FILL), 0, 0);  drawingarea3 = gtk_drawing_area_new ();  gtk_widget_set_name (drawingarea3, "drawingarea3");  gtk_widget_ref (drawingarea3);  gtk_object_set_data_full (GTK_OBJECT (rule_editor), "drawingarea3", drawingarea3,                            (GtkDestroyNotify) gtk_widget_unref);  gtk_widget_show (drawingarea3);  gtk_table_attach (GTK_TABLE (table1), drawingarea3, 2, 3, 1, 2,                    (GtkAttachOptions) (GTK_FILL),                    (GtkAttachOptions) (GTK_FILL), 0, 0);  entry = gtk_entry_new ();  gtk_widget_set_name (entry, "entry");  gtk_widget_ref (entry);  gtk_object_set_data_full (GTK_OBJECT (rule_editor), "entry", entry,                            (GtkDestroyNotify) gtk_widget_unref);  gtk_widget_show (entry);  gtk_table_attach (GTK_TABLE (table1), entry, 1, 3, 1, 2,                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),                    (GtkAttachOptions) (0), 0, 0);  dialog_action_area1 = GTK_DIALOG (rule_editor)->action_area;  gtk_widget_set_name (dialog_action_area1, "dialog_action_area1");  gtk_object_set_data (GTK_OBJECT (rule_editor), "dialog_action_area1", dialog_action_area1);  gtk_widget_show (dialog_action_area1);  gtk_container_set_border_width (GTK_CONTAINER (dialog_action_area1), 10);  ok_button = gtk_button_new_with_label (_("Ok"));  gtk_widget_set_name (ok_button, "ok_button");  gtk_widget_ref (ok_button);  gtk_object_set_data_full (GTK_OBJECT (rule_editor), "ok_button", ok_button,                            (GtkDestroyNotify) gtk_widget_unref);  gtk_widget_show (ok_button);  gtk_box_pack_start (GTK_BOX (dialog_action_area1), ok_button, TRUE, TRUE, 0);  GTK_WIDGET_SET_FLAGS (ok_button, GTK_CAN_DEFAULT);  cancel_button = gtk_button_new_with_label (_("Cancel"));  gtk_widget_set_name (cancel_button, "cancel_button");  gtk_widget_ref (cancel_button);  gtk_object_set_data_full (GTK_OBJECT (rule_editor), "cancel_button", cancel_button,                            (GtkDestroyNotify) gtk_widget_unref);  gtk_widget_show (cancel_button);  gtk_box_pack_start (GTK_BOX (dialog_action_area1), cancel_button, TRUE, TRUE, 0);  gtk_widget_grab_focus (ok_button);  gtk_widget_grab_default (ok_button);  return rule_editor;}GtkWidget *rule_editor_create (FilterRule *ok_data, FilterRule *cancel_data) {	GtkWidget *widget=create_rule_editor ();	GList *folders=folder_create_glist ();	char *hr;	g_return_val_if_fail (ok_data != NULL, NULL);  gtk_combo_set_popdown_strings (GTK_COMBO (lw (widget, "combo4")), folders);		if (ok_data->folder)		gtk_entry_set_text (GTK_ENTRY (lw (widget, "folder")), ok_data->folder);	if (ok_data->text)		gtk_entry_set_text (GTK_ENTRY (lw (widget, "entry")), ok_data->text);	switch (ok_data->matchline) {		case F_SUBJECT:			gtk_entry_set_text (GTK_ENTRY (lw (widget, "search_target")), "Subject");			break;		case F_FROM:			gtk_entry_set_text (GTK_ENTRY (lw (widget, "search_target")), "From");			break;                case F_REPLYTO:                        gtk_entry_set_text (GTK_ENTRY (lw (widget, "search_target")), "Reply-To");                        break;		case F_TO:			gtk_entry_set_text (GTK_ENTRY (lw (widget, "search_target")), "To");			break;		case F_CC:               gtk_entry_set_text (GTK_ENTRY (lw (widget, "search_target")),"Cc");                        break;		case F_BCC:               gtk_entry_set_text (GTK_ENTRY (lw (widget, "search_target")), "Bcc");                        break;		case F_MSG:		gtk_entry_set_text(GTK_ENTRY (lw (widget, "search_target")), "Message");		break;		case F_KEY:		gtk_entry_set_text(GTK_ENTRY (lw (widget, "search_target")), "Keywords");		break;	}	switch (ok_data->type) {		case F_AND:			gtk_entry_set_text (GTK_ENTRY (lw (widget, "search_type")), "Contains");			break;		case F_NOT:			gtk_entry_set_text (GTK_ENTRY (lw (widget, "search_type")), "Does Not Contain");			break;		case F_EQUAL:			gtk_entry_set_text (GTK_ENTRY (lw (widget, "search_type")), "Matches Exactly");			break;	}	switch (ok_data->action) {		case F_ACTION_MOVE:			gtk_entry_set_text (GTK_ENTRY (lw (widget, "action")), "Move Message to Folder");			break;		case F_ACTION_DELETE:			gtk_entry_set_text (GTK_ENTRY (lw (widget, "action")), "Delete Message");			break;	}		hr=filter_to_hr (ok_data);	gtk_text_insert (GTK_TEXT (lw (widget, "human_readable")),	                 NULL, NULL, NULL, hr, -1);	if (hr) free (hr);		gtk_signal_connect (GTK_OBJECT (widget), "delete_event",	                    GTK_SIGNAL_FUNC (rule_editor_destroy), cancel_data);	gtk_signal_connect (GTK_OBJECT (lw (widget, "search_target")), "changed",	                    GTK_SIGNAL_FUNC (rule_editor_search_target_changed), ok_data);	gtk_signal_connect (GTK_OBJECT (lw (widget, "search_type")), "changed",	                    GTK_SIGNAL_FUNC (rule_editor_search_type_changed), ok_data);	gtk_signal_connect (GTK_OBJECT (lw (widget, "action")), "changed",	                    GTK_SIGNAL_FUNC (rule_editor_action_changed), ok_data);	gtk_signal_connect (GTK_OBJECT (lw (widget, "entry")), "changed",	                    GTK_SIGNAL_FUNC (rule_editor_text_changed), ok_data);	gtk_signal_connect (GTK_OBJECT (lw (widget, "folder")), "changed",	                    GTK_SIGNAL_FUNC (rule_editor_folder_changed), ok_data);	gtk_signal_connect (GTK_OBJECT (lw (widget, "ok_button")), "clicked",	                    GTK_SIGNAL_FUNC (rule_editor_accept), ok_data);	gtk_signal_connect (GTK_OBJECT (lw (widget, "cancel_button")), "clicked",	                    GTK_SIGNAL_FUNC (rule_editor_cancel), cancel_data);	clip_handle_editable (lw (widget, "entry"));	clip_handle_editable (lw (widget, "human_readable"));	gtk_widget_show (widget);													return widget;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -