diff options
author | Alexis La Goutte <alexis.lagoutte@gmail.com> | 2013-11-07 07:43:11 +0000 |
---|---|---|
committer | Alexis La Goutte <alexis.lagoutte@gmail.com> | 2013-11-07 07:43:11 +0000 |
commit | 49485528d80e3c90b13efd8af107af33884fbccd (patch) | |
tree | a5ae75e004feebb78462ac893c629463662dcc8d | |
parent | 62617896951192b6070632151ccf86b36d398728 (diff) |
Add Packet Editor Preference
svn path=/trunk/; revision=53134
-rw-r--r-- | epan/prefs.c | 5 | ||||
-rw-r--r-- | epan/prefs.h | 1 | ||||
-rw-r--r-- | ui/gtk/main_menubar.c | 2 | ||||
-rw-r--r-- | ui/gtk/prefs_gui.c | 11 |
4 files changed, 18 insertions, 1 deletions
diff --git a/epan/prefs.c b/epan/prefs.c index 793a345bfa..1476dc9e87 100644 --- a/epan/prefs.c +++ b/epan/prefs.c @@ -2321,6 +2321,10 @@ prefs_register_modules(void) "Layout content of the pane 3", (gint*)(void*)(&prefs.gui_layout_content_3), gui_layout_content, FALSE); + prefs_register_bool_preference(gui_module, "packet_editor.enabled", + "Enable Packet Editor", + "Enable Packet Editor (Experimental)", + &prefs.gui_packet_editor); /* Console * These are preferences that can be read/written using the * preference module API. These preferences still use their own @@ -2860,6 +2864,7 @@ pre_init_prefs(void) prefs.gui_layout_content_2 = layout_pane_content_pdetails; prefs.gui_layout_content_3 = layout_pane_content_pbytes; prefs.gui_qt_language = 0; /* (Auto-Detect) */ + prefs.gui_packet_editor = FALSE; prefs.col_list = NULL; for (i = 0; i < DEF_NUM_COLS; i++) { diff --git a/epan/prefs.h b/epan/prefs.h index 873c4d9b12..9b9b1a1000 100644 --- a/epan/prefs.h +++ b/epan/prefs.h @@ -207,6 +207,7 @@ typedef struct _e_prefs { gboolean unknown_prefs; /* unknown or obsolete pref(s) */ gboolean unknown_colorfilters; /* unknown or obsolete color filter(s) */ guint gui_qt_language; /* Qt Translation language selection */ + gboolean gui_packet_editor; /* Enable Packet Editor */ } e_prefs; WS_DLL_PUBLIC e_prefs prefs; diff --git a/ui/gtk/main_menubar.c b/ui/gtk/main_menubar.c index be5fc6c0d9..5ba99177d4 100644 --- a/ui/gtk/main_menubar.c +++ b/ui/gtk/main_menubar.c @@ -4965,7 +4965,7 @@ set_menus_for_selected_packet(capture_file *cf) frame_selected); #ifdef WANT_PACKET_EDITOR set_menu_sensitivity(ui_manager_main_menubar, "/Menubar/EditMenu/EditPacket", - frame_selected); + prefs.gui_packet_editor ? frame_selected : FALSE); #endif /* WANT_PACKET_EDITOR */ set_menu_sensitivity(ui_manager_main_menubar, "/Menubar/EditMenu/AddEditPktComment", frame_selected && wtap_dump_can_write(cf->linktypes, WTAP_COMMENT_PER_PACKET)); diff --git a/ui/gtk/prefs_gui.c b/ui/gtk/prefs_gui.c index e8e6b9e401..9cfb4ef1b0 100644 --- a/ui/gtk/prefs_gui.c +++ b/ui/gtk/prefs_gui.c @@ -86,6 +86,7 @@ static gint scroll_percent_changed_cb(GtkWidget *recent_df_entry _U_, #define GUI_EXPERT_EYECANDY_KEY "expert_eyecandy" #define GUI_AUTO_SCROLL_KEY "auto_scroll_on_expand" #define GUI_SCROLL_PERCENT_KEY "scroll_percent_on_expand" +#define GUI_PACKET_EDITOR "packet_editor" static const enum_val_t filter_toolbar_placement_vals[] _U_ = { { "FALSE", "Below the main toolbar", FALSE }, @@ -160,6 +161,7 @@ gui_prefs_show(void) GtkWidget *macosx_style_cb; #endif GtkWidget *expert_info_eyecandy_cb; + GtkWidget *packet_editor_cb; int pos = 0; char current_val_str[128]; @@ -340,6 +342,13 @@ gui_prefs_show(void) prefs.gui_expert_composite_eyecandy ); g_object_set_data(G_OBJECT(main_vb), GUI_EXPERT_EYECANDY_KEY, expert_info_eyecandy_cb); + /* Enable Experimental Packet Editor */ + packet_editor_cb = create_preference_check_button(main_grid, pos++, + "Enable Packet Editor (Experimental):", + "Activate Packet Editor (Experimental)", + prefs.gui_packet_editor); + g_object_set_data(G_OBJECT(main_vb), GUI_PACKET_EDITOR, packet_editor_cb); + /* Show 'em what we got */ gtk_widget_show_all(main_vb); @@ -408,6 +417,8 @@ gui_prefs_fetch(GtkWidget *w) prefs.gui_expert_composite_eyecandy = gtk_toggle_button_get_active((GtkToggleButton *)g_object_get_data(G_OBJECT(w), GUI_EXPERT_EYECANDY_KEY)); + prefs.gui_packet_editor = + gtk_toggle_button_get_active((GtkToggleButton *)g_object_get_data(G_OBJECT(w), GUI_PACKET_EDITOR)); } |