summaryrefslogtreecommitdiff
path: root/ui/gtk/prefs_column.c
diff options
context:
space:
mode:
authorGerald Combs <gerald@wireshark.org>2013-01-23 19:04:36 +0000
committerGerald Combs <gerald@wireshark.org>2013-01-23 19:04:36 +0000
commit21e66f0c6f38d20dc4ac3968324fff0959113b14 (patch)
treee801135c51e407d67516e1969c1ef788af48292e /ui/gtk/prefs_column.c
parentd59e9cf574976b1e9849f5c35be1fd2abdf8ed6d (diff)
downloadwireshark-21e66f0c6f38d20dc4ac3968324fff0959113b14.tar.gz
Add column preferences.
svn path=/trunk/; revision=47231
Diffstat (limited to 'ui/gtk/prefs_column.c')
-rw-r--r--ui/gtk/prefs_column.c58
1 files changed, 4 insertions, 54 deletions
diff --git a/ui/gtk/prefs_column.c b/ui/gtk/prefs_column.c
index 3c2b868f29..3e0504b133 100644
--- a/ui/gtk/prefs_column.c
+++ b/ui/gtk/prefs_column.c
@@ -33,7 +33,9 @@
#include <epan/column.h>
#include <epan/strutil.h>
-#include "../globals.h"
+#include "globals.h"
+
+#include "ui/preference_utils.h"
#include "ui/gtk/prefs_column.h"
#include "ui/gtk/gtkglobals.h"
@@ -333,52 +335,6 @@ column_prefs_show(GtkWidget *prefs_window) {
return(main_vb);
}
-void
-column_prefs_add_custom(gint fmt, const gchar *title, const gchar *custom_field, gint custom_occurrence)
-{
- GList *clp;
- fmt_data *cfmt, *last_cfmt;
-
- cfmt = (fmt_data *) g_malloc(sizeof(fmt_data));
- /*
- * Because a single underscore is interpreted as a signal that the next character
- * is going to be marked as accelerator for this header (i.e. is going to be
- * shown underlined), escape it be inserting a second consecutive underscore.
- */
- cfmt->title = g_strdup(title);
- cfmt->fmt = fmt;
- cfmt->custom_field = g_strdup(custom_field);
- cfmt->custom_occurrence = custom_occurrence;
- cfmt->resolved = TRUE;
-
- if (custom_field) {
- cfmt->visible = TRUE;
- clp = g_list_last(prefs.col_list);
- last_cfmt = (fmt_data *) clp->data;
- if (last_cfmt->fmt == COL_INFO) {
- /* 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);
- }
- } else {
- cfmt->visible = FALSE; /* Will be set to TRUE in visible_toggled() when added to list */
- prefs.col_list = g_list_append(prefs.col_list, cfmt);
- }
-}
-
-void
-column_prefs_remove(gint col)
-{
- GList *clp = g_list_nth(prefs.col_list, col);
- fmt_data *cfmt = (fmt_data *) clp->data;
-
- g_free(cfmt->title);
- g_free(cfmt->custom_field);
- g_free(cfmt);
- prefs.col_list = g_list_remove_link(prefs.col_list, clp);
-}
-
/* To do: add input checking to each of these callbacks */
static void
@@ -424,7 +380,6 @@ static void
column_list_delete_cb(GtkWidget *w _U_, gpointer data) {
GtkTreeView *column_l = GTK_TREE_VIEW(data);
GList *clp;
- fmt_data *cfmt;
GtkTreeSelection *sel;
GtkTreeModel *model;
GtkTreeIter iter;
@@ -434,12 +389,7 @@ column_list_delete_cb(GtkWidget *w _U_, gpointer data) {
if (gtk_tree_selection_get_selected(sel, &model, &iter))
{
gtk_tree_model_get(model, &iter, DATA_COLUMN, &clp, -1);
-
- cfmt = (fmt_data *) clp->data;
- g_free(cfmt->title);
- g_free(cfmt->custom_field);
- g_free(cfmt);
- prefs.col_list = g_list_remove_link(prefs.col_list, clp);
+ column_prefs_remove_link(clp);
/* Change the row selection to the next row (if available) or */
/* the previous row (if available). If there's only one row */