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

📄 pref-windows-callbacks.c

📁 一个功能全面的电子邮件客户端
💻 C
📖 第 1 页 / 共 3 页
字号:
			mtype->handle=strdup ("Save");		} else {			if (GTK_TOGGLE_BUTTON (lookup_widget (widget, "rp_radio"))->active) {				mtype->handle=strdup ("Prompt");			} else {				mtype->handle=strdup (gtk_entry_get_text (GTK_ENTRY (lookup_widget (widget, "handler"))));			}		}	}	mime_types_destroy_window (widget, NULL, NULL);	mime_types_display_type (GTK_CLIST (lookup_widget(prefs_widget, "mime_clist")), mtype);}void mime_types_cancel_window (GtkWidget *widget, gpointer data) {	mime_types_destroy_window (widget, NULL, NULL);}void mime_types_destroy_window (GtkWidget *widget, GdkEvent *event, gpointer data) {	gtk_widget_destroy (lookup_widget (widget, "mime_type_window"));}void mime_types_external_toggle (GtkWidget *widget, gpointer data) {	if (GTK_TOGGLE_BUTTON (widget)->active) {		gtk_widget_set_sensitive (lookup_widget (widget, "handler"), TRUE);	} else {		gtk_widget_set_sensitive (lookup_widget (widget, "handler"), FALSE);	}}void mime_types_rehash_clist () {	GtkCList *clist;	Llist *seek=mime_type_first ();	if (GTK_IS_WIDGET (prefs_widget)) {		clist=GTK_CLIST (lookup_widget (prefs_widget, "mime_clist"));		gtk_clist_freeze (clist);		gtk_clist_clear (clist);		while (seek) {			mime_types_display_type (clist, (MimeType *)seek->data);			seek=seek->next;		}		gtk_clist_thaw (clist);	}}void header_none_selected (GtkWidget *widget, gpointer data) {	if (GTK_TOGGLE_BUTTON (widget)->active) {		tm_globs->flags &=~SHOW_SOME_HEADER;		tm_globs->flags &=~SHOW_ALL_HEADER;	}}void header_some_selected (GtkWidget *widget, gpointer data) {	if (GTK_TOGGLE_BUTTON (widget)->active) {		tm_globs->flags &=~SHOW_ALL_HEADER;		tm_globs->flags |=SHOW_SOME_HEADER;	}}void header_all_selected (GtkWidget *widget, gpointer data) {	if (GTK_TOGGLE_BUTTON (widget)->active) {		tm_globs->flags |=SHOW_ALL_HEADER;		tm_globs->flags &=~SHOW_SOME_HEADER;	}}void reply_none_selected (GtkWidget *widget, gpointer data) {	if (GTK_TOGGLE_BUTTON (widget)->active) {		tm_globs->flags &=~REPLY_NONE;		tm_globs->flags |=REPLY_NONE;	}}void reply_quoted_selected (GtkWidget *widget, gpointer data) {	if (GTK_TOGGLE_BUTTON (widget)->active) {		tm_globs->flags &=~REPLY_NONE;		tm_globs->flags &=~REPLY_QUOTED;		tm_globs->flags |=REPLY_QUOTED;	}}void reply_attached_selected (GtkWidget *widget, gpointer data) {	if (GTK_TOGGLE_BUTTON (widget)->active) {		tm_globs->flags &=~REPLY_NONE;		tm_globs->flags &=~REPLY_QUOTED;	}}void wasted_value_changed (GtkAdjustment *adjustment) {	tm_globs->wasted=adjustment->value;//	tm_globs->flags=adjustment->value;}void compact_folders (GtkWidget *widget, gpointer data) {	Folder *folder;	insert_message ("Processing compact folders request.  Please wait...\n");	insert_message ("Analyzing folders...\n");	folders_compact ();	insert_message ("Recreating message list for folders...\n");	for (folder=folder_first ();folder;folder=folder->next) {		message_list_destroy (folder);		folder->msglst=NULL;	}	insert_message ("Reindexing folders...\n");	for (folder=folder_first ();folder;folder=folder->next) {		folder_reindex (folder);	}	insert_message ("Done.\n");	folder_display (GTK_CLIST (lookup_widget (tm_globs->main_window, "message_clist")), tm_globs->visable);	prefs_setup_info ();}void undelete_messages (GtkWidget *widget, gpointer data) {	Folder *fl;	char *number;	GtkWidget *folder_ctree=lookup_widget (tm_globs->main_window, "folder_tree");#if DEBUG > 4	printf("undeleting messages\n");#endif	insert_message ("This may take some time, depending on mailbox size.\n");	insert_message ("During this process, user interaction wil be suspended.\n");	insert_message ("Undeleting messages..");	while (gtk_events_pending ())		gtk_main_iteration ();	number=(char *)calloc (5, sizeof(char));	fl=folder_first ();	while (fl) {		insert_message (".");		while (gtk_events_pending ())			gtk_main_iteration ();		folder_reindex (fl);		snprintf (number, 5, "%d", fl->unread);		gtk_ctree_node_set_text (GTK_CTREE (folder_ctree), fl->tree_item, 1, number);		snprintf (number, 5, "%d", fl->total);		gtk_ctree_node_set_text (GTK_CTREE (folder_ctree), fl->tree_item, 2, number);		fl=fl->next;	}	free (number);	insert_message (" Finished.\n");	if ((tm_globs->flags & HIDE_STATUS_WHEN_DONE)) {		destroy_status (tm_globs->status, NULL);	}}int rule_row=-1;void filter_rules_select_rule (GtkWidget *widget, gint row, gint column, GdkEventButton *event, gpointer data) {	rule_row=row;}void filter_rules_unselect_rule (GtkWidget *widget, gint row, gint column, GdkEventButton *event, gpointer data) {	rule_row=-1;}void filter_rules_add_rule  (GtkWidget *widget, gpointer data) {	FilterRule *rule=filter_new_rule ();	rule_editor_create (rule, rule);}void filter_rules_edit_rule (GtkWidget *widget, gpointer data) {	if (rule_row!=-1) {		FilterRule *rule=gtk_clist_get_row_data (GTK_CLIST (lw (widget, "rule_clist")), 		                                         rule_row);		rule_editor_create (rule, NULL);	}}void filter_rules_delete_rule (GtkWidget *widget, gpointer data) {	if (rule_row!=-1) {		FilterRule *rule=gtk_clist_get_row_data (GTK_CLIST (lw (widget, "rule_clist")), 		                                         rule_row);		filter_delete_rule (rule);		gtk_clist_remove (GTK_CLIST (lw (widget, "rule_clist")), rule_row);		rule_row=-1;	}}void filter_rules_move_up (GtkWidget *widget, gpointer data) {	GtkCList *clist=GTK_CLIST (lw (widget, "rule_clist"));		if (rule_row!=-1 && rule_row !=0) {		FilterRule *rule=gtk_clist_get_row_data (clist, rule_row);		gtk_clist_swap_rows (clist, rule_row, rule_row-1);		rule_row--;		filter_move_up (rule);	}}void filter_rules_move_down (GtkWidget *widget, gpointer data) {	GtkCList *clist=GTK_CLIST (lw (widget, "rule_clist"));		if (rule_row!=-1 && rule_row!=clist->rows-1) {		FilterRule *rule=gtk_clist_get_row_data (clist, rule_row);		gtk_clist_swap_rows (clist, rule_row, rule_row+1);		rule_row++;		filter_move_down (rule);	}}void preferences_rehash_varibles () {	GtkWidget *prefs=prefs_widget;	int hideflags = tm_globs->flags;#if DEBUG>7	printf ("real_name   : '%20.20s'<%p>\n", tm_globs->real_name, tm_globs->real_name);	printf ("email       : '%20.20s'<%p>\n", tm_globs->email, tm_globs->email);	printf ("replyto     : '%20.20s'<%p>\n", tm_globs->replyto, tm_globs->replyto);	printf ("organization: '%20.20s'<%p>\n", tm_globs->organization, tm_globs->organization);	printf ("signature   : '%20.20s'<%p>\n", tm_globs->signature, tm_globs->signature);#endif	if (tm_globs->real_name) free (tm_globs->real_name);	if (tm_globs->email) free (tm_globs->email);	if (tm_globs->replyto) free (tm_globs->replyto);	if (tm_globs->organization) free (tm_globs->organization);#if 0	if (tm_globs->signature) g_free (tm_globs->signature);#else	if (tm_globs->signature) free (tm_globs->signature);#endif	tm_globs->real_name=strdup (gtk_entry_get_text (GTK_ENTRY (lookup_widget (prefs, "name_entry"))));	tm_globs->email=strdup (gtk_entry_get_text (GTK_ENTRY (lookup_widget (prefs, "email_addy_entry"))));	tm_globs->replyto=strdup (gtk_entry_get_text (GTK_ENTRY (lookup_widget (prefs, "reply_entry"))));	tm_globs->organization=strdup (gtk_entry_get_text (GTK_ENTRY (lookup_widget (prefs, "org_entry"))));	tm_globs->default_account=strdup (gtk_entry_get_text (GTK_ENTRY (lookup_widget (prefs, "combo_entry2"))));#ifdef WANTLDAP	set_ldap_host(strdup (gtk_entry_get_text (GTK_ENTRY (lookup_widget (prefs, "l_entry_host")))));	set_ldap_ppassword(strdup (gtk_entry_get_text (GTK_ENTRY (lookup_widget (prefs, "l_entry_password")))));	set_ldap_base(strdup (gtk_entry_get_text (GTK_ENTRY (lookup_widget (prefs, "l_entry_base")))));	set_ldap_username(strdup (gtk_entry_get_text (GTK_ENTRY (lookup_widget (prefs, "l_entry_username")))));	set_ldap_port(strdup (gtk_entry_get_text (GTK_ENTRY (lookup_widget (prefs, "l_entry_port")))));#endif	tm_globs->signature=gtk_editable_get_chars (GTK_EDITABLE (lookup_widget (prefs, "autosignature")), 0, -1);	tm_globs->flags=0;	if (GTK_TOGGLE_BUTTON (lookup_widget (prefs, "use_autosig"))->active) {		tm_globs->flags |= USE_SIGNATURE;	}	if (GTK_TOGGLE_BUTTON (lookup_widget (prefs, "use_unix_sig"))->active) {		tm_globs->flags |=USE_UNIX_SIG;	}	if ((hideflags) && (hideflags & HIDE_STATUS_WHEN_DONE))		tm_globs->flags |= HIDE_STATUS_WHEN_DONE;	if (GTK_IS_WIDGET (tm_globs->status)) {		if (GTK_TOGGLE_BUTTON (lookup_widget (tm_globs->status, "checkbutton2"))->active) {			tm_globs->flags |=HIDE_STATUS_WHEN_DONE;		}	}	if (GTK_TOGGLE_BUTTON (lookup_widget (prefs, "hide_status"))->active) {		tm_globs->flags |=HIDE_STATUS_WINDOW;	}	if (GTK_TOGGLE_BUTTON (lookup_widget (prefs, "header_some"))->active) {		tm_globs->flags |=SHOW_SOME_HEADER;	}	if (GTK_TOGGLE_BUTTON (lookup_widget (prefs, "header_all"))->active) {		tm_globs->flags |=SHOW_ALL_HEADER;	}	if (GTK_TOGGLE_BUTTON (lookup_widget (prefs, "reply_none"))->active) {		tm_globs->flags |=REPLY_NONE;	}	if (GTK_TOGGLE_BUTTON (lookup_widget (prefs, "reply_quoted"))->active) {		tm_globs->flags |=REPLY_QUOTED;	}}void preferences_rehash_interface () {	GtkWidget *widget=prefs_widget;	GList *accts=pop_create_glist ();	PopAccount *seek;	if (!GTK_IS_WIDGET (prefs_widget))		return;	if (accts) gtk_combo_set_popdown_strings (GTK_COMBO (lw (prefs_widget, "combo2")), accts);#if DEBUG > 3	printf ("flags: %08lX\n", tm_globs->flags);	printf ("real_name: %p\n", tm_globs->real_name);	printf ("email: %p\n", tm_globs->email);	printf ("replyto: %p\n", tm_globs->replyto);	printf ("organization: %p\n", tm_globs->organization);	printf ("default_account: %p\n", tm_globs->default_account);	printf ("signature: %p\n", tm_globs->signature);#endif	st (widget, "name_entry", tm_globs->real_name);	st (widget, "email_addy_entry", tm_globs->email);	st (widget, "reply_entry", tm_globs->replyto);	st (widget, "org_entry", tm_globs->organization);	st (widget, "combo_entry2", tm_globs->default_account);	st (widget, "autosignature", tm_globs->signature);#ifdef WANTLDAP	st (widget, "l_entry_host", tm_globs->ldap_host);	st (widget, "l_entry_username", tm_globs->ldap_username);	st (widget, "l_entry_password", tm_globs->ldap_password);	st (widget, "l_entry_base", tm_globs->ldap_base);#endif	if (tm_globs->flags & USE_SIGNATURE)		tba (widget, "use_autosig");	if (tm_globs->flags & HIDE_STATUS_WINDOW)		tba (widget, "hide_status");	if (tm_globs->flags & SHOW_SOME_HEADER) {		tba (widget, "header_some");	} else {		if ((tm_globs->flags & SHOW_ALL_HEADER) == SHOW_ALL_HEADER) {			tba (widget, "header_all");		} else {				tba (widget, "header_none");		}	}	if (tm_globs->flags & REPLY_NONE) {		tba (widget, "reply_none");	} else {		if (tm_globs->flags & REPLY_QUOTED) {			tba (widget, "reply_quoted");		} else {			tba (widget, "reply_attach");		}	}	for (seek=first_popaccount();seek;seek=seek->next) {		prefs_display_server (GTK_CLIST (lw (widget, "server_clist")), seek);	}}void insert_autosig_callback (GtkWidget *widget, gpointer data){#if DEBUG > 3	printf ("insert_autosig_callback(): begin\n");#endif#if DEBUG > 3	printf ("insert_autosig_callback(): end\n");#endif}

⌨️ 快捷键说明

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