aboutsummaryrefslogtreecommitdiffstats
path: root/gtk
diff options
context:
space:
mode:
authorStig Bjørlykke <stig@bjorlykke.org>2009-11-26 09:22:01 +0000
committerStig Bjørlykke <stig@bjorlykke.org>2009-11-26 09:22:01 +0000
commit8700f6658d7c34df97ec717cab94bf38d0962300 (patch)
tree67c48a618fffc9bf66d307a47b7e67e1f951989a /gtk
parent2e06779073d0aed5dac3ab39ee6d6f02b8309514 (diff)
Add custom column before COL_INFO if this is last.
svn path=/trunk/; revision=31088
Diffstat (limited to 'gtk')
-rw-r--r--gtk/prefs_column.c14
1 files changed, 11 insertions, 3 deletions
diff --git a/gtk/prefs_column.c b/gtk/prefs_column.c
index 5447beef3a..2905fb4c88 100644
--- a/gtk/prefs_column.c
+++ b/gtk/prefs_column.c
@@ -265,15 +265,23 @@ column_prefs_show(GtkWidget *prefs_window) {
void
column_prefs_add_custom(gint fmt, const gchar *title, const gchar *custom_field)
-{
- fmt_data *cfmt;
+{
+ GList *clp;
+ fmt_data *cfmt, *last_cfmt;
cfmt = (fmt_data *) g_malloc(sizeof(fmt_data));
cfmt->title = g_strdup(title);
cfmt->fmt = g_strdup(col_format_to_string(fmt));
cfmt->custom_field = g_strdup(custom_field);
- prefs.col_list = g_list_append(prefs.col_list, cfmt);
+ clp = g_list_last(prefs.col_list);
+ last_cfmt = (fmt_data *) clp->data;
+ if (strcmp(last_cfmt->fmt, "%i") == 0) {
+ /* Last column is COL_INFO, add custom column before this */
+ prefs.col_list = g_list_insert(prefs.col_list, cfmt, g_list_length(prefs.col_list)-1);
+ } else {
+ prefs.col_list = g_list_append(prefs.col_list, cfmt);
+ }
}
void