aboutsummaryrefslogtreecommitdiffstats
path: root/gtk
diff options
context:
space:
mode:
authorAnders Broman <anders.broman@ericsson.com>2009-09-25 05:19:18 +0000
committerAnders Broman <anders.broman@ericsson.com>2009-09-25 05:19:18 +0000
commitce39b29305dd7b45b3bd1d26a9ba9192eeb201be (patch)
tree505037215aa1091dd9538420931c8bc594b3fdd6 /gtk
parentf69d1f84b813ea02d2de3147b0e9137fbf1e4cc4 (diff)
downloadwireshark-ce39b29305dd7b45b3bd1d26a9ba9192eeb201be.tar.gz
wireshark-ce39b29305dd7b45b3bd1d26a9ba9192eeb201be.tar.bz2
wireshark-ce39b29305dd7b45b3bd1d26a9ba9192eeb201be.zip
Make the filter toolbar style a preference.
svn path=/trunk/; revision=30136
Diffstat (limited to 'gtk')
-rw-r--r--gtk/keys.h48
-rw-r--r--gtk/main_filter_toolbar.c14
-rw-r--r--gtk/main_toolbar.c11
-rw-r--r--gtk/prefs_gui.c28
-rw-r--r--gtk/prefs_layout.c23
5 files changed, 73 insertions, 51 deletions
diff --git a/gtk/keys.h b/gtk/keys.h
index cdc60c3374..99689a293b 100644
--- a/gtk/keys.h
+++ b/gtk/keys.h
@@ -57,10 +57,10 @@
#define AIRPCAP_TOOLBAR_CHANNEL_OFFSET_LABEL_KEY "airpcap_toolbar_ch_offset_lb_key"
#define AIRPCAP_TOOLBAR_FCS_CHECK_KEY "airpcap_toolbar_fcs_check_key"
#define AIRPCAP_TOOLBAR_FCS_FILTER_LABEL_KEY "airpcap_toolbar_fcs_filter_lb_key"
-#define AIRPCAP_TOOLBAR_FCS_FILTER_KEY "airpcap_toolbar_fcs_filter_key"
-#define AIRPCAP_TOOLBAR_ADVANCED_KEY "airpcap_toolbar_advanced_key"
-#define AIRPCAP_TOOLBAR_KEY_MANAGEMENT_KEY "airpcap_toolbar_key_management_key"
-#define AIRPCAP_TOOLBAR_DECRYPTION_KEY "airpcap_toolbar_decryption_key"
+#define AIRPCAP_TOOLBAR_FCS_FILTER_KEY "airpcap_toolbar_fcs_filter_key"
+#define AIRPCAP_TOOLBAR_ADVANCED_KEY "airpcap_toolbar_advanced_key"
+#define AIRPCAP_TOOLBAR_KEY_MANAGEMENT_KEY "airpcap_toolbar_key_management_key"
+#define AIRPCAP_TOOLBAR_DECRYPTION_KEY "airpcap_toolbar_decryption_key"
#define AIRPCAP_TOOLBAR_DECRYPTION_LABEL_KEY "airpcap_toolbar_decryption_lb_key"
#define AIRPCAP_ADVANCED_KEY "airpcap_advanced_key"
@@ -80,32 +80,36 @@
#define AIRPCAP_ADVANCED_ADD_KEY_KEY_LABEL_KEY "airpcap_advanced_add_key_key_label_key"
#define AIRPCAP_ADVANCED_ADD_KEY_SSID_LABEL_KEY "airpcap_advanced_add_key_ssid_label_key"
#define AIRPCAP_ADVANCED_EDIT_KEY_SELECTED_KEY "airpcap_advanced_edit_key_selected_key"
-#define AIRPCAP_ADVANCED_EDIT_KEY_OK_KEY "airpcap_advanced_edit_key_ok_key"
-#define AIRPCAP_ADVANCED_EDIT_KEY_LIST_KEY "airpcap_advanced_edit_key_list_key"
-#define AIRPCAP_ADVANCED_EDIT_KEY_TYPE_KEY "airpcap_advanced_edit_key_type_key"
-#define AIRPCAP_ADVANCED_EDIT_KEY_KEY_KEY "airpcap_advanced_edit_key_key_key"
-#define AIRPCAP_ADVANCED_EDIT_KEY_SSID_KEY "airpcap_advanced_edit_key_ssid_key"
+#define AIRPCAP_ADVANCED_EDIT_KEY_OK_KEY "airpcap_advanced_edit_key_ok_key"
+#define AIRPCAP_ADVANCED_EDIT_KEY_LIST_KEY "airpcap_advanced_edit_key_list_key"
+#define AIRPCAP_ADVANCED_EDIT_KEY_TYPE_KEY "airpcap_advanced_edit_key_type_key"
+#define AIRPCAP_ADVANCED_EDIT_KEY_KEY_KEY "airpcap_advanced_edit_key_key_key"
+#define AIRPCAP_ADVANCED_EDIT_KEY_SSID_KEY "airpcap_advanced_edit_key_ssid_key"
#define AIRPCAP_ADVANCED_EDIT_KEY_KEY_LABEL_KEY "airpcap_advanced_edit_key_key_label_key"
#define AIRPCAP_ADVANCED_EDIT_KEY_SSID_LABEL_KEY "airpcap_advanced_edit_key_ssid_label_key"
#define AIRPCAP_ADVANCED_DECRYPTION_MODE_KEY "airpcap_advanced_decryption_mode_key"
-#define AIRPCAP_ADVANCED_WPA_DECRYPTION_KEY "airpcap_advanced_wpa_decryption_key"
-#define AIRPCAP_ADVANCED_NOTEBOOK_KEY "airpcap_advanced_notebook_key"
-#define AIRPCAP_ADVANCED_CANCEL_KEY "airpcap_advanced_cancel_key"
-#define AIRPCAP_ADVANCED_OK_KEY "airpcap_advanced_ok_key"
-#define AIRPCAP_ADVANCED_KEYLIST_KEY "airpcap_advanced_keylist_key"
-#define AIRPCAP_CHECK_WINDOW_RADIO_KEEP_KEY "airpcap_check_window_radio_keep_key"
-#define AIRPCAP_CHECK_WINDOW_RADIO_MERGE_KEY "airpcap_check_window_radio_merge_key"
-#define AIRPCAP_CHECK_WINDOW_RADIO_IMPORT_KEY "airpcap_check_window_radio_import_key"
-#define AIRPCAP_CHECK_WINDOW_RADIO_IGNORE_KEY "airpcap_check_window_radio_ignore_key"
-#define AIRPCAP_CHECK_WINDOW_RADIO_GROUP_KEY "airpcap_check_window_radio_group_key"
+#define AIRPCAP_ADVANCED_WPA_DECRYPTION_KEY "airpcap_advanced_wpa_decryption_key"
+#define AIRPCAP_ADVANCED_NOTEBOOK_KEY "airpcap_advanced_notebook_key"
+#define AIRPCAP_ADVANCED_CANCEL_KEY "airpcap_advanced_cancel_key"
+#define AIRPCAP_ADVANCED_OK_KEY "airpcap_advanced_ok_key"
+#define AIRPCAP_ADVANCED_KEYLIST_KEY "airpcap_advanced_keylist_key"
+#define AIRPCAP_CHECK_WINDOW_RADIO_KEEP_KEY "airpcap_check_window_radio_keep_key"
+#define AIRPCAP_CHECK_WINDOW_RADIO_MERGE_KEY "airpcap_check_window_radio_merge_key"
+#define AIRPCAP_CHECK_WINDOW_RADIO_IMPORT_KEY "airpcap_check_window_radio_import_key"
+#define AIRPCAP_CHECK_WINDOW_RADIO_IGNORE_KEY "airpcap_check_window_radio_ignore_key"
+#define AIRPCAP_CHECK_WINDOW_RADIO_GROUP_KEY "airpcap_check_window_radio_group_key"
-#define AIRPCAP_CHECK_WINDOW_KEY "airpcap_check_window_key"
+#define AIRPCAP_CHECK_WINDOW_KEY "airpcap_check_window_key"
#define AIRPCAP_ADVANCED_SELECTED_KEY_LIST_ITEM_KEY "airpcap_advanced_selected_key_list_item_key"
-#define AIRPCAP_OPTIONS_ADVANCED_KEY "airpcap_options_advanced_key"
+#define AIRPCAP_OPTIONS_ADVANCED_KEY "airpcap_options_advanced_key"
+
+#define AIRPCAP_ADVANCED_FROM_KEY "airpcap_advanced_from_key"
+
+#define E_TB_MAIN_KEY "toolbar_main"
+#define E_TB_FILTER_KEY "toolbar_filter"
-#define AIRPCAP_ADVANCED_FROM_KEY "airpcap_advanced_from_key"
#endif
#endif
diff --git a/gtk/main_filter_toolbar.c b/gtk/main_filter_toolbar.c
index db614c81db..a7e7b04561 100644
--- a/gtk/main_filter_toolbar.c
+++ b/gtk/main_filter_toolbar.c
@@ -50,7 +50,6 @@
#include "main_toolbar.h"
#include "main_filter_toolbar.h"
-
GtkWidget *main_display_filter_widget=NULL;
/* Run the current display filter on the current packet set, and
@@ -80,7 +79,7 @@ filter_reset_cb(GtkWidget *w, gpointer data _U_)
GtkWidget *filter_toolbar_new()
{
- GtkWidget *filter_cm, *filter_te;
+ GtkWidget *filter_cm, *filter_te;
GtkWidget *filter_tb;
GList *dfilter_list = NULL;
GtkTooltips *tooltips;
@@ -104,9 +103,11 @@ GtkWidget *filter_toolbar_new()
filter_tb = gtk_toolbar_new();
gtk_toolbar_set_orientation(GTK_TOOLBAR(filter_tb),
GTK_ORIENTATION_HORIZONTAL);
- /* XXX make this a preference? */
- gtk_toolbar_set_style(GTK_TOOLBAR(filter_tb),
- GTK_TOOLBAR_TEXT);
+
+ //gtk_toolbar_set_style(GTK_TOOLBAR(filter_tb),
+ // GTK_TOOLBAR_TEXT);
+
+ g_object_set_data(G_OBJECT(top_level), E_TB_FILTER_KEY, filter_tb);
gtk_widget_show(filter_tb);
/* Create the "Filter:" button */
@@ -249,6 +250,9 @@ GtkWidget *filter_toolbar_new()
set_toolbar_object_data(E_DFILTER_TE_KEY, filter_te);
g_object_set_data(G_OBJECT(popup_menu_object), E_DFILTER_TE_KEY, filter_te);
+ /* make current preferences effective */
+ toolbar_redraw_all();
+
return filter_tb;
}
diff --git a/gtk/main_toolbar.c b/gtk/main_toolbar.c
index b16d905f2b..64dfe2fce3 100644
--- a/gtk/main_toolbar.c
+++ b/gtk/main_toolbar.c
@@ -65,9 +65,6 @@
#include "gtk/main_packet_list.h"
#endif
-/* XXX: add this key to some .h file, as it adds a key to the top level Widget? */
-#define E_TB_MAIN_KEY "toolbar_main"
-
static gboolean toolbar_init = FALSE;
#ifdef HAVE_LIBPCAP
@@ -87,17 +84,23 @@ static GtkToolItem *color_display_button, *prefs_button, *help_button;
/*
- * Redraw all toolbars (currently only the main toolbar)
+ * Redraw all toolbars
*/
void
toolbar_redraw_all(void)
{
GtkWidget *main_tb;
+ GtkWidget *filter_tb;
main_tb = g_object_get_data(G_OBJECT(top_level), E_TB_MAIN_KEY);
gtk_toolbar_set_style(GTK_TOOLBAR(main_tb),
prefs.gui_toolbar_main_style);
+
+ filter_tb = g_object_get_data(G_OBJECT(top_level), E_TB_FILTER_KEY);
+
+ gtk_toolbar_set_style(GTK_TOOLBAR(filter_tb),
+ prefs.gui_toolbar_filter_style);
}
/* Enable or disable toolbar items based on whether you have a capture file
diff --git a/gtk/prefs_gui.c b/gtk/prefs_gui.c
index 9fe35ad53b..b04d86bf8d 100644
--- a/gtk/prefs_gui.c
+++ b/gtk/prefs_gui.c
@@ -65,22 +65,22 @@ static gint recent_df_entries_changed_cb(GtkWidget *recent_df_entry _U_,
#define PLIST_SEL_BROWSE_KEY "plist_sel_browse"
#define PTREE_SEL_BROWSE_KEY "ptree_sel_browse"
#define GEOMETRY_POSITION_KEY "geometry_position"
-#define GEOMETRY_SIZE_KEY "geometry_size"
+#define GEOMETRY_SIZE_KEY "geometry_size"
#define GEOMETRY_MAXIMIZED_KEY "geometry_maximized"
-#define MACOSX_STYLE_KEY "macosx_style"
-
-#define GUI_CONSOLE_OPEN_KEY "console_open"
-#define GUI_FILEOPEN_KEY "fileopen_behavior"
-#define GUI_FILEOPEN_PREVIEW_KEY "fileopen_preview_timeout"
-#define GUI_RECENT_FILES_COUNT_KEY "recent_files_count"
-#define GUI_RECENT_DF_ENTRIES_KEY "recent_display_filter_entries"
-#define GUI_FILEOPEN_DIR_KEY "fileopen_directory"
-#define GUI_ASK_UNSAVED_KEY "ask_unsaved"
-#define GUI_WEBBROWSER_KEY "webbrowser"
-#define GUI_FIND_WRAP_KEY "find_wrap"
-#define GUI_USE_PREF_SAVE_KEY "use_pref_save"
-#define GUI_SHOW_VERSION_KEY "show_version"
+#define MACOSX_STYLE_KEY "macosx_style"
+
+#define GUI_CONSOLE_OPEN_KEY "console_open"
+#define GUI_FILEOPEN_KEY "fileopen_behavior"
+#define GUI_FILEOPEN_PREVIEW_KEY "fileopen_preview_timeout"
+#define GUI_RECENT_FILES_COUNT_KEY "recent_files_count"
+#define GUI_RECENT_DF_ENTRIES_KEY "recent_display_filter_entries"
+#define GUI_FILEOPEN_DIR_KEY "fileopen_directory"
+#define GUI_ASK_UNSAVED_KEY "ask_unsaved"
+#define GUI_WEBBROWSER_KEY "webbrowser"
+#define GUI_FIND_WRAP_KEY "find_wrap"
+#define GUI_USE_PREF_SAVE_KEY "use_pref_save"
+#define GUI_SHOW_VERSION_KEY "show_version"
static const enum_val_t scrollbar_placement_vals[] _U_ = {
{ "FALSE", "Left", FALSE },
diff --git a/gtk/prefs_layout.c b/gtk/prefs_layout.c
index 30da6b2891..3dbe8f1f79 100644
--- a/gtk/prefs_layout.c
+++ b/gtk/prefs_layout.c
@@ -252,10 +252,11 @@ layout_defaults_cb (GtkWidget * w _U_, gpointer data _U_)
#define HEX_DUMP_HIGHLIGHT_STYLE_KEY "hex_dump_highlight_style"
#define FILTER_TOOLBAR_PLACEMENT_KEY "filter_toolbar_show_in_statusbar"
#define GUI_TOOLBAR_STYLE_KEY "toolbar_style"
+#define GUI_FILTER_TOOLBAR_STYLE_KEY "filter_toolbar_style"
#define GUI_WINDOW_TITLE_KEY "window_title"
-#define GUI_TABLE_ROWS 5
+#define GUI_TABLE_ROWS 6
static const enum_val_t scrollbar_placement_vals[] = {
{ "FALSE", "Left", FALSE },
@@ -293,11 +294,12 @@ layout_prefs_show(void)
GtkWidget *default_vb, *default_bt;
GtkWidget *main_tb, *hbox;
GtkWidget *scrollbar_om;
- GtkWidget *altern_colors_om;
- GtkWidget *highlight_style_om;
- GtkWidget *toolbar_style_om;
- GtkWidget *filter_toolbar_placement_om;
- GtkWidget *window_title_te;
+ GtkWidget *altern_colors_om;
+ GtkWidget *highlight_style_om;
+ GtkWidget *toolbar_style_om;
+ GtkWidget *filter_toolbar_style_om;
+ GtkWidget *filter_toolbar_placement_om;
+ GtkWidget *window_title_te;
GtkTooltips *tooltips = gtk_tooltips_new();
@@ -414,6 +416,13 @@ layout_prefs_show(void)
toolbar_style_vals, prefs.gui_toolbar_main_style);
g_object_set_data(G_OBJECT(main_vb), GUI_TOOLBAR_STYLE_KEY, toolbar_style_om);
+ /* Filter toolbar prefs */
+ filter_toolbar_style_om = create_preference_option_menu(main_tb, pos++,
+ "Filter toolbar style:",
+ "Select the style in which the filter toolbar will be displayed.",
+ toolbar_style_vals, prefs.gui_toolbar_filter_style);
+ g_object_set_data(G_OBJECT(main_vb), GUI_FILTER_TOOLBAR_STYLE_KEY, filter_toolbar_style_om);
+
/* Placement of Filter toolbar */
filter_toolbar_placement_om = create_preference_option_menu(main_tb, pos++,
"Filter toolbar placement:",
@@ -465,6 +474,8 @@ layout_prefs_fetch(GtkWidget *w)
g_object_get_data(G_OBJECT(w), HEX_DUMP_HIGHLIGHT_STYLE_KEY), highlight_style_vals);
prefs.gui_toolbar_main_style = fetch_enum_value(
g_object_get_data(G_OBJECT(w), GUI_TOOLBAR_STYLE_KEY), toolbar_style_vals);
+ prefs.gui_toolbar_filter_style = fetch_enum_value(
+ g_object_get_data(G_OBJECT(w), GUI_FILTER_TOOLBAR_STYLE_KEY), toolbar_style_vals);
g_free(prefs.gui_window_title);
prefs.gui_window_title = g_strdup(gtk_entry_get_text(