/*
* Sylpheed -- a GTK+ based, lightweight, and fast e-mail client
- * Copyright (C) 1999-2011 Hiroyuki Yamamoto and the Claws Mail team
+ * Copyright (C) 1999-2012 Hiroyuki Yamamoto and the Claws Mail team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
#ifdef HAVE_CONFIG_H
# include "config.h"
+#include "claws-features.h"
#endif
#include "defs.h"
#include "displayheader.h"
#include "utils.h"
#include "gtkutils.h"
+#include "file-utils.h"
enum {
PREFS_HDR_HEADER,
"From",
"To",
"Cc",
+ "Bcc",
"Subject",
"Date",
"Reply-To",
"-Message-ID",
"-In-Reply-To",
"-References",
- "-Mime-Version",
+ "-MIME-Version",
"-Content-Type",
"-Content-Transfer-Encoding",
"-X-UIDL",
"From",
"To",
"Cc",
+ "Bcc",
"Subject",
"Date",
"Newsgroups",
"-Message-ID",
"-In-Reply-To",
"-References",
- "-Mime-Version",
+ "-MIME-Version",
"-Content-Type",
"-Content-Transfer-Encoding",
"-X-UIDL",
gtk_container_set_border_width (GTK_CONTAINER (window), 8);
gtk_window_set_position (GTK_WINDOW (window), GTK_WIN_POS_CENTER);
gtk_window_set_resizable(GTK_WINDOW (window), TRUE);
+ gtk_window_set_type_hint(GTK_WINDOW(window), GDK_WINDOW_TYPE_HINT_DIALOG);
vbox = gtk_vbox_new (FALSE, 6);
gtk_widget_show (vbox);
gtk_widget_show (hdr_label);
gtk_box_pack_start (GTK_BOX (hbox1), hdr_label, FALSE, FALSE, 0);
- hdr_combo = gtk_combo_box_entry_new_text();
+ hdr_combo = gtk_combo_box_text_new_with_entry();
for(i=0; i < 9 ; i++)
- gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(hdr_combo),
+ gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT (hdr_combo),
(*defaults[i] == '-') ? defaults[i]+1 : defaults[i]);
gtk_combo_box_set_active(GTK_COMBO_BOX(hdr_combo), 0);
gtk_widget_show (hdr_combo);
gtk_widget_show (list_view_hbox);
gtk_box_pack_start (GTK_BOX (vbox1), list_view_hbox, TRUE, TRUE, 0);
+ /* hidden headers list */
+
+ list_view_hbox2 = gtk_hbox_new (FALSE, 8);
+ gtk_widget_show (list_view_hbox2);
+ gtk_box_pack_start (GTK_BOX (list_view_hbox), list_view_hbox2, TRUE, TRUE, 0);
+
+ list_view_scrolledwin = gtk_scrolled_window_new (NULL, NULL);
+ gtk_widget_set_size_request (list_view_scrolledwin, 200, 210);
+ gtk_widget_show (list_view_scrolledwin);
+ gtk_box_pack_start (GTK_BOX (list_view_hbox2), list_view_scrolledwin,
+ TRUE, TRUE, 0);
+ gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (list_view_scrolledwin),
+ GTK_POLICY_AUTOMATIC,
+ GTK_POLICY_AUTOMATIC);
+ gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(list_view_scrolledwin),
+ GTK_SHADOW_IN);
+
+ hidden_headers_list_view = prefs_display_header_list_view_create
+ (_("Hidden headers"));
+ gtk_widget_show (hidden_headers_list_view);
+ gtk_container_add (GTK_CONTAINER (list_view_scrolledwin),
+ hidden_headers_list_view);
+
+ btn_vbox = gtk_vbox_new (FALSE, 8);
+ gtk_widget_show (btn_vbox);
+ gtk_box_pack_start (GTK_BOX (list_view_hbox2), btn_vbox, FALSE, FALSE, 0);
+
+ reg_btn = gtk_button_new_from_stock (GTK_STOCK_ADD);
+ gtk_widget_show (reg_btn);
+ gtk_box_pack_start (GTK_BOX (btn_vbox), reg_btn, FALSE, TRUE, 0);
+ g_signal_connect (G_OBJECT (reg_btn), "clicked",
+ G_CALLBACK
+ (prefs_display_header_register_cb),
+ GINT_TO_POINTER(TRUE));
+ del_btn = gtk_button_new_from_stock (GTK_STOCK_DELETE);
+ gtk_widget_show (del_btn);
+ gtk_box_pack_start (GTK_BOX (btn_vbox), del_btn, FALSE, TRUE, 0);
+ g_signal_connect (G_OBJECT (del_btn), "clicked",
+ G_CALLBACK (prefs_display_header_delete_cb),
+ hidden_headers_list_view);
+
/* display headers list */
list_view_hbox1 = gtk_hbox_new (FALSE, 8);
g_signal_connect (G_OBJECT (down_btn), "clicked",
G_CALLBACK (prefs_display_header_down), NULL);
- /* hidden headers list */
-
- list_view_hbox2 = gtk_hbox_new (FALSE, 8);
- gtk_widget_show (list_view_hbox2);
- gtk_box_pack_start (GTK_BOX (list_view_hbox), list_view_hbox2, TRUE, TRUE, 0);
-
- list_view_scrolledwin = gtk_scrolled_window_new (NULL, NULL);
- gtk_widget_set_size_request (list_view_scrolledwin, 200, 210);
- gtk_widget_show (list_view_scrolledwin);
- gtk_box_pack_start (GTK_BOX (list_view_hbox2), list_view_scrolledwin,
- TRUE, TRUE, 0);
- gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (list_view_scrolledwin),
- GTK_POLICY_AUTOMATIC,
- GTK_POLICY_AUTOMATIC);
- gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(list_view_scrolledwin),
- GTK_SHADOW_IN);
-
- hidden_headers_list_view = prefs_display_header_list_view_create
- (_("Hidden headers"));
- gtk_widget_show (hidden_headers_list_view);
- gtk_container_add (GTK_CONTAINER (list_view_scrolledwin),
- hidden_headers_list_view);
-
- btn_vbox = gtk_vbox_new (FALSE, 8);
- gtk_widget_show (btn_vbox);
- gtk_box_pack_start (GTK_BOX (list_view_hbox2), btn_vbox, FALSE, FALSE, 0);
-
- reg_btn = gtk_button_new_from_stock (GTK_STOCK_ADD);
- gtk_widget_show (reg_btn);
- gtk_box_pack_start (GTK_BOX (btn_vbox), reg_btn, FALSE, TRUE, 0);
- g_signal_connect (G_OBJECT (reg_btn), "clicked",
- G_CALLBACK
- (prefs_display_header_register_cb),
- GINT_TO_POINTER(TRUE));
- del_btn = gtk_button_new_from_stock (GTK_STOCK_DELETE);
- gtk_widget_show (del_btn);
- gtk_box_pack_start (GTK_BOX (btn_vbox), del_btn, FALSE, TRUE, 0);
- g_signal_connect (G_OBJECT (del_btn), "clicked",
- G_CALLBACK (prefs_display_header_delete_cb),
- hidden_headers_list_view);
-
-
-
PACK_CHECK_BUTTON (vbox, checkbtn_other_headers,
_("Show all unspecified headers"));
SET_TOGGLE_SENSITIVITY (checkbtn_other_headers, list_view_hbox2);
rcpath = g_strconcat(get_rc_dir(), G_DIR_SEPARATOR_S,
DISPLAY_HEADER_RC, NULL);
- if ((fp = g_fopen(rcpath, "rb")) == NULL) {
- if (ENOENT != errno) FILE_OP_ERROR(rcpath, "fopen");
+ if ((fp = claws_fopen(rcpath, "rb")) == NULL) {
+ if (ENOENT != errno) FILE_OP_ERROR(rcpath, "claws_fopen");
g_free(rcpath);
prefs_common.disphdr_list = NULL;
prefs_display_header_set_default();
g_slist_remove(prefs_common.disphdr_list, dp);
}
- while (fgets(buf, sizeof(buf), fp) != NULL) {
+ while (claws_fgets(buf, sizeof(buf), fp) != NULL) {
g_strdelimit(buf, "\r\n", '\0');
dp = display_header_prop_read_str(buf);
if (dp)
g_slist_append(prefs_common.disphdr_list, dp);
}
- fclose(fp);
+ claws_fclose(fp);
}
static void prefs_display_header_write_config(void)
DISPLAY_HEADER_RC, NULL);
if ((pfile = prefs_write_open(rcpath)) == NULL) {
- g_warning("failed to write configuration to file\n");
+ g_warning("failed to write configuration to file");
g_free(rcpath);
return;
}
gchar *dpstr;
dpstr = display_header_prop_get_str(dp);
- if (fputs(dpstr, pfile->fp) == EOF ||
- fputc('\n', pfile->fp) == EOF) {
- FILE_OP_ERROR(rcpath, "fputs || fputc");
+ if (claws_fputs(dpstr, pfile->fp) == EOF ||
+ claws_fputc('\n', pfile->fp) == EOF) {
+ FILE_OP_ERROR(rcpath, "claws_fputs || claws_fputc");
prefs_file_close_revert(pfile);
g_free(rcpath);
g_free(dpstr);
g_free(rcpath);
if (prefs_file_close(pfile) < 0) {
- g_warning("failed to write configuration to file\n");
+ g_warning("failed to write configuration to file");
return;
}
}
gchar *entry_text;
GtkTreeModel *model;
- entry_text = gtk_combo_box_text_get_active_text(
- GTK_COMBO_BOX_TEXT(dispheader.hdr_combo));
+ entry_text = gtk_combo_box_text_get_active_text(GTK_COMBO_BOX_TEXT(dispheader.hdr_combo));
if (!entry_text)
entry_text = gtk_editable_get_chars(
GTK_EDITABLE(gtk_bin_get_child(GTK_BIN(dispheader.hdr_combo))),0,-1);
GdkEventKey *event,
gpointer data)
{
- if (event && event->keyval == GDK_Escape)
+ if (event && event->keyval == GDK_KEY_Escape)
prefs_display_header_cancel();
return FALSE;
}