2007-07-17 [paul] 2.10.0cvs35
authorPaul Mangan <paul@claws-mail.org>
Tue, 17 Jul 2007 13:21:50 +0000 (13:21 +0000)
committerPaul Mangan <paul@claws-mail.org>
Tue, 17 Jul 2007 13:21:50 +0000 (13:21 +0000)
* src/prefs_common.c
* src/prefs_common.h
* src/prefs_logging.c
* src/common/log.c
add options to stop/enable writing logs to disc

ChangeLog
PATCHSETS
configure.ac
src/common/log.c
src/prefs_common.c
src/prefs_common.h
src/prefs_logging.c

index e4bed13ccfa1169bf0e47841787245d97adbbd2f..a2aac552c53f5a0e7e00738a2bea9fff9becf0a6 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2007-07-17 [paul]      2.10.0cvs35
+
+       * src/prefs_common.c
+       * src/prefs_common.h
+       * src/prefs_logging.c
+       * src/common/log.c
+               add options to stop/enable writing logs to disc
+
 2007-07-17 [paul]      2.10.0cvs34
 
        * src/edittags.c
index e823c507aa00b4315cf99c2f9bf969ef4ddf1451..e4fbd82a593002377a33a1c4c564152c3740b54e 100644 (file)
--- a/PATCHSETS
+++ b/PATCHSETS
 ( cvs diff -u -r 1.43.2.75 -r 1.43.2.76 src/toolbar.c;  ) > 2.10.0cvs32.patchset
 ( cvs diff -u -r 1.1.2.3 -r 1.1.2.4 src/edittags.c;  ) > 2.10.0cvs33.patchset
 ( cvs diff -u -r 1.1.2.4 -r 1.1.2.5 src/edittags.c;  ) > 2.10.0cvs34.patchset
+( cvs diff -u -r 1.204.2.140 -r 1.204.2.141 src/prefs_common.c;  cvs diff -u -r 1.103.2.86 -r 1.103.2.87 src/prefs_common.h;  cvs diff -u -r 1.1.2.7 -r 1.1.2.8 src/prefs_logging.c;  cvs diff -u -r 1.6.2.13 -r 1.6.2.14 src/common/log.c;  ) > 2.10.0cvs35.patchset
index 88d94a80b1d69d7903e63b5cd1815c4cd661cb2e..cfab82a237d6e7546113be1f13ea9cf481d588d7 100644 (file)
@@ -11,7 +11,7 @@ MINOR_VERSION=10
 MICRO_VERSION=0
 INTERFACE_AGE=0
 BINARY_AGE=0
-EXTRA_VERSION=34
+EXTRA_VERSION=35
 EXTRA_RELEASE=
 EXTRA_GTK2_VERSION=
 
index 1ad176881e91f9117bc4a0eaacf848f88e62e8f4..e44b86f2c30e2284844806226460f2d9e42415ec 100644 (file)
@@ -54,6 +54,11 @@ static LogInstanceData log_instances[LOG_INSTANCE_MAX] = {
        { DEBUG_FILTERING_APPEND_TEXT_HOOKLIST, NULL, NULL, NULL }
 };
 
+gboolean prefs_common_enable_log_standard(void);
+gboolean prefs_common_enable_log_warning(void);
+gboolean prefs_common_enable_log_error(void);
+gboolean prefs_common_enable_log_status(void);
+
 static gboolean invoke_hook_cb (gpointer data)
 {
        LogText *logtext = (LogText *)data;
@@ -142,8 +147,8 @@ void log_print(LogInstance instance, const gchar *format, ...)
        logtext->type = LOG_NORMAL;
        
        g_timeout_add(0, invoke_hook_cb, logtext);
-       
-       if (log_fp[instance]) {
+
+       if (log_fp[instance] && prefs_common_enable_log_standard()) {
                fputs(buf, log_fp[instance]);
                fflush(log_fp[instance]);
        }
@@ -172,7 +177,7 @@ void log_message(LogInstance instance, const gchar *format, ...)
        
        g_timeout_add(0, invoke_hook_cb, logtext);
 
-       if (log_fp[instance]) {
+       if (log_fp[instance] && prefs_common_enable_log_standard()) {
                fwrite(buf, 1, LOG_TIME_LEN, log_fp[instance]);
                fputs("* message: ", log_fp[instance]);
                fputs(buf + LOG_TIME_LEN, log_fp[instance]);
@@ -203,7 +208,7 @@ void log_warning(LogInstance instance, const gchar *format, ...)
        
        g_timeout_add(0, invoke_hook_cb, logtext);
 
-       if (log_fp[instance]) {
+       if (log_fp[instance] && prefs_common_enable_log_warning()) {
                fwrite(buf, 1, LOG_TIME_LEN, log_fp[instance]);
                fputs("** warning: ", log_fp[instance]);
                fputs(buf + LOG_TIME_LEN, log_fp[instance]);
@@ -234,7 +239,7 @@ void log_error(LogInstance instance, const gchar *format, ...)
        
        g_timeout_add(0, invoke_hook_cb, logtext);
 
-       if (log_fp[instance]) {
+       if (log_fp[instance] && prefs_common_enable_log_error()) {
                fwrite(buf, 1, LOG_TIME_LEN, log_fp[instance]);
                fputs("*** error: ", log_fp[instance]);
                fputs(buf + LOG_TIME_LEN, log_fp[instance]);
@@ -265,7 +270,7 @@ void log_status_ok(LogInstance instance, const gchar *format, ...)
        
        g_timeout_add(0, invoke_hook_cb, logtext);
 
-       if (log_fp[instance]) {
+       if (log_fp[instance] && prefs_common_enable_log_status()) {
                fwrite(buf, 1, LOG_TIME_LEN, log_fp[instance]);
                fputs("* OK: ", log_fp[instance]);
                fputs(buf + LOG_TIME_LEN, log_fp[instance]);
@@ -296,7 +301,7 @@ void log_status_nok(LogInstance instance, const gchar *format, ...)
        
        g_timeout_add(0, invoke_hook_cb, logtext);
 
-       if (log_fp[instance]) {
+       if (log_fp[instance] && prefs_common_enable_log_status()) {
                fwrite(buf, 1, LOG_TIME_LEN, log_fp[instance]);
                fputs("* NOT OK: ", log_fp[instance]);
                fputs(buf + LOG_TIME_LEN, log_fp[instance]);
@@ -327,7 +332,7 @@ void log_status_skip(LogInstance instance, const gchar *format, ...)
        
        g_timeout_add(0, invoke_hook_cb, logtext);
 
-       if (log_fp[instance]) {
+       if (log_fp[instance] && prefs_common_enable_log_status()) {
                fwrite(buf, 1, LOG_TIME_LEN, log_fp[instance]);
                fputs("* SKIPPED: ", log_fp[instance]);
                fputs(buf + LOG_TIME_LEN, log_fp[instance]);
index 9c0907cc706b03663077815fb9e3dfd72a6765f6..94b3fa1481bf7ea95b55626eecb7dea83e75519b 100644 (file)
@@ -805,11 +805,29 @@ static PrefParam param[] = {
        {"important_score", "1", &prefs_common.important_score, P_INT,
         NULL, NULL, NULL},
 
-    {"clip_log", "TRUE", &prefs_common.cliplog, P_BOOL,
+       {"clip_log", "TRUE", &prefs_common.cliplog, P_BOOL,
         NULL, NULL, NULL},
        {"log_length", "500", &prefs_common.loglength, P_INT,
         NULL, NULL, NULL},
-
+#ifndef MAEMO
+       {"enable_log_standard", "TRUE", &prefs_common.enable_log_standard, P_BOOL,
+        NULL, NULL, NULL},
+       {"enable_log_warning", "TRUE", &prefs_common.enable_log_warning, P_BOOL,
+        NULL, NULL, NULL},
+       {"enable_log_error", "TRUE", &prefs_common.enable_log_error, P_BOOL,
+        NULL, NULL, NULL},
+       {"enable_log_status", "TRUE", &prefs_common.enable_log_status, P_BOOL,
+        NULL, NULL, NULL},
+#else
+       {"enable_log_standard", "FALSE", &prefs_common.enable_log_standard, P_BOOL,
+        NULL, NULL, NULL},
+       {"enable_log_warning", "FALSE", &prefs_common.enable_log_warning, P_BOOL,
+        NULL, NULL, NULL},
+       {"enable_log_error", "FALSE", &prefs_common.enable_log_error, P_BOOL,
+        NULL, NULL, NULL},
+       {"enable_log_status", "FALSE", &prefs_common.enable_log_status, P_BOOL,
+        NULL, NULL, NULL},
+#endif
        {"log_msg_color", "#00af00", &prefs_common.log_msg_color, P_COLOR,
         NULL, NULL, NULL},
        {"log_warn_color", "#af0000", &prefs_common.log_warn_color, P_COLOR,
@@ -1342,6 +1360,23 @@ gboolean prefs_common_unsafe_ssl_certs(void)
        return prefs_common.unsafe_ssl_certs;
 }
 
+gboolean prefs_common_enable_log_standard(void)
+{
+       return prefs_common.enable_log_standard;
+}
+
+gboolean prefs_common_enable_log_warning(void)
+{
+       return prefs_common.enable_log_warning;
+}
+gboolean prefs_common_enable_log_error(void)
+{
+       return prefs_common.enable_log_error;
+}
+gboolean prefs_common_enable_log_status(void)
+{
+       return prefs_common.enable_log_status;
+}
 /**
    return the translated name of a header, if the translate_header option is
    set, otherwise return the untranslated header name (header_name itself).
index 71654270a01df3fd7419fe308cbbce05c8714752..1202b3fb310f9c6f2bedd4b9359f413b404880a0 100644 (file)
@@ -354,8 +354,12 @@ struct _PrefsCommon
        gchar *print_cmd;
        gchar *ext_editor_cmd;
 
-    gboolean cliplog;
-    guint loglength;
+       gboolean cliplog;
+       guint loglength;
+       gboolean enable_log_standard;
+       gboolean enable_log_warning;
+       gboolean enable_log_error;
+       gboolean enable_log_status;
 
        gulong log_msg_color;
        gulong log_warn_color;
index be372de8447703c2ee3795c7b27f6119d3fdeb60..f17d05c4250e9de968848da35efbc1f500501754 100644 (file)
@@ -50,6 +50,10 @@ typedef struct _LoggingPage
 
        GtkWidget *checkbtn_clip_network_log;
        GtkWidget *spinbtn_network_log_length;
+       GtkWidget *checkbtn_log_standard;
+       GtkWidget *checkbtn_log_warning;
+       GtkWidget *checkbtn_log_error;
+       GtkWidget *checkbtn_log_status;
        GtkWidget *checkbtn_clip_filtering_log;
        GtkWidget *spinbtn_filtering_log_length;
        GtkWidget *checkbtn_filtering_log;
@@ -75,7 +79,6 @@ static void prefs_logging_create_widget(PrefsPage *_page, GtkWindow *window,
        GtkWidget *spinbtn_network_log_length;
        GtkObject *spinbtn_network_log_length_adj;
        GtkTooltips *network_log_length_tooltip;
-       GtkWidget *label;
        GtkWidget *vbox1_filtering_log;
        GtkWidget *hbox_clip_filtering_log;
        GtkWidget *checkbtn_clip_filtering_log;
@@ -103,6 +106,18 @@ static void prefs_logging_create_widget(PrefsPage *_page, GtkWindow *window,
        GtkWidget *menu;
        GtkWidget *menuitem;
        GtkTooltips *filtering_log_level_tooltip;
+       GtkWidget *frame_disc_log;
+       GtkWidget *vbox_disc_log;
+       GtkWidget *label;
+       GtkWidget *hbox;
+       GtkWidget *checkbtn_log_standard;
+       GtkWidget *hbox_log_standard;
+       GtkWidget *checkbtn_log_warning;
+       GtkWidget *hbox_log_warning;
+       GtkWidget *checkbtn_log_error;
+       GtkWidget *hbox_log_error;
+       GtkWidget *checkbtn_log_status;
+       GtkWidget *hbox_log_status;
 
        vbox1 = gtk_vbox_new (FALSE, VSPACING);
        gtk_widget_show (vbox1);
@@ -262,10 +277,52 @@ static void prefs_logging_create_widget(PrefsPage *_page, GtkWindow *window,
        SET_TOGGLE_SENSITIVITY(checkbtn_filtering_log, checkbtn_clip_filtering_log);
        SET_TOGGLE_SENSITIVITY(checkbtn_filtering_log, label_filtering_log_level);
 
+       /* disk log */
+       vbox_disc_log = gtkut_get_options_frame(vbox1, &frame_disc_log, _("Disc log"));
+
+       label = gtk_label_new(_("Write the following information to disc..."));
+       gtk_widget_show(label);
+       hbox = gtk_hbox_new (FALSE, 8);
+       gtk_container_add (GTK_CONTAINER (vbox_disc_log), hbox);
+       gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
+       gtk_widget_show (hbox);
+
+       PACK_CHECK_BUTTON (vbox_disc_log, checkbtn_log_standard,
+                          _("Network protocol messages"));
+       hbox_log_standard = gtk_hbox_new (FALSE, 8);
+       gtk_container_add (GTK_CONTAINER (vbox_disc_log), hbox_log_standard);
+       gtk_widget_show (hbox_log_standard);
+
+       PACK_CHECK_BUTTON (vbox_disc_log, checkbtn_log_warning,
+                          _("Warning messages"));
+       hbox_log_warning = gtk_hbox_new (FALSE, 8);
+       gtk_container_add (GTK_CONTAINER (vbox_disc_log), hbox_log_warning);
+       gtk_widget_show (hbox_log_warning);
+
+       PACK_CHECK_BUTTON (vbox_disc_log, checkbtn_log_error,
+                          _("Error messages"));
+       hbox_log_error = gtk_hbox_new (FALSE, 8);
+       gtk_container_add (GTK_CONTAINER (vbox_disc_log), hbox_log_error);
+       gtk_widget_show (hbox_log_error);
+
+       PACK_CHECK_BUTTON (vbox_disc_log, checkbtn_log_status,
+                          _("Status messages for filtering/processing log"));
+       hbox_log_status = gtk_hbox_new (FALSE, 8);
+       gtk_container_add (GTK_CONTAINER (vbox_disc_log), hbox_log_status);
+       gtk_widget_show (hbox_log_status);
+
        gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbtn_clip_network_log), 
                prefs_common.cliplog);
        gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbtn_clip_filtering_log), 
                prefs_common.filtering_debug_cliplog);
+       gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbtn_log_standard), 
+               prefs_common.enable_log_standard);
+       gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbtn_log_warning), 
+               prefs_common.enable_log_warning);
+       gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbtn_log_error), 
+               prefs_common.enable_log_error);
+       gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbtn_log_status), 
+               prefs_common.enable_log_status);
        gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbtn_filtering_log), 
                prefs_common.enable_filtering_debug);
        gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbtn_filtering_log_inc), 
@@ -289,6 +346,10 @@ static void prefs_logging_create_widget(PrefsPage *_page, GtkWindow *window,
 
        prefs_logging->checkbtn_clip_network_log = checkbtn_clip_network_log;
        prefs_logging->spinbtn_network_log_length = spinbtn_network_log_length;
+       prefs_logging->checkbtn_log_standard = checkbtn_log_standard;
+       prefs_logging->checkbtn_log_warning = checkbtn_log_warning;
+       prefs_logging->checkbtn_log_error = checkbtn_log_error;
+       prefs_logging->checkbtn_log_status = checkbtn_log_status;
        prefs_logging->checkbtn_clip_filtering_log = checkbtn_clip_filtering_log;
        prefs_logging->spinbtn_filtering_log_length = spinbtn_filtering_log_length;
        prefs_logging->checkbtn_filtering_log = checkbtn_filtering_log;
@@ -319,6 +380,14 @@ static void prefs_logging_save(PrefsPage *_page)
                GTK_TOGGLE_BUTTON(page->checkbtn_clip_network_log));
        prefs_common.loglength = gtk_spin_button_get_value_as_int(
                GTK_SPIN_BUTTON(page->spinbtn_network_log_length));
+       prefs_common.enable_log_standard = gtk_toggle_button_get_active(
+               GTK_TOGGLE_BUTTON(page->checkbtn_log_standard));
+       prefs_common.enable_log_warning = gtk_toggle_button_get_active(
+               GTK_TOGGLE_BUTTON(page->checkbtn_log_warning));
+       prefs_common.enable_log_error = gtk_toggle_button_get_active(
+               GTK_TOGGLE_BUTTON(page->checkbtn_log_error));
+       prefs_common.enable_log_status = gtk_toggle_button_get_active(
+               GTK_TOGGLE_BUTTON(page->checkbtn_log_status));
        prefs_common.filtering_debug_cliplog = gtk_toggle_button_get_active(
                GTK_TOGGLE_BUTTON(page->checkbtn_clip_filtering_log));
        prefs_common.filtering_debug_loglength = gtk_spin_button_get_value_as_int(