summaryrefslogtreecommitdiff
path: root/ui/gtk/dissector_tables_dlg.c
diff options
context:
space:
mode:
authorMichael Mann <mmann78@netscape.net>2015-07-04 11:02:51 -0400
committerMichael Mann <mmann78@netscape.net>2015-07-04 15:33:27 +0000
commit4a2fe58df24f0ac7819cedd8aa7008a581c1fff0 (patch)
tree83492632fd037f620fa7b81525ae4d7f6b54ac00 /ui/gtk/dissector_tables_dlg.c
parentc5ec50ed1d9110e671bf3545608b335dbeb165b1 (diff)
downloadwireshark-4a2fe58df24f0ac7819cedd8aa7008a581c1fff0.tar.gz
Add "custom" dissector table tab to Internals->Dissector Tables dialog
Bug: 11334 Change-Id: I2af3e41643e4e92593ed0cfe070c4f7bcb450a06 Reviewed-on: https://code.wireshark.org/review/9493 Reviewed-by: Michael Mann <mmann78@netscape.net> Petri-Dish: Michael Mann <mmann78@netscape.net> Reviewed-by: Hadriel Kaplan <hadrielk@yahoo.com> Tested-by: Hadriel Kaplan <hadrielk@yahoo.com> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Diffstat (limited to 'ui/gtk/dissector_tables_dlg.c')
-rw-r--r--ui/gtk/dissector_tables_dlg.c26
1 files changed, 26 insertions, 0 deletions
diff --git a/ui/gtk/dissector_tables_dlg.c b/ui/gtk/dissector_tables_dlg.c
index 28eae3f3d9..05edd7c2a6 100644
--- a/ui/gtk/dissector_tables_dlg.c
+++ b/ui/gtk/dissector_tables_dlg.c
@@ -93,6 +93,7 @@ ui_sort_func(GtkTreeModel *model,
struct dissector_tables_trees {
GtkWidget *str_tree_wgt;
GtkWidget *uint_tree_wgt;
+ GtkWidget *custom_tree_wgt;
GtkWidget *heuristic_tree_wgt;
};
@@ -150,6 +151,10 @@ decode_proto_add_to_list (const gchar *table_name _U_, ftenum_t selector_type,
proto_add_to_list(tree_info, store, str, proto_name);
break;
+ case FT_BYTES:
+ proto_add_to_list(tree_info, store, (gchar*)dissector_handle_get_dissector_name(handle), proto_name);
+ break;
+
default:
g_assert_not_reached();
}
@@ -233,6 +238,9 @@ display_dissector_table_names(const char *table_name, const char *ui_name, gpoin
case FT_STRINGZPAD:
table_name_add_to_list(tree_info, dis_tbl_trees->str_tree_wgt, table_name, ui_name);
break;
+ case FT_BYTES:
+ table_name_add_to_list(tree_info, dis_tbl_trees->custom_tree_wgt, table_name, ui_name);
+ break;
default:
break;
}
@@ -350,6 +358,21 @@ dissector_tables_dlg_init(void)
gtk_box_pack_start(GTK_BOX(temp_page), scrolled_window, TRUE, TRUE, 0);
gtk_widget_show(scrolled_window);
+ /* custom tables */
+ temp_page = ws_gtk_box_new(GTK_ORIENTATION_VERTICAL, 6, FALSE);
+ tmp = gtk_label_new("Custom tables");
+ gtk_widget_show(tmp);
+ hbox = ws_gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 3, FALSE);
+ gtk_box_pack_start(GTK_BOX (hbox), tmp, TRUE, TRUE, 0);
+ gtk_notebook_append_page(GTK_NOTEBOOK(main_nb), temp_page, hbox);
+
+ scrolled_window = scrolled_window_new(NULL, NULL);
+ dis_tbl_trees.custom_tree_wgt = init_table();
+ gtk_widget_show(dis_tbl_trees.custom_tree_wgt);
+ gtk_container_add(GTK_CONTAINER(scrolled_window), dis_tbl_trees.custom_tree_wgt);
+ gtk_box_pack_start(GTK_BOX(temp_page), scrolled_window, TRUE, TRUE, 0);
+ gtk_widget_show(scrolled_window);
+
/* heuristic tables */
temp_page = ws_gtk_box_new(GTK_ORIENTATION_VERTICAL, 6, FALSE);
tmp = gtk_label_new("Heuristic tables");
@@ -380,6 +403,9 @@ dissector_tables_dlg_init(void)
sortable = GTK_TREE_SORTABLE(gtk_tree_view_get_model(GTK_TREE_VIEW(dis_tbl_trees.uint_tree_wgt)));
gtk_tree_sortable_set_sort_column_id(sortable, TABLE_UI_NAME_COL, GTK_SORT_ASCENDING);
+ sortable = GTK_TREE_SORTABLE(gtk_tree_view_get_model(GTK_TREE_VIEW(dis_tbl_trees.custom_tree_wgt)));
+ gtk_tree_sortable_set_sort_column_id(sortable, TABLE_UI_NAME_COL, GTK_SORT_ASCENDING);
+
sortable = GTK_TREE_SORTABLE(gtk_tree_view_get_model(GTK_TREE_VIEW(dis_tbl_trees.heuristic_tree_wgt)));
gtk_tree_sortable_set_sort_column_id(sortable, TABLE_UI_NAME_COL, GTK_SORT_ASCENDING);