# HG changeset patch # User zas_ # Date 1235595278 0 # Node ID e4f9e3567f0a5f703746b02393736f358818f57d # Parent 50ab4016ae0bcb2b23f819a60ced22d89dbafef7 Save bar pane histogram state to rc file. diff -r 50ab4016ae0b -r e4f9e3567f0a src/bar_histogram.c --- a/src/bar_histogram.c Wed Feb 25 20:42:35 2009 +0000 +++ b/src/bar_histogram.c Wed Feb 25 20:54:38 2009 +0000 @@ -40,6 +40,8 @@ Histogram *histogram; gint histogram_width; gint histogram_height; + gint histogram_channel; + gint histogram_logmode; GdkPixbuf *pixbuf; FileData *fd; }; @@ -89,6 +91,8 @@ indent++; WRITE_CHAR(*phd, pane.title); WRITE_BOOL(*phd, pane.expanded); + WRITE_INT(*phd, histogram_channel); + WRITE_INT(*phd, histogram_logmode); indent--; WRITE_STRING("/>\n"); } @@ -163,6 +167,7 @@ if (channel == histogram_get_channel(phd->histogram)) return; histogram_set_channel(phd->histogram, channel); + phd->histogram_channel = channel; bar_pane_histogram_update(phd); } @@ -181,6 +186,7 @@ if (logmode == histogram_get_mode(phd->histogram)) return; histogram_set_mode(phd->histogram, logmode); + phd->histogram_logmode = logmode; bar_pane_histogram_update(phd); } @@ -288,7 +294,7 @@ } -GtkWidget *bar_pane_histogram_new(const gchar *title, gint height, gint expanded) +GtkWidget *bar_pane_histogram_new(const gchar *title, gint height, gint expanded, gint histogram_channel, gint histogram_logmode) { PaneHistogramData *phd; @@ -301,8 +307,8 @@ phd->histogram = histogram_new(); - histogram_set_channel(phd->histogram, HCHAN_RGB); - histogram_set_mode(phd->histogram, 0); + histogram_set_channel(phd->histogram, histogram_channel); + histogram_set_mode(phd->histogram, histogram_logmode); phd->widget = gtk_vbox_new(FALSE, PREF_PAD_GAP); @@ -338,6 +344,8 @@ gchar *title = g_strdup(_("NoName")); gboolean expanded = TRUE; gint height = 80; + gint histogram_channel = HCHAN_RGB; + gint histogram_logmode = 0; while (*attribute_names) { @@ -346,12 +354,14 @@ if (READ_CHAR_FULL("pane.title", title)) continue; if (READ_BOOL_FULL("pane.expanded", expanded)) continue; + if (READ_INT_FULL("histogram_channel", histogram_channel)) continue; + if (READ_INT_FULL("histogram_logmode", histogram_logmode)) continue; + - DEBUG_1("unknown attribute %s = %s", option, value); } - return bar_pane_histogram_new(title, height, expanded); + return bar_pane_histogram_new(title, height, expanded, histogram_channel, histogram_logmode); }