From 00be1d31ce580a6ad7ac37cb04d2dea9f20fa130 Mon Sep 17 00:00:00 2001 From: Balint Reczey Date: Fri, 21 Feb 2014 14:09:52 +0100 Subject: Migrate GTK icon handling to GTK 3.10 API GtkStockItem usage is deprecated with all the GTK_STOCK_.* stock ids. We keep a stock id based approach but without relying on GTK's GtkStockItem system. We create our own internal stock ids for {icon, label} tuples and keep the original GTK stock id #define-s and values to preserve backward compatibility. Change-Id: Ia0b35a5903f079e92c8026e3df21bbf0be2d06b0 Reviewed-on: https://code.wireshark.org/review/302 Reviewed-by: Gerald Combs Reviewed-by: Anders Broman --- ui/gtk/about_dlg.c | 1 + ui/gtk/airpcap_dlg.c | 10 +- ui/gtk/capture_dlg.c | 20 +- ui/gtk/capture_file_dlg.c | 4 +- ui/gtk/capture_if_dlg.c | 2 +- ui/gtk/color_dlg.c | 20 +- ui/gtk/color_edit_dlg.c | 2 +- ui/gtk/compare_stat.c | 2 +- ui/gtk/dcerpc_stat.c | 2 +- ui/gtk/decode_as_dlg.c | 3 +- ui/gtk/dlg_utils.c | 12 +- ui/gtk/export_pdu_dlg.c | 2 +- ui/gtk/file_import_dlg.c | 2 +- ui/gtk/filter_dlg.c | 6 +- ui/gtk/find_dlg.c | 2 +- ui/gtk/flow_graph.c | 4 +- ui/gtk/follow_stream.c | 6 +- ui/gtk/graph_analysis.c | 5 +- ui/gtk/iax2_analysis.c | 7 +- ui/gtk/io_stat.c | 2 +- ui/gtk/main_filter_toolbar.c | 10 +- ui/gtk/main_menubar.c | 2 +- ui/gtk/main_statusbar.c | 3 +- ui/gtk/main_toolbar.c | 4 +- ui/gtk/main_welcome.c | 2 +- ui/gtk/mcast_stream.c | 1 + ui/gtk/mcast_stream_dlg.c | 7 +- ui/gtk/packet_win.c | 9 + ui/gtk/prefs_capture.c | 4 +- ui/gtk/prefs_column.c | 5 +- ui/gtk/prefs_dlg.c | 4 +- ui/gtk/prefs_filter_expressions.c | 5 +- ui/gtk/print_dlg.c | 2 +- ui/gtk/profile_dlg.c | 7 +- ui/gtk/rpc_stat.c | 2 +- ui/gtk/rtp_analysis.c | 8 +- ui/gtk/rtp_player.c | 10 +- ui/gtk/rtp_stream_dlg.c | 12 +- ui/gtk/sctp_assoc_analyse.c | 7 +- ui/gtk/sctp_byte_graph_dlg.c | 3 +- ui/gtk/sctp_chunk_stat_dlg.c | 5 +- ui/gtk/sctp_error_dlg.c | 3 +- ui/gtk/sctp_graph_dlg.c | 3 +- ui/gtk/sctp_stat_dlg.c | 3 +- ui/gtk/simple_dialog.c | 10 +- ui/gtk/stock_icons.c | 575 +++++++++++++++++++++++++++----------- ui/gtk/stock_icons.h | 565 +++++++++++++++++++++++++++++++++++++ ui/gtk/tap_param_dlg.c | 2 +- ui/gtk/uat_gui.c | 16 +- ui/gtk/voip_calls_dlg.c | 10 +- 50 files changed, 1124 insertions(+), 289 deletions(-) (limited to 'ui') diff --git a/ui/gtk/about_dlg.c b/ui/gtk/about_dlg.c index 3b76345cec..26333f9422 100644 --- a/ui/gtk/about_dlg.c +++ b/ui/gtk/about_dlg.c @@ -54,6 +54,7 @@ #include "ui/gtk/main.h" #include "ui/gtk/plugins_dlg.h" #include "ui/gtk/gui_utils.h" +#include "ui/gtk/stock_icons.h" #include "ui/gtk/wssplash.h" #include "webbrowser.h" diff --git a/ui/gtk/airpcap_dlg.c b/ui/gtk/airpcap_dlg.c index c1943f4a5f..c3f114c115 100644 --- a/ui/gtk/airpcap_dlg.c +++ b/ui/gtk/airpcap_dlg.c @@ -2147,31 +2147,31 @@ display_airpcap_key_management_cb(GtkWidget *w _U_, gpointer data) gtk_box_pack_start (GTK_BOX (keys_v_sub_box), key_v_button_box, FALSE, TRUE, 0); - add_new_key_bt = gtk_button_new_from_stock(GTK_STOCK_NEW); + add_new_key_bt = ws_gtk_button_new_from_stock(GTK_STOCK_NEW); gtk_widget_set_name (add_new_key_bt, "add_new_key_bt"); gtk_widget_show (add_new_key_bt); gtk_container_add (GTK_CONTAINER (key_v_button_box), add_new_key_bt); gtk_widget_set_can_default (add_new_key_bt, TRUE); - edit_key_bt = gtk_button_new_from_stock(WIRESHARK_STOCK_EDIT); + edit_key_bt = ws_gtk_button_new_from_stock(WIRESHARK_STOCK_EDIT); gtk_widget_set_name (edit_key_bt, "edit_key_bt"); gtk_widget_show (edit_key_bt); gtk_container_add (GTK_CONTAINER (key_v_button_box), edit_key_bt); gtk_widget_set_can_default (edit_key_bt, TRUE); - remove_key_bt = gtk_button_new_from_stock(GTK_STOCK_DELETE); + remove_key_bt = ws_gtk_button_new_from_stock(GTK_STOCK_DELETE); gtk_widget_set_name (remove_key_bt, "remove_key_bt"); gtk_widget_show (remove_key_bt); gtk_container_add (GTK_CONTAINER (key_v_button_box), remove_key_bt); gtk_widget_set_can_default (remove_key_bt, TRUE); - move_key_up_bt = gtk_button_new_from_stock(GTK_STOCK_GO_UP); + move_key_up_bt = ws_gtk_button_new_from_stock(GTK_STOCK_GO_UP); gtk_widget_set_name (move_key_up_bt, "move_key_up_bt"); gtk_widget_show (move_key_up_bt); gtk_container_add (GTK_CONTAINER (key_v_button_box), move_key_up_bt); gtk_widget_set_can_default (move_key_up_bt, TRUE); - move_key_down_bt = gtk_button_new_from_stock(GTK_STOCK_GO_DOWN); + move_key_down_bt = ws_gtk_button_new_from_stock(GTK_STOCK_GO_DOWN); gtk_widget_set_name (move_key_down_bt, "move_key_down_bt"); gtk_widget_show (move_key_down_bt); gtk_container_add (GTK_CONTAINER (key_v_button_box), move_key_down_bt); diff --git a/ui/gtk/capture_dlg.c b/ui/gtk/capture_dlg.c index a3a011100e..5ff27873a2 100644 --- a/ui/gtk/capture_dlg.c +++ b/ui/gtk/capture_dlg.c @@ -2892,7 +2892,7 @@ void options_interface_cb(GtkTreeView *view, GtkTreePath *path, GtkTreeViewColum filter_hb = ws_gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 3, FALSE); gtk_box_pack_start(GTK_BOX(capture_vb), filter_hb, FALSE, FALSE, 0); - filter_bt = gtk_button_new_from_stock(WIRESHARK_STOCK_CAPTURE_FILTER_ENTRY); + filter_bt = ws_gtk_button_new_from_stock(WIRESHARK_STOCK_CAPTURE_FILTER_ENTRY); g_signal_connect(filter_bt, "clicked", G_CALLBACK(capture_filter_construct_cb), NULL); g_signal_connect(filter_bt, "destroy", G_CALLBACK(filter_button_destroy_cb), NULL); gtk_widget_set_tooltip_text(filter_bt, @@ -4073,13 +4073,13 @@ show_add_interfaces_dialog(GtkWidget *bt _U_, GtkWidget *parent_win) gtk_container_add(GTK_CONTAINER(edit_fr), list_bb); gtk_widget_show(list_bb); - new_bt = gtk_button_new_from_stock(GTK_STOCK_NEW); + new_bt = ws_gtk_button_new_from_stock(GTK_STOCK_NEW); g_signal_connect(new_bt, "clicked", G_CALLBACK(pipe_new_bt_clicked_cb), NULL); gtk_widget_show(new_bt); gtk_box_pack_start (GTK_BOX (list_bb), new_bt, FALSE, FALSE, 0); gtk_widget_set_tooltip_text (new_bt, "Add a new pipe (with default properties)"); - del_bt = gtk_button_new_from_stock(GTK_STOCK_DELETE); + del_bt = ws_gtk_button_new_from_stock(GTK_STOCK_DELETE); g_signal_connect(del_bt, "clicked", G_CALLBACK(pipe_del_bt_clicked_cb), NULL); gtk_widget_show(del_bt); gtk_widget_set_sensitive(del_bt, FALSE); @@ -4141,7 +4141,7 @@ show_add_interfaces_dialog(GtkWidget *bt _U_, GtkWidget *parent_win) ); gtk_box_pack_start(GTK_BOX(middle_hb), pipe_te, TRUE, TRUE, 3); gtk_widget_set_sensitive(pipe_te, FALSE); - pipe_bt = gtk_button_new_from_stock(WIRESHARK_STOCK_BROWSE); + pipe_bt = ws_gtk_button_new_from_stock(WIRESHARK_STOCK_BROWSE); gtk_widget_set_tooltip_text(GTK_WIDGET(pipe_bt), "Select a pipe from which data should be captured, " "instead of entering the pipe name directly. " @@ -4313,14 +4313,14 @@ show_add_interfaces_dialog(GtkWidget *bt _U_, GtkWidget *parent_win) gtk_widget_show(help_hbox); gtk_box_set_spacing(GTK_BOX(help_hbox), DLG_BUTTON_SPACING); - add_but = gtk_button_new_from_stock(GTK_STOCK_ADD); + add_but = ws_gtk_button_new_from_stock(GTK_STOCK_ADD); g_object_set_data(G_OBJECT(bbox), GTK_STOCK_ADD, add_but); gtk_box_pack_start(GTK_BOX(help_hbox), add_but, FALSE, FALSE, 0); g_signal_connect(add_but, "clicked", G_CALLBACK(show_remote_dialog), NULL); gtk_widget_set_tooltip_text(GTK_WIDGET(add_but), "Add a remote host to the list"); gtk_widget_show(add_but); - delete_bt = gtk_button_new_from_stock(GTK_STOCK_DELETE); + delete_bt = ws_gtk_button_new_from_stock(GTK_STOCK_DELETE); g_object_set_data(G_OBJECT(bbox), GTK_STOCK_DELETE, delete_bt); gtk_box_pack_start(GTK_BOX(help_hbox), delete_bt, FALSE, FALSE, 0); g_signal_connect(delete_bt, "clicked", G_CALLBACK(remove_remote_host), NULL); @@ -4329,13 +4329,13 @@ show_add_interfaces_dialog(GtkWidget *bt _U_, GtkWidget *parent_win) g_object_set_data(G_OBJECT(interface_management_w), E_REMOTE_DEL_BT_KEY, delete_bt); gtk_widget_show(delete_bt); - ok_but = gtk_button_new_from_stock(GTK_STOCK_APPLY); + ok_but = ws_gtk_button_new_from_stock(GTK_STOCK_APPLY); gtk_box_pack_end(GTK_BOX(button_hbox), ok_but, FALSE, FALSE, 0); g_signal_connect(GTK_WIDGET(ok_but), "clicked", G_CALLBACK(ok_remote_cb), NULL); gtk_widget_set_tooltip_text(GTK_WIDGET(ok_but), "Apply the changes to the general list of local interfaces"); gtk_widget_show(ok_but); - cancel_bt = gtk_button_new_from_stock(GTK_STOCK_CLOSE); + cancel_bt = ws_gtk_button_new_from_stock(GTK_STOCK_CLOSE); gtk_box_pack_end(GTK_BOX(button_hbox), cancel_bt, FALSE, FALSE, 0); g_signal_connect(GTK_WIDGET(cancel_bt), "clicked", G_CALLBACK(cancel_pipe_cb), interface_management_w); gtk_widget_set_tooltip_text(GTK_WIDGET(cancel_bt), "Cancel and exit dialog."); @@ -4837,7 +4837,7 @@ capture_prep_cb(GtkWidget *w _U_, gpointer d _U_) all_filter_hb = ws_gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0, FALSE); gtk_box_pack_start(GTK_BOX(all_vb), all_filter_hb, FALSE, FALSE, DLG_LABEL_SPACING); - all_filter_bt = gtk_button_new_from_stock(WIRESHARK_STOCK_CAPTURE_FILTER_ENTRY); + all_filter_bt = ws_gtk_button_new_from_stock(WIRESHARK_STOCK_CAPTURE_FILTER_ENTRY); g_signal_connect(all_filter_bt, "clicked", G_CALLBACK(capture_filter_construct_cb), NULL); g_signal_connect(all_filter_bt, "destroy", G_CALLBACK(filter_button_destroy_cb), NULL); gtk_widget_set_tooltip_text(all_filter_bt, @@ -4914,7 +4914,7 @@ capture_prep_cb(GtkWidget *w _U_, gpointer d _U_) ); gtk_box_pack_start(GTK_BOX(file_hb), file_te, TRUE, TRUE, 3); - file_bt = gtk_button_new_from_stock(WIRESHARK_STOCK_BROWSE); + file_bt = ws_gtk_button_new_from_stock(WIRESHARK_STOCK_BROWSE); gtk_widget_set_tooltip_text(file_bt, "Select a file to which captured data will be written, " "instead of entering the file name directly. " diff --git a/ui/gtk/capture_file_dlg.c b/ui/gtk/capture_file_dlg.c index f7de3eea23..e350342c0a 100644 --- a/ui/gtk/capture_file_dlg.c +++ b/ui/gtk/capture_file_dlg.c @@ -565,7 +565,7 @@ gtk_open_file(GtkWidget *w, GString *file_name, gint *type, GString *display_fil gtk_box_pack_start(GTK_BOX(main_vb), filter_hbox, FALSE, FALSE, 0); gtk_widget_show(filter_hbox); - filter_bt = gtk_button_new_from_stock(WIRESHARK_STOCK_DISPLAY_FILTER_ENTRY); + filter_bt = ws_gtk_button_new_from_stock(WIRESHARK_STOCK_DISPLAY_FILTER_ENTRY); g_signal_connect(filter_bt, "clicked", G_CALLBACK(display_filter_construct_cb), &args); g_signal_connect(filter_bt, "destroy", @@ -836,7 +836,7 @@ gtk_merge_file(GtkWidget *w, GString *file_name, GString *display_filter, int *m gtk_box_pack_start(GTK_BOX(main_vb), filter_hbox, FALSE, FALSE, 0); gtk_widget_show(filter_hbox); - filter_bt = gtk_button_new_from_stock(WIRESHARK_STOCK_DISPLAY_FILTER_ENTRY); + filter_bt = ws_gtk_button_new_from_stock(WIRESHARK_STOCK_DISPLAY_FILTER_ENTRY); g_signal_connect(filter_bt, "clicked", G_CALLBACK(display_filter_construct_cb), &args); g_signal_connect(filter_bt, "destroy", diff --git a/ui/gtk/capture_if_dlg.c b/ui/gtk/capture_if_dlg.c index 42d4ae93d6..a1caed1104 100644 --- a/ui/gtk/capture_if_dlg.c +++ b/ui/gtk/capture_if_dlg.c @@ -804,7 +804,7 @@ capture_if_refresh_if_list(void) /* details button */ #ifdef _WIN32 - data.details_bt = gtk_button_new_from_stock(WIRESHARK_STOCK_CAPTURE_DETAILS); + data.details_bt = ws_gtk_button_new_from_stock(WIRESHARK_STOCK_CAPTURE_DETAILS); gtk_widget_set_tooltip_text(data.details_bt, "Open the capture details dialog of this interface."); ws_gtk_grid_attach_extended(GTK_GRID(if_grid), data.details_bt, 8, row, 1, 1, 0, 0, 0, 0); if (capture_if_has_details(device.name)) { diff --git a/ui/gtk/color_dlg.c b/ui/gtk/color_dlg.c index 9ca2d08765..77929fd137 100644 --- a/ui/gtk/color_dlg.c +++ b/ui/gtk/color_dlg.c @@ -232,26 +232,26 @@ colorize_dialog_new (char *filter) gtk_container_set_border_width (GTK_CONTAINER (edit_vbox), 5); gtk_container_add(GTK_CONTAINER(edit_fr), edit_vbox); - color_new = gtk_button_new_from_stock(GTK_STOCK_NEW); + color_new = ws_gtk_button_new_from_stock(GTK_STOCK_NEW); gtk_box_pack_start (GTK_BOX (edit_vbox), color_new, FALSE, FALSE, 5); gtk_widget_set_tooltip_text(color_new, "Create a new filter at the top of the list"); - color_edit = gtk_button_new_from_stock(WIRESHARK_STOCK_EDIT); + color_edit = ws_gtk_button_new_from_stock(WIRESHARK_STOCK_EDIT); gtk_box_pack_start (GTK_BOX (edit_vbox), color_edit, FALSE, FALSE, 5); gtk_widget_set_tooltip_text(color_edit, " If more than one filter is selected, edit the first selected one"); gtk_widget_set_sensitive (color_edit, FALSE); - color_enable = gtk_button_new_from_stock(WIRESHARK_STOCK_ENABLE); + color_enable = ws_gtk_button_new_from_stock(WIRESHARK_STOCK_ENABLE); gtk_box_pack_start (GTK_BOX (edit_vbox), color_enable, FALSE, FALSE, 5); gtk_widget_set_tooltip_text(color_enable, "Enable the selected filter(s)"); gtk_widget_set_sensitive (color_enable, FALSE); - color_disable = gtk_button_new_from_stock(WIRESHARK_STOCK_DISABLE); + color_disable = ws_gtk_button_new_from_stock(WIRESHARK_STOCK_DISABLE); gtk_box_pack_start (GTK_BOX (edit_vbox), color_disable, FALSE, FALSE, 5); gtk_widget_set_tooltip_text(color_disable, "Disable the selected filter(s)"); gtk_widget_set_sensitive (color_disable, FALSE); - color_delete = gtk_button_new_from_stock(GTK_STOCK_DELETE); + color_delete = ws_gtk_button_new_from_stock(GTK_STOCK_DELETE); gtk_box_pack_start (GTK_BOX (edit_vbox), color_delete, FALSE, FALSE, 5); gtk_widget_set_tooltip_text(color_delete, "Delete the selected filter(s)"); gtk_widget_set_sensitive (color_delete, FALSE); @@ -266,13 +266,13 @@ colorize_dialog_new (char *filter) gtk_container_set_border_width (GTK_CONTAINER (manage_vbox), 5); gtk_container_add(GTK_CONTAINER(manage_fr), manage_vbox); - color_import = gtk_button_new_from_stock(WIRESHARK_STOCK_IMPORT); + color_import = ws_gtk_button_new_from_stock(WIRESHARK_STOCK_IMPORT); gtk_box_pack_start (GTK_BOX (manage_vbox), color_import, FALSE, FALSE, 5); gtk_widget_set_tooltip_text(color_import, "Load filters from a file and append them to the list"); - color_export = gtk_button_new_from_stock(WIRESHARK_STOCK_EXPORT); + color_export = ws_gtk_button_new_from_stock(WIRESHARK_STOCK_EXPORT); gtk_box_pack_start (GTK_BOX (manage_vbox), color_export, FALSE, FALSE, 5); gtk_widget_set_tooltip_text(color_export, "Save all/selected filters to a file"); - color_clear = gtk_button_new_from_stock(GTK_STOCK_CLEAR); + color_clear = ws_gtk_button_new_from_stock(GTK_STOCK_CLEAR); gtk_box_pack_start(GTK_BOX (manage_vbox), color_clear, FALSE, FALSE, 5); gtk_widget_set_tooltip_text(color_clear, "Clear the filter list and revert to system-wide default filter set"); @@ -339,7 +339,7 @@ colorize_dialog_new (char *filter) gtk_container_set_border_width (GTK_CONTAINER (order_vbox), 5); gtk_container_add(GTK_CONTAINER(order_fr), order_vbox); - color_filter_up = gtk_button_new_from_stock(GTK_STOCK_GO_UP); + color_filter_up = ws_gtk_button_new_from_stock(GTK_STOCK_GO_UP); gtk_box_pack_start (GTK_BOX (order_vbox), color_filter_up, FALSE, FALSE, 0); gtk_widget_set_tooltip_text(color_filter_up, "Move filter higher in list"); gtk_widget_set_sensitive (color_filter_up, FALSE); @@ -347,7 +347,7 @@ colorize_dialog_new (char *filter) order_move_label = gtk_label_new (("Move\nselected filter\nup or down")); gtk_box_pack_start (GTK_BOX (order_vbox), order_move_label, FALSE, FALSE, 0); - color_filter_down = gtk_button_new_from_stock(GTK_STOCK_GO_DOWN); + color_filter_down = ws_gtk_button_new_from_stock(GTK_STOCK_GO_DOWN); gtk_box_pack_start (GTK_BOX (order_vbox), color_filter_down, FALSE, FALSE, 0); gtk_widget_set_tooltip_text(color_filter_down, "Move filter lower in list"); gtk_widget_set_sensitive (color_filter_down, FALSE); diff --git a/ui/gtk/color_edit_dlg.c b/ui/gtk/color_edit_dlg.c index a8770d187d..481f4e51ed 100644 --- a/ui/gtk/color_edit_dlg.c +++ b/ui/gtk/color_edit_dlg.c @@ -272,7 +272,7 @@ color_edit_dlg_new(GtkWidget *color_filters, /* Create the "Add Expression..." button, to pop up a dialog for constructing filter comparison expressions. */ - add_expression_bt = gtk_button_new_from_stock(WIRESHARK_STOCK_ADD_EXPRESSION); + add_expression_bt = ws_gtk_button_new_from_stock(WIRESHARK_STOCK_ADD_EXPRESSION); g_signal_connect(add_expression_bt, "clicked", G_CALLBACK(filter_expr_cb), filt_text_entry); gtk_box_pack_start (GTK_BOX(filter_string_hbox), add_expression_bt, FALSE, FALSE, 3); gtk_widget_set_tooltip_text(add_expression_bt, "Add an expression to the filter string"); diff --git a/ui/gtk/compare_stat.c b/ui/gtk/compare_stat.c index c90f55456b..df485c78dd 100644 --- a/ui/gtk/compare_stat.c +++ b/ui/gtk/compare_stat.c @@ -1001,7 +1001,7 @@ gtk_comparestat_cb(GtkAction *action _U_, gpointer user_data _U_) filter_box=ws_gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 3, FALSE); /* filter label */ - filter_bt=gtk_button_new_from_stock(WIRESHARK_STOCK_DISPLAY_FILTER_ENTRY); + filter_bt=ws_gtk_button_new_from_stock(WIRESHARK_STOCK_DISPLAY_FILTER_ENTRY); g_signal_connect(filter_bt, "clicked", G_CALLBACK(display_filter_construct_cb), &args); gtk_box_pack_start(GTK_BOX(filter_box), filter_bt, FALSE, TRUE, 0); gtk_widget_show(filter_bt); diff --git a/ui/gtk/dcerpc_stat.c b/ui/gtk/dcerpc_stat.c index ca8c313ae0..0fb8ee4464 100644 --- a/ui/gtk/dcerpc_stat.c +++ b/ui/gtk/dcerpc_stat.c @@ -658,7 +658,7 @@ void gtk_dcerpcstat_cb(GtkAction *action _U_, gpointer user_data _U_) filter_box = ws_gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 3, FALSE); /* Filter label */ - filter_bt = gtk_button_new_from_stock(WIRESHARK_STOCK_DISPLAY_FILTER_ENTRY); + filter_bt = ws_gtk_button_new_from_stock(WIRESHARK_STOCK_DISPLAY_FILTER_ENTRY); g_signal_connect(filter_bt, "clicked", G_CALLBACK(display_filter_construct_cb), &args); gtk_box_pack_start(GTK_BOX(filter_box), filter_bt, FALSE, FALSE, 0); gtk_widget_show(filter_bt); diff --git a/ui/gtk/decode_as_dlg.c b/ui/gtk/decode_as_dlg.c index 5dd4642bfa..afae7b7ffc 100644 --- a/ui/gtk/decode_as_dlg.c +++ b/ui/gtk/decode_as_dlg.c @@ -43,6 +43,7 @@ #include "ui/gtk/help_dlg.h" #include "ui/gtk/old-gtk-compat.h" #include "ui/gtk/packet_win.h" +#include "ui/gtk/stock_icons.h" #undef DEBUG @@ -1410,7 +1411,7 @@ decode_as_cb (GtkWidget * w _U_, gpointer user_data _U_) gtk_widget_set_tooltip_text(button, "Open a dialog showing the current settings.\n" "Note you need to select and press apply first to be able to save the current setting"); - button = gtk_button_new_from_stock(GTK_STOCK_CLEAR); + button = ws_gtk_button_new_from_stock(GTK_STOCK_CLEAR); g_signal_connect(button, "clicked", G_CALLBACK(decode_clear_cb), NULL); gtk_widget_set_can_default(button, TRUE); gtk_box_pack_end(GTK_BOX(button_vb), button, FALSE, FALSE, 0); diff --git a/ui/gtk/dlg_utils.c b/ui/gtk/dlg_utils.c index f6b49fd8ca..36fb2c90ea 100644 --- a/ui/gtk/dlg_utils.c +++ b/ui/gtk/dlg_utils.c @@ -44,7 +44,7 @@ dlg_button_new(GtkWidget *hbox, GtkWidget *button_hbox, const gchar *stock_id) { GtkWidget *button; - button = gtk_button_new_from_stock(stock_id); + button = ws_gtk_button_new_from_stock(stock_id); gtk_widget_set_can_default(button, TRUE); g_object_set_data(G_OBJECT(hbox), stock_id, button); gtk_box_pack_end(GTK_BOX(button_hbox), button, FALSE, FALSE, 0); @@ -248,7 +248,7 @@ dlg_button_row_new(const gchar *stock_id_first, ...) /* do we have a help button? -> special handling for it */ if (help) { - button = gtk_button_new_from_stock(help); + button = ws_gtk_button_new_from_stock(help); gtk_widget_set_can_default(button, TRUE); g_object_set_data(G_OBJECT(hbox), help, button); gtk_box_pack_start(GTK_BOX(help_hbox), button, FALSE, FALSE, 0); @@ -258,7 +258,7 @@ dlg_button_row_new(const gchar *stock_id_first, ...) /* do we have a copy button? -> special handling for it */ if (copy) { - button = gtk_button_new_from_stock(copy); + button = ws_gtk_button_new_from_stock(copy); gtk_widget_set_can_default(button, TRUE); g_object_set_data(G_OBJECT(hbox), copy, button); gtk_box_pack_start(GTK_BOX(help_hbox), button, FALSE, FALSE, 0); @@ -268,7 +268,7 @@ dlg_button_row_new(const gchar *stock_id_first, ...) /* do we have a refresh button? -> special handling for it */ if (refresh) { - button = gtk_button_new_from_stock(refresh); + button = ws_gtk_button_new_from_stock(refresh); g_object_set_data(G_OBJECT(hbox), refresh, button); gtk_box_pack_start(GTK_BOX(help_hbox), button, FALSE, FALSE, 0); gtk_widget_show(button); @@ -277,7 +277,7 @@ dlg_button_row_new(const gchar *stock_id_first, ...) /* do we have an add button? -> special handling for it */ if (add) { - button = gtk_button_new_from_stock(add); + button = ws_gtk_button_new_from_stock(add); g_object_set_data(G_OBJECT(hbox), add, button); gtk_box_pack_start(GTK_BOX(help_hbox), button, FALSE, FALSE, 0); gtk_widget_show(button); @@ -287,7 +287,7 @@ dlg_button_row_new(const gchar *stock_id_first, ...) #ifdef HAVE_GEOIP /* do we have a map button? -> special handling for it */ if (map) { - button = gtk_button_new_from_stock(map); + button = ws_gtk_button_new_from_stock(map); gtk_widget_set_can_default(button, TRUE); g_object_set_data(G_OBJECT(hbox), map, button); gtk_box_pack_start(GTK_BOX(help_hbox), button, FALSE, FALSE, 0); diff --git a/ui/gtk/export_pdu_dlg.c b/ui/gtk/export_pdu_dlg.c index cc20b8aa5f..c9db9ec925 100644 --- a/ui/gtk/export_pdu_dlg.c +++ b/ui/gtk/export_pdu_dlg.c @@ -120,7 +120,7 @@ export_pdu_show_cb(GtkWidget *w _U_, gpointer d _U_) row = 0; /* Filter button */ - filter_bt=gtk_button_new_from_stock(WIRESHARK_STOCK_DISPLAY_FILTER_ENTRY); + filter_bt=ws_gtk_button_new_from_stock(WIRESHARK_STOCK_DISPLAY_FILTER_ENTRY); g_signal_connect(filter_bt, "clicked", G_CALLBACK(display_filter_construct_cb), &args); ws_gtk_grid_attach_defaults(GTK_GRID(grid), filter_bt, 0, row, 1, 1); gtk_widget_show(filter_bt); diff --git a/ui/gtk/file_import_dlg.c b/ui/gtk/file_import_dlg.c index 73f7e71db6..7db9cacbe4 100644 --- a/ui/gtk/file_import_dlg.c +++ b/ui/gtk/file_import_dlg.c @@ -887,7 +887,7 @@ file_import_dlg_new(void) g_object_set_data(G_OBJECT(input_frm), INPUT_FILENAME_TE_KEY, filename_te); - browse_bt = gtk_button_new_from_stock(WIRESHARK_STOCK_BROWSE); + browse_bt = ws_gtk_button_new_from_stock(WIRESHARK_STOCK_BROWSE); gtk_widget_set_tooltip_text(browse_bt, "Browse for text file to import"); ws_gtk_grid_attach(GTK_GRID(input_grid), browse_bt, 2, 0, 1, 1); diff --git a/ui/gtk/filter_dlg.c b/ui/gtk/filter_dlg.c index 52f0999650..9663c221bb 100644 --- a/ui/gtk/filter_dlg.c +++ b/ui/gtk/filter_dlg.c @@ -440,13 +440,13 @@ filter_dialog_new(GtkWidget *button, GtkWidget *parent_filter_te, gtk_container_add(GTK_CONTAINER(edit_fr), list_bb); gtk_widget_show(list_bb); - new_bt = gtk_button_new_from_stock(GTK_STOCK_NEW); + new_bt = ws_gtk_button_new_from_stock(GTK_STOCK_NEW); g_signal_connect(new_bt, "clicked", G_CALLBACK(filter_new_bt_clicked_cb), filter_list_type_p); gtk_widget_show(new_bt); gtk_box_pack_start (GTK_BOX (list_bb), new_bt, FALSE, FALSE, 0); gtk_widget_set_tooltip_text(new_bt, "Create a new filter at the end of the list (with the current properties)"); - del_bt = gtk_button_new_from_stock(GTK_STOCK_DELETE); + del_bt = ws_gtk_button_new_from_stock(GTK_STOCK_DELETE); gtk_widget_set_sensitive(del_bt, FALSE); g_signal_connect(del_bt, "clicked", G_CALLBACK(filter_del_bt_clicked_cb), filter_list_type_p); g_object_set_data(G_OBJECT(main_w), E_FILT_DEL_BT_KEY, del_bt); @@ -552,7 +552,7 @@ filter_dialog_new(GtkWidget *button, GtkWidget *parent_filter_te, /* Create the "Add Expression..." button, to pop up a dialog for constructing filter comparison expressions. */ - add_expression_bt = gtk_button_new_from_stock(WIRESHARK_STOCK_ADD_EXPRESSION); + add_expression_bt = ws_gtk_button_new_from_stock(WIRESHARK_STOCK_ADD_EXPRESSION); g_signal_connect(add_expression_bt, "clicked", G_CALLBACK(filter_add_expr_bt_cb), main_w); gtk_box_pack_start(GTK_BOX(bottom_hb), add_expression_bt, FALSE, FALSE, 0); gtk_widget_show(add_expression_bt); diff --git a/ui/gtk/find_dlg.c b/ui/gtk/find_dlg.c index bff12f7728..88533ae7f5 100644 --- a/ui/gtk/find_dlg.c +++ b/ui/gtk/find_dlg.c @@ -199,7 +199,7 @@ find_frame_cb(GtkWidget *w _U_, gpointer d _U_) gtk_box_pack_start(GTK_BOX(find_type_vb), filter_hb, FALSE, FALSE, 0); gtk_widget_show(filter_hb); - filter_bt = gtk_button_new_from_stock(WIRESHARK_STOCK_DISPLAY_FILTER_ENTRY); + filter_bt = ws_gtk_button_new_from_stock(WIRESHARK_STOCK_DISPLAY_FILTER_ENTRY); g_signal_connect(filter_bt, "clicked", G_CALLBACK(display_filter_construct_cb), &args); g_signal_connect(filter_bt, "destroy", G_CALLBACK(filter_button_destroy_cb), NULL); g_object_set_data(G_OBJECT(filter_bt), E_FILT_TE_BUTTON_KEY, filter_bt); diff --git a/ui/gtk/flow_graph.c b/ui/gtk/flow_graph.c index 21325d98f4..53eeb1e5bf 100644 --- a/ui/gtk/flow_graph.c +++ b/ui/gtk/flow_graph.c @@ -333,13 +333,13 @@ flow_graph_dlg_create(void) gtk_button_box_set_layout (GTK_BUTTON_BOX (hbuttonbox), GTK_BUTTONBOX_SPREAD); gtk_box_set_spacing (GTK_BOX (hbuttonbox), 30); - bt_ok = gtk_button_new_from_stock(GTK_STOCK_OK); + bt_ok = ws_gtk_button_new_from_stock(GTK_STOCK_OK); gtk_box_pack_start(GTK_BOX(hbuttonbox), bt_ok, TRUE, TRUE, 0); gtk_widget_set_tooltip_text (bt_ok, "Show the flow graph"); g_signal_connect(bt_ok, "clicked", G_CALLBACK(flow_graph_on_ok), flow_graph_dlg_w); gtk_widget_show(bt_ok); - bt_cancel = gtk_button_new_from_stock(GTK_STOCK_CANCEL); + bt_cancel = ws_gtk_button_new_from_stock(GTK_STOCK_CANCEL); gtk_box_pack_start(GTK_BOX(hbuttonbox), bt_cancel, TRUE, TRUE, 0); gtk_widget_set_can_default(bt_cancel, TRUE); gtk_widget_set_tooltip_text (bt_cancel, "Cancel this dialog"); diff --git a/ui/gtk/follow_stream.c b/ui/gtk/follow_stream.c index d9c62f5262..4d5170c32a 100644 --- a/ui/gtk/follow_stream.c +++ b/ui/gtk/follow_stream.c @@ -737,19 +737,19 @@ follow_stream(const gchar *title, follow_info_t *follow_info, gtk_box_pack_start(GTK_BOX(stream_vb), hbox, FALSE, FALSE, 0); /* Create Find Button */ - button = gtk_button_new_from_stock(GTK_STOCK_FIND); + button = ws_gtk_button_new_from_stock(GTK_STOCK_FIND); g_signal_connect(button, "clicked", G_CALLBACK(follow_find_cb), follow_info); gtk_widget_set_tooltip_text(button, "Find text in the displayed content"); gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 0); /* Create Save As Button */ - button = gtk_button_new_from_stock(GTK_STOCK_SAVE_AS); + button = ws_gtk_button_new_from_stock(GTK_STOCK_SAVE_AS); g_signal_connect(button, "clicked", G_CALLBACK(follow_save_as_cmd_cb), follow_info); gtk_widget_set_tooltip_text(button, "Save the content as currently displayed"); gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 0); /* Create Print Button */ - button = gtk_button_new_from_stock(GTK_STOCK_PRINT); + button = ws_gtk_button_new_from_stock(GTK_STOCK_PRINT); g_signal_connect(button, "clicked", G_CALLBACK(follow_print_stream), follow_info); gtk_widget_set_tooltip_text(button, "Print the content as currently displayed"); gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 0); diff --git a/ui/gtk/graph_analysis.c b/ui/gtk/graph_analysis.c index 89f24ad055..7ea16fe076 100644 --- a/ui/gtk/graph_analysis.c +++ b/ui/gtk/graph_analysis.c @@ -62,6 +62,7 @@ #include "ui/gtk/graph_analysis.h" #include "ui/gtk/old-gtk-compat.h" +#include "ui/gtk/stock_icons.h" #include "../../image/voip_bg.xpm" @@ -1717,13 +1718,13 @@ static void dialog_graph_create_window(graph_analysis_data_t *user_data) gtk_box_set_spacing (GTK_BOX (hbuttonbox), 30); gtk_widget_show(hbuttonbox); - bt_save = gtk_button_new_from_stock(GTK_STOCK_SAVE_AS); + bt_save = ws_gtk_button_new_from_stock(GTK_STOCK_SAVE_AS); gtk_box_pack_start(GTK_BOX(hbuttonbox), bt_save, TRUE, TRUE, 0); gtk_widget_show(bt_save); g_signal_connect(bt_save, "clicked", G_CALLBACK(on_save_bt_clicked), user_data); gtk_widget_set_tooltip_text(bt_save, "Save an ASCII representation of the graph to a file"); - bt_close = gtk_button_new_from_stock(GTK_STOCK_CLOSE); + bt_close = ws_gtk_button_new_from_stock(GTK_STOCK_CLOSE); gtk_box_pack_start(GTK_BOX(hbuttonbox), bt_close, TRUE, TRUE, 0); gtk_widget_set_can_default(bt_close, TRUE); gtk_widget_show(bt_close); diff --git a/ui/gtk/iax2_analysis.c b/ui/gtk/iax2_analysis.c index 0a38e9f5c9..0119715bc8 100644 --- a/ui/gtk/iax2_analysis.c +++ b/ui/gtk/iax2_analysis.c @@ -85,6 +85,7 @@ #include "ui/gtk/rtp_stream_dlg.h" #include "ui/gtk/old-gtk-compat.h" #include "ui/gtk/gui_utils.h" +#include "ui/gtk/stock_icons.h" #include "frame_tvbuff.h" @@ -3434,12 +3435,12 @@ create_iax2_dialog(user_data_t* user_data) gtk_widget_show(csv_bt); g_signal_connect(csv_bt, "clicked", G_CALLBACK(save_csv_as_cb), user_data); - refresh_bt = gtk_button_new_from_stock(GTK_STOCK_REFRESH); + refresh_bt = ws_gtk_button_new_from_stock(GTK_STOCK_REFRESH); gtk_container_add(GTK_CONTAINER(box4), refresh_bt); gtk_widget_show(refresh_bt); g_signal_connect(refresh_bt, "clicked", G_CALLBACK(on_refresh_bt_clicked), user_data); - goto_bt = gtk_button_new_from_stock(GTK_STOCK_JUMP_TO); + goto_bt = ws_gtk_button_new_from_stock(GTK_STOCK_JUMP_TO); gtk_container_add(GTK_CONTAINER(box4), goto_bt); gtk_widget_show(goto_bt); g_signal_connect(goto_bt, "clicked", G_CALLBACK(on_goto_bt_clicked), user_data); @@ -3454,7 +3455,7 @@ create_iax2_dialog(user_data_t* user_data) gtk_widget_show(next_bt); g_signal_connect(next_bt, "clicked", G_CALLBACK(on_next_bt_clicked), user_data); - close_bt = gtk_button_new_from_stock(GTK_STOCK_CLOSE); + close_bt = ws_gtk_button_new_from_stock(GTK_STOCK_CLOSE); gtk_container_add(GTK_CONTAINER(box4), close_bt); gtk_widget_set_can_default(close_bt, TRUE); gtk_widget_show(close_bt); diff --git a/ui/gtk/io_stat.c b/ui/gtk/io_stat.c index cbde6305f7..e10d58f31d 100644 --- a/ui/gtk/io_stat.c +++ b/ui/gtk/io_stat.c @@ -2281,7 +2281,7 @@ create_filter_box(io_stat_graph_t *gio, GtkWidget *box, int num) /* filter prefs dialog */ - gio->filter_bt = gtk_button_new_from_stock(WIRESHARK_STOCK_DISPLAY_FILTER_ENTRY); + gio->filter_bt = ws_gtk_button_new_from_stock(WIRESHARK_STOCK_DISPLAY_FILTER_ENTRY); g_snprintf(str, sizeof(str), "Wireshark: Display Filter IO-Stat (Filter:%d)", num); g_free( (gpointer) (gio->args->title) ); diff --git a/ui/gtk/main_filter_toolbar.c b/ui/gtk/main_filter_toolbar.c index 662754cfc8..8374f610d9 100644 --- a/ui/gtk/main_filter_toolbar.c +++ b/ui/gtk/main_filter_toolbar.c @@ -140,7 +140,7 @@ filter_toolbar_new(void) gtk_widget_show(filter_tb); /* Create the "Filter:" button */ - filter_bt = gtk_tool_button_new_from_stock (WIRESHARK_STOCK_DISPLAY_FILTER_ENTRY); + filter_bt = ws_gtk_tool_button_new_from_stock (WIRESHARK_STOCK_DISPLAY_FILTER_ENTRY); g_signal_connect(filter_bt, "clicked", G_CALLBACK(display_filter_construct_cb), &args); gtk_widget_show(GTK_WIDGET (filter_bt)); g_object_set_data(G_OBJECT(top_level), E_FILT_BT_PTR_KEY, filter_bt); @@ -181,7 +181,7 @@ filter_toolbar_new(void) /* Create the "Add Expression..." button, to pop up a dialog for constructing filter comparison expressions. */ - filter_add_expr_bt = gtk_tool_button_new_from_stock(WIRESHARK_STOCK_ADD_EXPRESSION); + filter_add_expr_bt = ws_gtk_tool_button_new_from_stock(WIRESHARK_STOCK_ADD_EXPRESSION); g_object_set_data(G_OBJECT(filter_tb), E_FILT_FILTER_TE_KEY, filter_te); g_signal_connect(filter_add_expr_bt, "clicked", G_CALLBACK(filter_add_expr_bt_cb), filter_tb); gtk_widget_show(GTK_WIDGET(filter_add_expr_bt)); @@ -193,7 +193,7 @@ filter_toolbar_new(void) gtk_widget_set_tooltip_text(GTK_WIDGET(filter_add_expr_bt), "Add an expression to this filter string"); /* Create the "Clear" button */ - filter_reset = gtk_tool_button_new_from_stock(WIRESHARK_STOCK_CLEAR_EXPRESSION); + filter_reset = ws_gtk_tool_button_new_from_stock(WIRESHARK_STOCK_CLEAR_EXPRESSION); g_object_set_data(G_OBJECT(filter_reset), E_DFILTER_TE_KEY, filter_te); g_object_set_data (G_OBJECT(filter_cm), E_DFILTER_CLEAR_KEY, filter_reset); g_signal_connect(filter_reset, "clicked", G_CALLBACK(filter_reset_cb), NULL); @@ -206,7 +206,7 @@ filter_toolbar_new(void) gtk_widget_set_tooltip_text(GTK_WIDGET(filter_reset), "Clear this filter string and update the display"); /* Create the "Apply" button */ - filter_apply = gtk_tool_button_new_from_stock(WIRESHARK_STOCK_APPLY_EXPRESSION); + filter_apply = ws_gtk_tool_button_new_from_stock(WIRESHARK_STOCK_APPLY_EXPRESSION); g_object_set_data(G_OBJECT(filter_apply), E_DFILTER_CM_KEY, filter_cm); g_object_set_data (G_OBJECT(filter_cm), E_DFILTER_APPLY_KEY, filter_apply); g_signal_connect(filter_apply, "clicked", G_CALLBACK(filter_activate_cb), filter_te); @@ -220,7 +220,7 @@ filter_toolbar_new(void) gtk_widget_set_tooltip_text(GTK_WIDGET(filter_apply), "Apply this filter string to the display"); /* Create the "Save" button */ - filter_save = gtk_tool_button_new_from_stock(GTK_STOCK_SAVE); + filter_save = ws_gtk_tool_button_new_from_stock(GTK_STOCK_SAVE); g_object_set_data(G_OBJECT(filter_save), E_DFILTER_CM_KEY, filter_cm); g_object_set_data(G_OBJECT(filter_cm), E_DFILTER_SAVE_KEY, filter_save); g_signal_connect(filter_save, "clicked", G_CALLBACK(filter_save_cb), filter_te); diff --git a/ui/gtk/main_menubar.c b/ui/gtk/main_menubar.c index a9326b6422..86caa0d9ce 100644 --- a/ui/gtk/main_menubar.c +++ b/ui/gtk/main_menubar.c @@ -5526,7 +5526,7 @@ rebuild_protocol_prefs_menu(module_t *prefs_module_p, gboolean preferences, label = g_strdup_printf ("%s Preferences...", prefs_module_p->description); menu_item = gtk_image_menu_item_new_with_label(label); gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM(menu_item), - gtk_image_new_from_stock(GTK_STOCK_PREFERENCES, GTK_ICON_SIZE_MENU)); + ws_gtk_image_new_from_stock(GTK_STOCK_PREFERENCES, GTK_ICON_SIZE_MENU)); gtk_menu_shell_append(GTK_MENU_SHELL(sub_menu), menu_item); g_signal_connect_swapped(G_OBJECT(menu_item), "activate", G_CALLBACK(properties_cb), (GObject *) menu_item); diff --git a/ui/gtk/main_statusbar.c b/ui/gtk/main_statusbar.c index 5b4c164120..a76d03470c 100644 --- a/ui/gtk/main_statusbar.c +++ b/ui/gtk/main_statusbar.c @@ -54,6 +54,7 @@ #include "ui/gtk/gui_utils.h" #include "ui/gtk/gtkglobals.h" #include "ui/gtk/expert_comp_dlg.h" +#include "ui/gtk/stock_icons.h" #include "ui/gtk/profile_dlg.h" #include "ui/gtk/main_welcome.h" #include "ui/gtk/expert_indicators.h" @@ -594,7 +595,7 @@ status_expert_new(void) gtk_container_add(GTK_CONTAINER(expert_info_chat), expert_image); g_signal_connect(expert_info_chat, "button_press_event", G_CALLBACK(expert_comp_dlg_event_cb), NULL); - expert_image = gtk_image_new_from_stock(GTK_STOCK_YES, GTK_ICON_SIZE_MENU); + expert_image = ws_gtk_image_new_from_stock(GTK_STOCK_YES, GTK_ICON_SIZE_MENU); gtk_widget_set_tooltip_text(expert_image, "COMMENT is the highest expert info level"); gtk_widget_show(expert_image); expert_info_comment = gtk_event_box_new(); diff --git a/ui/gtk/main_toolbar.c b/ui/gtk/main_toolbar.c index dda57f4164..5ed634dfe7 100644 --- a/ui/gtk/main_toolbar.c +++ b/ui/gtk/main_toolbar.c @@ -221,7 +221,7 @@ static void toolbar_append_separator(GtkWidget *toolbar) { #define toolbar_item(new_item, toolbar, stock, tooltip_text, callback, user_data) { \ - new_item = gtk_tool_button_new_from_stock(stock); \ + new_item = ws_gtk_tool_button_new_from_stock(stock); \ gtk_widget_set_tooltip_text(GTK_WIDGET(new_item), tooltip_text); \ g_signal_connect(new_item, "clicked", G_CALLBACK(callback), user_data); \ gtk_toolbar_insert(GTK_TOOLBAR(toolbar), new_item, -1); \ @@ -229,7 +229,7 @@ static void toolbar_append_separator(GtkWidget *toolbar) { } #define toolbar_toggle_button(new_item, window, toolbar, stock, tooltip_text, callback, user_data) { \ - new_item = gtk_toggle_tool_button_new_from_stock(stock); \ + new_item = ws_gtk_toggle_tool_button_new_from_stock(stock); \ gtk_widget_set_tooltip_text(GTK_WIDGET(new_item), tooltip_text); \ g_signal_connect(new_item, "toggled", G_CALLBACK(callback), user_data); \ gtk_toolbar_insert(GTK_TOOLBAR(toolbar), new_item, -1); \ diff --git a/ui/gtk/main_welcome.c b/ui/gtk/main_welcome.c index c51983225c..674a63984b 100644 --- a/ui/gtk/main_welcome.c +++ b/ui/gtk/main_welcome.c @@ -276,7 +276,7 @@ welcome_button(const gchar *stock_item, g_signal_connect(eb, "button-release-event", G_CALLBACK(welcome_button_callback), welcome_button_callback_data); /* icon */ - w = gtk_image_new_from_stock(stock_item, GTK_ICON_SIZE_LARGE_TOOLBAR); + w = ws_gtk_image_new_from_stock(stock_item, GTK_ICON_SIZE_LARGE_TOOLBAR); gtk_box_pack_start(GTK_BOX(item_hb), w, FALSE, FALSE, 5); text_vb = ws_gtk_box_new(GTK_ORIENTATION_VERTICAL, 3, FALSE); diff --git a/ui/gtk/mcast_stream.c b/ui/gtk/mcast_stream.c index 726e47f174..a766ef4467 100644 --- a/ui/gtk/mcast_stream.c +++ b/ui/gtk/mcast_stream.c @@ -53,6 +53,7 @@ #include "ui/gtk/mcast_stream.h" #include "ui/gtk/mcast_stream_dlg.h" #include "ui/gtk/main.h" +#include "ui/gtk/stock_icons.h" #ifdef HAVE_WINSOCK2_H #include diff --git a/ui/gtk/mcast_stream_dlg.c b/ui/gtk/mcast_stream_dlg.c index 47461590b0..3802ad5d17 100644 --- a/ui/gtk/mcast_stream_dlg.c +++ b/ui/gtk/mcast_stream_dlg.c @@ -51,6 +51,7 @@ #include "ui/gtk/gui_utils.h" #include "ui/gtk/gtkglobals.h" #include "ui/gtk/old-gtk-compat.h" +#include "ui/gtk/stock_icons.h" void register_tap_listener_mcast_stream_dlg(void); @@ -332,9 +333,9 @@ mcast_on_params(GtkButton *button _U_, gpointer data _U_) /* button row */ hbuttonbox = gtk_button_box_new(GTK_ORIENTATION_HORIZONTAL); ws_gtk_grid_attach_defaults(GTK_GRID(grid), hbuttonbox, 0, 5, 2, 1); - ok_bt = gtk_button_new_from_stock(GTK_STOCK_OK); + ok_bt = ws_gtk_button_new_from_stock(GTK_STOCK_OK); gtk_container_add (GTK_CONTAINER(hbuttonbox), ok_bt); - cancel_bt = gtk_button_new_from_stock(GTK_STOCK_CANCEL); + cancel_bt = ws_gtk_button_new_from_stock(GTK_STOCK_CANCEL); gtk_container_add (GTK_CONTAINER(hbuttonbox), cancel_bt); gtk_widget_set_can_default(cancel_bt, TRUE); gtk_button_box_set_layout(GTK_BUTTON_BOX(hbuttonbox), GTK_BUTTONBOX_END); @@ -694,7 +695,7 @@ mcaststream_dlg_create(void) gtk_container_add (GTK_CONTAINER (hbuttonbox), bt_filter); gtk_widget_set_tooltip_text (bt_filter, "Prepare a display filter of the selected stream"); - bt_close = gtk_button_new_from_stock(GTK_STOCK_CLOSE); + bt_close = ws_gtk_button_new_from_stock(GTK_STOCK_CLOSE); gtk_container_add (GTK_CONTAINER (hbuttonbox), bt_close); gtk_widget_set_tooltip_text (bt_close, "Close this dialog"); gtk_widget_set_can_default(bt_close, TRUE); diff --git a/ui/gtk/packet_win.c b/ui/gtk/packet_win.c index 944c91b597..dd68ce6891 100644 --- a/ui/gtk/packet_win.c +++ b/ui/gtk/packet_win.c @@ -525,12 +525,21 @@ new_finfo_window(GtkWidget *w, struct FieldinfoWinData *DataPtr) const header_field_info *hfinfo = finfo->hfinfo; int finfo_type = (hfinfo) ? hfinfo->type : FT_NONE; +#if !GTK_CHECK_VERSION(3, 10, 0) GtkWidget *dialog = gtk_dialog_new_with_buttons("Editing finfo: ....", GTK_WINDOW(w), (GtkDialogFlags) (GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT), GTK_STOCK_OK, GTK_RESPONSE_ACCEPT, GTK_STOCK_CANCEL, GTK_RESPONSE_REJECT, NULL); +#else + GtkWidget *dialog = gtk_dialog_new_with_buttons("Editing finfo: ....", + GTK_WINDOW(w), + (GtkDialogFlags) (GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT), + "_OK", GTK_RESPONSE_ACCEPT, + "_Cancel", GTK_RESPONSE_REJECT, + NULL); +#endif GtkWidget *dialog_vbox = gtk_dialog_get_content_area(GTK_DIALOG(dialog)); GtkWidget *fvalue_edit; diff --git a/ui/gtk/prefs_capture.c b/ui/gtk/prefs_capture.c index 04fb0c1363..cb092ee9a2 100644 --- a/ui/gtk/prefs_capture.c +++ b/ui/gtk/prefs_capture.c @@ -192,7 +192,7 @@ capture_prefs_show(void) gtk_misc_set_alignment(GTK_MISC(ifopts_lb), 1.0f, 0.5f); gtk_widget_show(ifopts_lb); - ifopts_bt = gtk_button_new_from_stock(WIRESHARK_STOCK_EDIT); + ifopts_bt = ws_gtk_button_new_from_stock(WIRESHARK_STOCK_EDIT); tooltips_text = "Open a dialog box to set various interface options."; gtk_widget_set_tooltip_text(ifopts_lb, tooltips_text); gtk_widget_set_tooltip_text(ifopts_bt, tooltips_text); @@ -246,7 +246,7 @@ capture_prefs_show(void) gtk_misc_set_alignment(GTK_MISC(colopts_lb), 1.0f, 0.5f); gtk_widget_show(colopts_lb); - colopts_bt = gtk_button_new_from_stock(WIRESHARK_STOCK_EDIT); + colopts_bt = ws_gtk_button_new_from_stock(WIRESHARK_STOCK_EDIT); tooltips_text = "Open a dialog box to change the visible columns."; gtk_widget_set_tooltip_text(colopts_lb, tooltips_text); gtk_widget_set_tooltip_text(colopts_bt, tooltips_text); diff --git a/ui/gtk/prefs_column.c b/ui/gtk/prefs_column.c index 75af784308..474092a674 100644 --- a/ui/gtk/prefs_column.c +++ b/ui/gtk/prefs_column.c @@ -43,6 +43,7 @@ #include "ui/gtk/filter_dlg.h" #include "ui/gtk/filter_autocomplete.h" #include "ui/gtk/old-gtk-compat.h" +#include "ui/gtk/stock_icons.h" static GtkWidget *remove_bt, *field_te, *field_lb, *occurrence_te, *occurrence_lb, *fmt_cmb; static gulong column_menu_changed_handler_id; @@ -218,13 +219,13 @@ column_prefs_show(GtkWidget *prefs_window) { gtk_box_pack_start (GTK_BOX (bottom_hb), add_remove_vb, FALSE, FALSE, 0); gtk_widget_show(add_remove_vb); - add_bt = gtk_button_new_from_stock(GTK_STOCK_ADD); + add_bt = ws_gtk_button_new_from_stock(GTK_STOCK_ADD); g_signal_connect(add_bt, "clicked", G_CALLBACK(column_list_new_cb), column_l); gtk_box_pack_start (GTK_BOX (add_remove_vb), add_bt, FALSE, FALSE, 0); gtk_widget_set_tooltip_text(add_bt, "Add a new column at the end of the list."); gtk_widget_show(add_bt); - remove_bt = gtk_button_new_from_stock(GTK_STOCK_REMOVE); + remove_bt = ws_gtk_button_new_from_stock(GTK_STOCK_REMOVE); gtk_widget_set_sensitive(remove_bt, FALSE); g_signal_connect(remove_bt, "clicked", G_CALLBACK(column_list_delete_cb), column_l); gtk_box_pack_start (GTK_BOX (add_remove_vb), remove_bt, FALSE, FALSE, 0); diff --git a/ui/gtk/prefs_dlg.c b/ui/gtk/prefs_dlg.c index f65fe1f87d..fc3c4abc78 100644 --- a/ui/gtk/prefs_dlg.c +++ b/ui/gtk/prefs_dlg.c @@ -883,7 +883,7 @@ create_preference_path_entry(GtkWidget *main_grid, int grid_position, ws_gtk_grid_attach_defaults(GTK_GRID(main_grid), file_bt_hb, 1, grid_position, 1, 1); gtk_widget_show(file_bt_hb); - button = gtk_button_new_from_stock(WIRESHARK_STOCK_BROWSE); + button = ws_gtk_button_new_from_stock(WIRESHARK_STOCK_BROWSE); gtk_box_pack_end(GTK_BOX(file_bt_hb), button, FALSE, FALSE, 0); gtk_widget_show(button); @@ -930,7 +930,7 @@ create_preference_uat(GtkWidget *main_grid, int grid_position, set_option_label(main_grid, grid_position, label_text, tooltip_text); - button = gtk_button_new_from_stock(WIRESHARK_STOCK_EDIT); + button = ws_gtk_button_new_from_stock(WIRESHARK_STOCK_EDIT); g_signal_connect(button, "clicked", G_CALLBACK(uat_window_cb), uat); diff --git a/ui/gtk/prefs_filter_expressions.c b/ui/gtk/prefs_filter_expressions.c index 25e7e91fc8..8bd72f06e0 100644 --- a/ui/gtk/prefs_filter_expressions.c +++ b/ui/gtk/prefs_filter_expressions.c @@ -42,6 +42,7 @@ #include "ui/gtk/filter_expression_save_dlg.h" #include "ui/gtk/prefs_filter_expressions.h" #include "ui/gtk/old-gtk-compat.h" +#include "ui/gtk/stock_icons.h" static void filter_expressions_list_new_cb(GtkWidget *, gpointer); static void filter_expressions_list_remove_cb(GtkWidget *, gpointer); @@ -197,7 +198,7 @@ filter_expressions_prefs_show(void) { gtk_box_pack_start(GTK_BOX(bottom_hb), add_remove_hb, FALSE, FALSE, 0); gtk_widget_show(add_remove_hb); - add_bt = gtk_button_new_from_stock(GTK_STOCK_ADD); + add_bt = ws_gtk_button_new_from_stock(GTK_STOCK_ADD); g_signal_connect(add_bt, "clicked", G_CALLBACK(filter_expressions_list_new_cb), column_l); gtk_box_pack_start(GTK_BOX(add_remove_hb), add_bt, FALSE, FALSE, 0); @@ -206,7 +207,7 @@ filter_expressions_prefs_show(void) { gtk_widget_show(add_bt); /* Remove button */ - remove_bt = gtk_button_new_from_stock(GTK_STOCK_REMOVE); + remove_bt = ws_gtk_button_new_from_stock(GTK_STOCK_REMOVE); g_signal_connect(remove_bt, "clicked", G_CALLBACK(filter_expressions_list_remove_cb), column_l); gtk_box_pack_start(GTK_BOX(add_remove_hb), remove_bt, FALSE, FALSE, 0); diff --git a/ui/gtk/print_dlg.c b/ui/gtk/print_dlg.c index 6adb57d0a2..f6736583b3 100644 --- a/ui/gtk/print_dlg.c +++ b/ui/gtk/print_dlg.c @@ -641,7 +641,7 @@ open_print_dialog(const char *title, output_action_e action, print_args_t *args) gtk_widget_grab_focus(file_te); /* "Browse" button */ - file_bt = gtk_button_new_from_stock(WIRESHARK_STOCK_BROWSE); + file_bt = ws_gtk_button_new_from_stock(WIRESHARK_STOCK_BROWSE); g_object_set_data(G_OBJECT(dest_cb), PRINT_FILE_BT_KEY, file_bt); g_object_set_data(G_OBJECT(file_bt), PRINT_TE_PTR_KEY, file_te); gtk_widget_set_tooltip_text(file_bt, "Browse output filename in filesystem"); diff --git a/ui/gtk/profile_dlg.c b/ui/gtk/profile_dlg.c index 786be7eba3..f66f13be2d 100644 --- a/ui/gtk/profile_dlg.c +++ b/ui/gtk/profile_dlg.c @@ -44,6 +44,7 @@ #include "ui/gtk/gtkglobals.h" #include "ui/gtk/help_dlg.h" #include "ui/gtk/old-gtk-compat.h" +#include "ui/gtk/stock_icons.h" enum { NAME_COLUMN, @@ -475,19 +476,19 @@ profile_dialog_new(void) gtk_container_add(GTK_CONTAINER(edit_fr), list_bb); gtk_widget_show(list_bb); - new_bt = gtk_button_new_from_stock(GTK_STOCK_NEW); + new_bt = ws_gtk_button_new_from_stock(GTK_STOCK_NEW); g_signal_connect(new_bt, "clicked", G_CALLBACK(profile_new_bt_clicked_cb), NULL); gtk_widget_show(new_bt); gtk_box_pack_start(GTK_BOX(list_bb), new_bt, FALSE, FALSE, 0); gtk_widget_set_tooltip_text(new_bt, "Create a new profile (with default properties)"); - copy_bt = gtk_button_new_from_stock(GTK_STOCK_COPY); + copy_bt = ws_gtk_button_new_from_stock(GTK_STOCK_COPY); g_signal_connect(copy_bt, "clicked", G_CALLBACK(profile_copy_bt_clicked_cb), NULL); gtk_widget_show(copy_bt); gtk_box_pack_start(GTK_BOX(list_bb), copy_bt, FALSE, FALSE, 0); gtk_widget_set_tooltip_text(copy_bt, "Copy the selected profile"); - del_bt = gtk_button_new_from_stock(GTK_STOCK_DELETE); + del_bt = ws_gtk_button_new_from_stock(GTK_STOCK_DELETE); gtk_widget_set_sensitive(del_bt, FALSE); g_signal_connect(del_bt, "clicked", G_CALLBACK(profile_del_bt_clicked_cb), NULL); g_object_set_data(G_OBJECT(main_w), E_PROF_DEL_BT_KEY, del_bt); diff --git a/ui/gtk/rpc_stat.c b/ui/gtk/rpc_stat.c index 9ae2397f82..84065bf4a7 100644 --- a/ui/gtk/rpc_stat.c +++ b/ui/gtk/rpc_stat.c @@ -470,7 +470,7 @@ gtk_rpcstat_cb(GtkAction *action _U_, gpointer user_data _U_) filter_box=ws_gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 3, FALSE); /* Filter label */ - filter_bt=gtk_button_new_from_stock(WIRESHARK_STOCK_DISPLAY_FILTER_ENTRY); + filter_bt=ws_gtk_button_new_from_stock(WIRESHARK_STOCK_DISPLAY_FILTER_ENTRY); g_signal_connect(filter_bt, "clicked", G_CALLBACK(display_filter_construct_cb), &args); gtk_box_pack_start(GTK_BOX(filter_box), filter_bt, FALSE, FALSE, 0); gtk_widget_show(filter_bt); diff --git a/ui/gtk/rtp_analysis.c b/ui/gtk/rtp_analysis.c index fb7cfd6cdb..d9f3390aa2 100644 --- a/ui/gtk/rtp_analysis.c +++ b/ui/gtk/rtp_analysis.c @@ -3656,12 +3656,12 @@ create_rtp_dialog(user_data_t* user_data) gtk_widget_show(csv_bt); g_signal_connect(csv_bt, "clicked", G_CALLBACK(save_csv_as_cb), user_data); - refresh_bt = gtk_button_new_from_stock(GTK_STOCK_REFRESH); + refresh_bt = ws_gtk_button_new_from_stock(GTK_STOCK_REFRESH); gtk_container_add(GTK_CONTAINER(box4), refresh_bt); gtk_widget_show(refresh_bt); g_signal_connect(refresh_bt, "clicked", G_CALLBACK(on_refresh_bt_clicked), user_data); - goto_bt = gtk_button_new_from_stock(GTK_STOCK_JUMP_TO); + goto_bt = ws_gtk_button_new_from_stock(GTK_STOCK_JUMP_TO); gtk_container_add(GTK_CONTAINER(box4), goto_bt); gtk_widget_show(goto_bt); g_signal_connect(goto_bt, "clicked", G_CALLBACK(on_goto_bt_clicked_lst), user_data); @@ -3672,7 +3672,7 @@ create_rtp_dialog(user_data_t* user_data) g_signal_connect(graph_bt, "clicked", G_CALLBACK(on_graph_bt_clicked), user_data); #ifdef HAVE_LIBPORTAUDIO - player_bt = gtk_button_new_from_stock(WIRESHARK_STOCK_AUDIO_PLAYER); + player_bt = ws_gtk_button_new_from_stock(WIRESHARK_STOCK_AUDIO_PLAYER); gtk_container_add(GTK_CONTAINER(box4), player_bt); gtk_widget_show(player_bt); g_signal_connect(player_bt, "clicked", G_CALLBACK(on_player_bt_clicked), NULL); @@ -3684,7 +3684,7 @@ create_rtp_dialog(user_data_t* user_data) gtk_widget_show(next_bt); g_signal_connect(next_bt, "clicked", G_CALLBACK(on_next_bt_clicked_list), user_data); - close_bt = gtk_button_new_from_stock(GTK_STOCK_CLOSE); + close_bt = ws_gtk_button_new_from_stock(GTK_STOCK_CLOSE); gtk_container_add(GTK_CONTAINER(box4), close_bt); gtk_widget_set_can_default(close_bt, TRUE); gtk_widget_show(close_bt); diff --git a/ui/gtk/rtp_player.c b/ui/gtk/rtp_player.c index 6fc16922df..060307f046 100644 --- a/ui/gtk/rtp_player.c +++ b/ui/gtk/rtp_player.c @@ -2385,27 +2385,27 @@ rtp_player_dlg_create(void) gtk_button_box_set_layout (GTK_BUTTON_BOX (hbuttonbox), GTK_BUTTONBOX_SPREAD); gtk_box_set_spacing (GTK_BOX (hbuttonbox), 10); - bt_decode = gtk_button_new_from_stock(WIRESHARK_STOCK_DECODE); + bt_decode = ws_gtk_button_new_from_stock(WIRESHARK_STOCK_DECODE); gtk_container_add(GTK_CONTAINER(hbuttonbox), bt_decode); g_signal_connect(bt_decode, "clicked", G_CALLBACK(on_bt_decode_clicked), NULL); gtk_widget_set_tooltip_text (bt_decode, "Decode the RTP stream(s)"); - bt_play = gtk_button_new_from_stock(GTK_STOCK_MEDIA_PLAY); + bt_play = ws_gtk_button_new_from_stock(GTK_STOCK_MEDIA_PLAY); gtk_container_add(GTK_CONTAINER(hbuttonbox), bt_play); g_signal_connect(bt_play, "clicked", G_CALLBACK(on_bt_play_clicked), NULL); gtk_widget_set_tooltip_text (bt_play, "Play the RTP channel(s)"); - bt_pause = gtk_button_new_from_stock(GTK_STOCK_MEDIA_PAUSE); + bt_pause = ws_gtk_button_new_from_stock(GTK_STOCK_MEDIA_PAUSE); gtk_container_add(GTK_CONTAINER(hbuttonbox), bt_pause); g_signal_connect(bt_pause, "clicked", G_CALLBACK(on_bt_pause_clicked), NULL); gtk_widget_set_tooltip_text (bt_pause, "Pause the RTP channel(s)"); - bt_stop = gtk_button_new_from_stock(GTK_STOCK_MEDIA_STOP); + bt_stop = ws_gtk_button_new_from_stock(GTK_STOCK_MEDIA_STOP); gtk_container_add(GTK_CONTAINER(hbuttonbox), bt_stop); g_signal_connect(bt_stop, "clicked", G_CALLBACK(on_bt_stop_clicked), NULL); gtk_widget_set_tooltip_text (bt_stop, "Stop the RTP channel(s)"); - bt_close = gtk_button_new_from_stock(GTK_STOCK_CLOSE); + bt_close = ws_gtk_button_new_from_stock(GTK_STOCK_CLOSE); gtk_container_add (GTK_CONTAINER (hbuttonbox), bt_close); gtk_widget_set_can_default(bt_close, TRUE); gtk_widget_set_tooltip_text (bt_close, "Close this dialog"); diff --git a/ui/gtk/rtp_stream_dlg.c b/ui/gtk/rtp_stream_dlg.c index 052b47dedf..08053b12ba 100644 --- a/ui/gtk/rtp_stream_dlg.c +++ b/ui/gtk/rtp_stream_dlg.c @@ -1010,10 +1010,10 @@ rtpstream_dlg_create (void) gtk_container_add (GTK_CONTAINER (hbuttonbox), bt_findrev); gtk_widget_set_tooltip_text (bt_findrev, "Find the reverse stream matching the selected forward stream"); /* - bt_goto = gtk_button_new_from_stock(GTK_STOCK_JUMP_TO); + bt_goto = ws_gtk_button_new_from_stock(GTK_STOCK_JUMP_TO); gtk_container_add (GTK_CONTAINER (hbuttonbox), bt_goto); */ - bt_save = gtk_button_new_from_stock(GTK_STOCK_SAVE_AS); + bt_save = ws_gtk_button_new_from_stock(GTK_STOCK_SAVE_AS); gtk_container_add (GTK_CONTAINER (hbuttonbox), bt_save); gtk_widget_set_tooltip_text (bt_save, "Save stream payload in rtpdump format"); @@ -1021,22 +1021,22 @@ rtpstream_dlg_create (void) gtk_container_add (GTK_CONTAINER (hbuttonbox), bt_mark); gtk_widget_set_tooltip_text (bt_mark, "Mark packets of the selected stream(s)"); - bt_filter = gtk_button_new_from_stock(WIRESHARK_STOCK_PREPARE_FILTER); + bt_filter = ws_gtk_button_new_from_stock(WIRESHARK_STOCK_PREPARE_FILTER); gtk_container_add (GTK_CONTAINER (hbuttonbox), bt_filter); gtk_widget_set_tooltip_text (bt_filter, "Prepare a display filter of the selected stream(s)"); /* XXX - maybe we want to have a "Copy as CSV" stock button here? */ /*bt_copy = gtk_button_new_with_label ("Copy content to clipboard as CSV");*/ - bt_copy = gtk_button_new_from_stock(GTK_STOCK_COPY); + bt_copy = ws_gtk_button_new_from_stock(GTK_STOCK_COPY); gtk_container_add (GTK_CONTAINER (hbuttonbox), bt_copy); gtk_widget_set_tooltip_text(bt_copy, "Copy all statistical values of this page to the clipboard in CSV (Comma Separated Values) format."); - bt_analyze = gtk_button_new_from_stock(WIRESHARK_STOCK_ANALYZE); + bt_analyze = ws_gtk_button_new_from_stock(WIRESHARK_STOCK_ANALYZE); gtk_container_add (GTK_CONTAINER (hbuttonbox), bt_analyze); gtk_widget_set_tooltip_text (bt_analyze, "Open an analyze window of the selected stream(s)"); - bt_close = gtk_button_new_from_stock(GTK_STOCK_CLOSE); + bt_close = ws_gtk_button_new_from_stock(GTK_STOCK_CLOSE); gtk_container_add (GTK_CONTAINER (hbuttonbox), bt_close); gtk_widget_set_tooltip_text (bt_close, "Close this dialog"); gtk_widget_set_can_default(bt_close, TRUE); diff --git a/ui/gtk/sctp_assoc_analyse.c b/ui/gtk/sctp_assoc_analyse.c index 5e8a50d5e1..2b751f7135 100644 --- a/ui/gtk/sctp_assoc_analyse.c +++ b/ui/gtk/sctp_assoc_analyse.c @@ -40,6 +40,7 @@ #include "ui/tap-sctp-analysis.h" #include "ui/gtk/sctp_stat_gtk.h" #include "ui/gtk/gtkglobals.h" +#include "ui/gtk/stock_icons.h" #include "frame_tvbuff.h" @@ -686,7 +687,7 @@ create_analyse_window(struct sctp_analyse *u_data) gtk_widget_show (bt_filter); g_signal_connect(bt_filter, "clicked", G_CALLBACK(sctp_set_filter), u_data); - close_bt = gtk_button_new_from_stock(GTK_STOCK_CLOSE); + close_bt = ws_gtk_button_new_from_stock(GTK_STOCK_CLOSE); gtk_box_pack_start(GTK_BOX(hbox), close_bt, FALSE, FALSE, 0); gtk_widget_show(close_bt); g_signal_connect(close_bt, "clicked", G_CALLBACK(on_close_dlg), u_data); @@ -795,7 +796,7 @@ create_analyse_window(struct sctp_analyse *u_data) gtk_widget_set_sensitive(graph_bt1, FALSE); gtk_widget_set_sensitive(graph_bt2, FALSE); } - close_bt = gtk_button_new_from_stock(GTK_STOCK_CLOSE); + close_bt = ws_gtk_button_new_from_stock(GTK_STOCK_CLOSE); gtk_box_pack_start(GTK_BOX(h_button_box), close_bt, FALSE, FALSE, 0); gtk_widget_show(close_bt); g_signal_connect(close_bt, "clicked", G_CALLBACK(on_close_dlg), u_data); @@ -899,7 +900,7 @@ create_analyse_window(struct sctp_analyse *u_data) gtk_widget_set_sensitive(graph_bt1, FALSE); gtk_widget_set_sensitive(graph_bt2, FALSE); } - close_bt = gtk_button_new_from_stock(GTK_STOCK_CLOSE); + close_bt = ws_gtk_button_new_from_stock(GTK_STOCK_CLOSE); gtk_box_pack_start(GTK_BOX(h_button_box), close_bt, FALSE, FALSE, 0); gtk_widget_show(close_bt); g_signal_connect(close_bt, "clicked", G_CALLBACK(on_close_dlg), u_data); diff --git a/ui/gtk/sctp_byte_graph_dlg.c b/ui/gtk/sctp_byte_graph_dlg.c index 0d3bb9498a..9b67a70dc8 100644 --- a/ui/gtk/sctp_byte_graph_dlg.c +++ b/ui/gtk/sctp_byte_graph_dlg.c @@ -43,6 +43,7 @@ #include "ui/gtk/sctp_stat_gtk.h" #include "ui/gtk/old-gtk-compat.h" +#include "ui/gtk/stock_icons.h" #define DEFAULT_PIXELS_PER_TICK 2 #define MAX_PIXELS_PER_TICK 4 @@ -1297,7 +1298,7 @@ static void init_sctp_graph_window(struct sctp_udata *u_data) gtk_widget_set_tooltip_text(zoomout_bt, "Zoom out one step"); gtk_widget_set_sensitive(zoomout_bt, FALSE); - bt_close = gtk_button_new_from_stock(GTK_STOCK_CLOSE); + bt_close = ws_gtk_button_new_from_stock(GTK_STOCK_CLOSE); gtk_box_pack_start(GTK_BOX(hbox), bt_close, FALSE, FALSE, 0); gtk_widget_show(bt_close); g_signal_connect(bt_close, "clicked", G_CALLBACK(sctp_graph_close_cb), u_data); diff --git a/ui/gtk/sctp_chunk_stat_dlg.c b/ui/gtk/sctp_chunk_stat_dlg.c index 1551ba460e..5bc03df5f5 100644 --- a/ui/gtk/sctp_chunk_stat_dlg.c +++ b/ui/gtk/sctp_chunk_stat_dlg.c @@ -36,6 +36,7 @@ #include "ui/gtk/main.h" #include "ui/tap-sctp-analysis.h" #include "ui/gtk/sctp_stat_gtk.h" +#include "ui/gtk/stock_icons.h" static GtkWidget *clist = NULL; static GList *last_list = NULL; @@ -635,7 +636,7 @@ gtk_sctpstat_dlg(struct sctp_udata *u_data, unsigned int direction) gtk_box_set_spacing(GTK_BOX (hbuttonbox2), 0); gtk_widget_show(hbuttonbox2); - bt_close = gtk_button_new_from_stock(GTK_STOCK_CLOSE); + bt_close = ws_gtk_button_new_from_stock(GTK_STOCK_CLOSE); gtk_container_add (GTK_CONTAINER (hbuttonbox2), bt_close); gtk_widget_show (bt_close); @@ -762,7 +763,7 @@ sctp_chunk_dlg(struct sctp_udata *u_data) gtk_box_set_spacing(GTK_BOX (h_button_box), 0); gtk_widget_show(h_button_box); - close_bt = gtk_button_new_from_stock(GTK_STOCK_CLOSE); + close_bt = ws_gtk_button_new_from_stock(GTK_STOCK_CLOSE); gtk_box_pack_start(GTK_BOX(h_button_box), close_bt, FALSE, FALSE, 0); gtk_widget_show(close_bt); g_signal_connect(close_bt, "clicked", G_CALLBACK(on_close_dlg), u_data); diff --git a/ui/gtk/sctp_error_dlg.c b/ui/gtk/sctp_error_dlg.c index c1749a6ace..95be6a4e06 100644 --- a/ui/gtk/sctp_error_dlg.c +++ b/ui/gtk/sctp_error_dlg.c @@ -35,6 +35,7 @@ #include "ui/tap-sctp-analysis.h" #include "ui/gtk/sctp_stat_gtk.h" #include "ui/gtk/gui_utils.h" +#include "ui/gtk/stock_icons.h" static GtkWidget *sctp_error_dlg=NULL; static GtkWidget *clist = NULL; @@ -260,7 +261,7 @@ gtk_sctperror_dlg(void) gtk_widget_show (bt_frame); gtk_container_add (GTK_CONTAINER (hbuttonbox2), bt_frame); - bt_close = gtk_button_new_from_stock(GTK_STOCK_CLOSE); + bt_close = ws_gtk_button_new_from_stock(GTK_STOCK_CLOSE); gtk_widget_show (bt_close); gtk_container_add (GTK_CONTAINER (hbuttonbox2), bt_close); diff --git a/ui/gtk/sctp_graph_dlg.c b/ui/gtk/sctp_graph_dlg.c index 9ceb5e968d..471314c254 100644 --- a/ui/gtk/sctp_graph_dlg.c +++ b/ui/gtk/sctp_graph_dlg.c @@ -43,6 +43,7 @@ #include "ui/gtk/sctp_stat_gtk.h" #include "ui/gtk/gui_utils.h" #include "ui/gtk/old-gtk-compat.h" +#include "ui/gtk/stock_icons.h" #define DEFAULT_PIXELS_PER_TICK 2 #define MAX_PIXELS_PER_TICK 4 @@ -1722,7 +1723,7 @@ init_sctp_graph_window(struct sctp_udata *u_data) gtk_widget_set_tooltip_text(zoomout_bt, "Zoom out one step"); gtk_widget_set_sensitive(zoomout_bt, FALSE); - bt_close = gtk_button_new_from_stock(GTK_STOCK_CLOSE); + bt_close = ws_gtk_button_new_from_stock(GTK_STOCK_CLOSE); gtk_box_pack_start(GTK_BOX(hbox), bt_close, FALSE, FALSE, 0); gtk_widget_show(bt_close); g_signal_connect(bt_close, "clicked", G_CALLBACK(sctp_graph_close_cb), u_data); diff --git a/ui/gtk/sctp_stat_dlg.c b/ui/gtk/sctp_stat_dlg.c index 73a67a7703..0f1cb533f2 100644 --- a/ui/gtk/sctp_stat_dlg.c +++ b/ui/gtk/sctp_stat_dlg.c @@ -40,6 +40,7 @@ #include "ui/gtk/gtkglobals.h" #include "ui/gtk/old-gtk-compat.h" +#include "ui/gtk/stock_icons.h" static GtkWidget *sctp_stat_dlg = NULL; static GtkWidget *clist = NULL; @@ -615,7 +616,7 @@ gtk_sctpstat_dlg(void) gtk_widget_show(bt_analyse); gtk_widget_set_sensitive(bt_analyse,FALSE); - bt_close = gtk_button_new_from_stock(GTK_STOCK_CLOSE); + bt_close = ws_gtk_button_new_from_stock(GTK_STOCK_CLOSE); gtk_container_add(GTK_CONTAINER(hbuttonbox2), bt_close); gtk_widget_set_can_default(bt_close, TRUE); window_set_cancel_button(sctp_stat_dlg_w, bt_close, sctp_stat_on_close); diff --git a/ui/gtk/simple_dialog.c b/ui/gtk/simple_dialog.c index 41a73e6620..b47df24712 100644 --- a/ui/gtk/simple_dialog.c +++ b/ui/gtk/simple_dialog.c @@ -63,20 +63,20 @@ display_simple_dialog(gint type, gint btn_mask, char *message) /* Main window */ switch (type) { case ESD_TYPE_WARN : - type_pm = gtk_image_new_from_stock( GTK_STOCK_DIALOG_INFO, GTK_ICON_SIZE_DIALOG); + type_pm = ws_gtk_image_new_from_stock( GTK_STOCK_DIALOG_INFO, GTK_ICON_SIZE_DIALOG); break; case ESD_TYPE_CONFIRMATION: - type_pm = gtk_image_new_from_stock( GTK_STOCK_DIALOG_WARNING, GTK_ICON_SIZE_DIALOG); + type_pm = ws_gtk_image_new_from_stock( GTK_STOCK_DIALOG_WARNING, GTK_ICON_SIZE_DIALOG); break; case ESD_TYPE_ERROR: - type_pm = gtk_image_new_from_stock( GTK_STOCK_DIALOG_ERROR, GTK_ICON_SIZE_DIALOG); + type_pm = ws_gtk_image_new_from_stock( GTK_STOCK_DIALOG_ERROR, GTK_ICON_SIZE_DIALOG); break; case ESD_TYPE_STOP : - type_pm = gtk_image_new_from_stock( GTK_STOCK_STOP, GTK_ICON_SIZE_DIALOG); + type_pm = ws_gtk_image_new_from_stock( GTK_STOCK_STOP, GTK_ICON_SIZE_DIALOG); break; case ESD_TYPE_INFO : default : - type_pm = gtk_image_new_from_stock( GTK_STOCK_DIALOG_INFO, GTK_ICON_SIZE_DIALOG); + type_pm = ws_gtk_image_new_from_stock( GTK_STOCK_DIALOG_INFO, GTK_ICON_SIZE_DIALOG); break; } diff --git a/ui/gtk/stock_icons.c b/ui/gtk/stock_icons.c index 15408f5c5a..c174b0a67d 100644 --- a/ui/gtk/stock_icons.c +++ b/ui/gtk/stock_icons.c @@ -25,6 +25,9 @@ #include +#include +#include + #include "ui/gtk/stock_icons.h" #include "ui/gtk/toolbar_icons.h" #include "ui/gtk/wsicon.h" @@ -68,11 +71,16 @@ #include "../../image/toolbar/telephone_16.xpm" #include "../../image/toolbar/analyze_24.xpm" -#define NO_MOD (GdkModifierType)0 +typedef struct stock_item_tag { + const char * name; + const char * icon; + const char * label; +} stock_item_t; typedef struct stock_pixmap_tag{ const char * name; const char ** xpm_data; + const guint size; } stock_pixmap_t; typedef struct stock_pixbuf_tag{ @@ -81,86 +89,212 @@ typedef struct stock_pixbuf_tag{ const guint8 * pb_data24; /* Mandatory */ } stock_pixbuf_t; +/* + * Register non-standard pixmaps with the gtk-stock engine. + * Most of the icon names match the item name here. + * Use default stock icons for Wireshark specifics where the icon metapher makes sense. + * PLEASE DON'T REUSE STOCK ICONS IF THEY ARE USUALLY USED FOR SOME DIFFERENT MEANING!!!) + */ +static stock_item_t ws_stock_items[] = { + {(char *)WIRESHARK_STOCK_CAPTURE_INTERFACES, (char *)WIRESHARK_STOCK_CAPTURE_INTERFACES, (char *)"_Interfaces"}, + {(char *)WIRESHARK_STOCK_CAPTURE_OPTIONS, (char *)WIRESHARK_STOCK_CAPTURE_OPTIONS, (char *)"_Options"}, + {(char *)WIRESHARK_STOCK_CAPTURE_START, (char *)WIRESHARK_STOCK_CAPTURE_START, (char *)"_Start"}, + {(char *)WIRESHARK_STOCK_CAPTURE_STOP, (char *)WIRESHARK_STOCK_CAPTURE_STOP, (char *)"S_top"}, + {(char *)WIRESHARK_STOCK_CAPTURE_RESTART, (char *)WIRESHARK_STOCK_CAPTURE_RESTART, (char *)"_Restart"}, + {(char *)WIRESHARK_STOCK_CAPTURE_FILTER, (char *)WIRESHARK_STOCK_CAPTURE_FILTER, (char *)"_Capture Filter"}, + {(char *)WIRESHARK_STOCK_CAPTURE_FILTER_ENTRY, (char *)WIRESHARK_STOCK_CAPTURE_FILTER_ENTRY, (char *)"_Capture Filter:"}, + {(char *)WIRESHARK_STOCK_CAPTURE_DETAILS, (char *)WIRESHARK_STOCK_CAPTURE_DETAILS, (char *)"_Details"}, + #ifdef HAVE_GEOIP + {(char *)WIRESHARK_STOCK_MAP, (char *)WIRESHARK_STOCK_MAP, (char *)"Map"}, + #endif + {(char *)WIRESHARK_STOCK_GRAPH_A_B, (char *)WIRESHARK_STOCK_GRAPH_A_B, (char *)"Graph A" UTF8_RIGHTWARDS_ARROW "B"}, + {(char *)WIRESHARK_STOCK_GRAPH_B_A, (char *)WIRESHARK_STOCK_GRAPH_B_A, (char *)"Graph A" UTF8_LEFTWARDS_ARROW "B"}, + {(char *)WIRESHARK_STOCK_FOLLOW_STREAM, (char *)WIRESHARK_STOCK_FOLLOW_STREAM, (char *)"Follow Stream"}, + {(char *)WIRESHARK_STOCK_DISPLAY_FILTER, (char *)WIRESHARK_STOCK_DISPLAY_FILTER, (char *)"Display _Filter"}, + {(char *)WIRESHARK_STOCK_DISPLAY_FILTER_ENTRY, (char *)WIRESHARK_STOCK_DISPLAY_FILTER_ENTRY, (char *)"F_ilter:"}, + {(char *)WIRESHARK_STOCK_BROWSE, (char *)GTK_STOCK_OPEN, (char *)"_Browse..."}, + {(char *)WIRESHARK_STOCK_CREATE_STAT, (char *)GTK_STOCK_OK, (char *)"Create _Stat"}, + {(char *)WIRESHARK_STOCK_EXPORT, (char *)GTK_STOCK_SAVE, (char *)"_Export..."}, /* XXX: needs a better icon */ + {(char *)WIRESHARK_STOCK_IMPORT, (char *)GTK_STOCK_OPEN, (char *)"_Import..."}, /* XXX: needs a better icon */ + {(char *)WIRESHARK_STOCK_EDIT, (char *)GTK_STOCK_PROPERTIES, (char *)"_Edit..."}, + {(char *)WIRESHARK_STOCK_ADD_EXPRESSION, (char *)GTK_STOCK_ADD, (char *)"E_xpression..." }, /* plus sign coming from icon */ + {(char *)WIRESHARK_STOCK_CLEAR_EXPRESSION, (char *)GTK_STOCK_CLEAR, (char *)"Clea_r" }, + {(char *)WIRESHARK_STOCK_APPLY_EXPRESSION, (char *)GTK_STOCK_APPLY, (char *)"App_ly" }, + {(char *)WIRESHARK_STOCK_SAVE_ALL, (char *)GTK_STOCK_SAVE, (char *)"Save A_ll"}, /* XXX: needs a better icon */ + {(char *)WIRESHARK_STOCK_DONT_SAVE, (char *)GTK_STOCK_CLEAR, (char *)"Continue _without Saving"}, + {(char *)WIRESHARK_STOCK_QUIT_DONT_SAVE, (char *)GTK_STOCK_CLEAR, (char *)"Quit _without Saving"}, + {(char *)WIRESHARK_STOCK_STOP_DONT_SAVE, (char *)GTK_STOCK_CLEAR, (char *)"Stop and Continue _without Saving"}, + {(char *)WIRESHARK_STOCK_STOP_QUIT_DONT_SAVE, (char *)GTK_STOCK_CLEAR, (char *)"Stop and Quit _without Saving"}, + {(char *)WIRESHARK_STOCK_STOP_SAVE, (char *)GTK_STOCK_SAVE, (char *)"Stop and Save"}, + {(char *)WIRESHARK_STOCK_ABOUT, (char *)WIRESHARK_STOCK_ABOUT, (char *)"_About"}, + {(char *)WIRESHARK_STOCK_COLORIZE, (char *)WIRESHARK_STOCK_COLORIZE, (char *)"_Colorize"}, + {(char *)WIRESHARK_STOCK_AUTOSCROLL, (char *)WIRESHARK_STOCK_AUTOSCROLL, (char *)"_Auto Scroll"}, + {(char *)WIRESHARK_STOCK_RESIZE_COLUMNS, (char *)WIRESHARK_STOCK_RESIZE_COLUMNS, (char *)"Resize Columns"}, + {(char *)WIRESHARK_STOCK_TIME, (char *)WIRESHARK_STOCK_TIME, (char *)"Time"}, + {(char *)WIRESHARK_STOCK_INTERNET, (char *)WIRESHARK_STOCK_INTERNET, (char *)"Internet"}, + {(char *)WIRESHARK_STOCK_WEB_SUPPORT, (char *)WIRESHARK_STOCK_WEB_SUPPORT, (char *)"Web Support"}, + {(char *)WIRESHARK_STOCK_WIKI, (char *)WIRESHARK_STOCK_WIKI, (char *)"Wiki"}, + {(char *)WIRESHARK_STOCK_CONVERSATIONS, (char *)WIRESHARK_STOCK_CONVERSATIONS, (char *)"Conversations"}, + {(char *)WIRESHARK_STOCK_ENDPOINTS, (char *)WIRESHARK_STOCK_ENDPOINTS, (char *)"Endpoints"}, + {(char *)WIRESHARK_STOCK_EXPERT_INFO, (char *)WIRESHARK_STOCK_EXPERT_INFO, (char *)"Expert Info"}, + {(char *)WIRESHARK_STOCK_GRAPHS, (char *)WIRESHARK_STOCK_GRAPHS, (char *)"Graphs"}, + {(char *)WIRESHARK_STOCK_FLOW_GRAPH, (char *)WIRESHARK_STOCK_FLOW_GRAPH, (char *)"Flow Graph"}, + {(char *)WIRESHARK_STOCK_TELEPHONY, (char *)WIRESHARK_STOCK_TELEPHONY, (char *)"Telephony"}, + {(char *)WIRESHARK_STOCK_DECODE_AS, (char *)WIRESHARK_STOCK_DECODE_AS, (char *)"Decode As"}, + {(char *)WIRESHARK_STOCK_CHECKBOX, (char *)WIRESHARK_STOCK_CHECKBOX, (char *)"Checkbox"}, + {(char *)WIRESHARK_STOCK_FILE_SET_LIST, (char *)WIRESHARK_STOCK_FILE_SET_LIST, (char *)"List Files"}, + {(char *)WIRESHARK_STOCK_FILE_SET_NEXT, (char *)WIRESHARK_STOCK_FILE_SET_NEXT, (char *)"Next File"}, + {(char *)WIRESHARK_STOCK_FILE_SET_PREVIOUS, (char *)WIRESHARK_STOCK_FILE_SET_PREVIOUS, (char *)"Previous File"}, + {(char *)WIRESHARK_STOCK_FILTER_OUT_STREAM, (char *)WIRESHARK_STOCK_FILTER_OUT_STREAM, (char *)"Filter Out This Stream"}, + {(char *)WIRESHARK_STOCK_ENABLE, (char *)WIRESHARK_STOCK_ENABLE, (char *)"Enable"}, + {(char *)WIRESHARK_STOCK_DISABLE, (char *)GTK_STOCK_CLOSE, (char *)"Disable"}, + {(char *)WIRESHARK_STOCK_COLOR1, (char *)WIRESHARK_STOCK_COLOR1, (char *)"Color 1"}, + {(char *)WIRESHARK_STOCK_COLOR2, (char *)WIRESHARK_STOCK_COLOR2, (char *)"Color 2"}, + {(char *)WIRESHARK_STOCK_COLOR3, (char *)WIRESHARK_STOCK_COLOR3, (char *)"Color 3"}, + {(char *)WIRESHARK_STOCK_COLOR4, (char *)WIRESHARK_STOCK_COLOR4, (char *)"Color 4"}, + {(char *)WIRESHARK_STOCK_COLOR5, (char *)WIRESHARK_STOCK_COLOR5, (char *)"Color 5"}, + {(char *)WIRESHARK_STOCK_COLOR6, (char *)WIRESHARK_STOCK_COLOR6, (char *)"Color 6"}, + {(char *)WIRESHARK_STOCK_COLOR7, (char *)WIRESHARK_STOCK_COLOR7, (char *)"Color 7"}, + {(char *)WIRESHARK_STOCK_COLOR8, (char *)WIRESHARK_STOCK_COLOR8, (char *)"Color 8"}, + {(char *)WIRESHARK_STOCK_COLOR9, (char *)WIRESHARK_STOCK_COLOR9, (char *)"Color 9"}, + {(char *)WIRESHARK_STOCK_COLOR0, (char *)WIRESHARK_STOCK_COLOR0, (char *)"Color 10"}, + {(char *)WIRESHARK_STOCK_DECODE, (char *)WIRESHARK_STOCK_DECODE, (char *)"Decode"}, + {(char *)WIRESHARK_STOCK_AUDIO_PLAYER, (char *)WIRESHARK_STOCK_AUDIO_PLAYER, (char *)"Player"}, + {(char *)WIRESHARK_STOCK_VOIP_FLOW, (char *)WIRESHARK_STOCK_VOIP_FLOW, (char *)"Flow"}, + {(char *)WIRESHARK_STOCK_TELEPHONE, (char *)WIRESHARK_STOCK_TELEPHONE, (char *)"Telephone"}, + {(char *)WIRESHARK_STOCK_PREPARE_FILTER, (char *)WIRESHARK_STOCK_PREPARE_FILTER, (char *)"Prepare Filter"}, + {(char *)WIRESHARK_STOCK_ANALYZE, (char *)WIRESHARK_STOCK_ANALYZE, (char *)"Analyze"}, + {(char *)WIRESHARK_STOCK_SAVE, (char *)WIRESHARK_STOCK_SAVE, (char *)"Save"} +}; + +static stock_item_t gtk_stock_items[] = { + {(char *)GTK_STOCK_ABOUT, (char *)"help-about", (char *)"_About"}, + {(char *)GTK_STOCK_ADD, (char *)"list-add", (char *)"_Add"}, + {(char *)GTK_STOCK_APPLY, NULL, (char *)"_Apply"}, + {(char *)GTK_STOCK_BOLD, (char *)"format-text-bold", (char *)"_Bold"}, + {(char *)GTK_STOCK_CANCEL, NULL, (char *)"_Cancel"}, + {(char *)GTK_STOCK_CAPS_LOCK_WARNING, NULL, NULL}, + {(char *)GTK_STOCK_CDROM, (char *)"media-optical", (char *)"_CD-ROM"}, + {(char *)GTK_STOCK_CLEAR, (char *)"edit-clear", (char *)"_Clear"}, + {(char *)GTK_STOCK_CLOSE, (char *)"window-close", (char *)"_Close"}, + {(char *)GTK_STOCK_COLOR_PICKER, NULL, NULL}, + {(char *)GTK_STOCK_CONNECT, NULL, (char *)"C_onnect"}, + {(char *)GTK_STOCK_CONVERT, NULL, (char *)"_Convert"}, + {(char *)GTK_STOCK_COPY, (char *)"edit-copy", (char *)"_Copy"}, + {(char *)GTK_STOCK_CUT, (char *)"edit-cut", (char *)"Cu_t"}, + {(char *)GTK_STOCK_DELETE, (char *)"edit-delete", (char *)"_Delete"}, + {(char *)GTK_STOCK_DIALOG_AUTHENTICATION, (char *)"dialog-password", NULL}, + {(char *)GTK_STOCK_DIALOG_INFO, (char *)"dialog-information", (char *)"Information"}, + {(char *)GTK_STOCK_DIALOG_WARNING, (char *)"dialog-warning", (char *)"Warning"}, + {(char *)GTK_STOCK_DIALOG_ERROR, (char *)"dialog-error", (char *)"Error"}, + {(char *)GTK_STOCK_DIALOG_QUESTION, (char *)"dialog-question", (char *)"Question"}, + {(char *)GTK_STOCK_DIRECTORY, (char *)"folder", NULL}, + {(char *)GTK_STOCK_DISCARD, NULL, (char *)"_Discard"}, + {(char *)GTK_STOCK_DISCONNECT, NULL, (char *)"_Disconnect"}, + {(char *)GTK_STOCK_DND, NULL, NULL}, + {(char *)GTK_STOCK_DND_MULTIPLE, NULL, NULL}, + {(char *)GTK_STOCK_EDIT, NULL, (char *)"_Edit"}, + {(char *)GTK_STOCK_EXECUTE, (char *)"system-run", (char *)"_Execute"}, + {(char *)GTK_STOCK_FILE, (char *)"text-x-generic", (char *)"_File"}, + {(char *)GTK_STOCK_FIND, (char *)"edit-find", (char *)"_Find"}, + {(char *)GTK_STOCK_FIND_AND_REPLACE, (char *)"edit-find-replace", (char *)"Find and _Replace"}, + {(char *)GTK_STOCK_FLOPPY, (char *)"media-floppy", (char *)"_Floppy"}, + {(char *)GTK_STOCK_FULLSCREEN, (char *)"view-fullscreen", (char *)"_Fullscreen"}, + {(char *)GTK_STOCK_GOTO_BOTTOM, (char *)"go-bottom", (char *)"_Bottom"}, + {(char *)GTK_STOCK_GOTO_FIRST, (char *)"go-first", (char *)"_First"}, + {(char *)GTK_STOCK_GOTO_LAST, (char *)"go-last", (char *)"_Last"}, + {(char *)GTK_STOCK_GOTO_TOP, (char *)"go-top", (char *)"_Top"}, + {(char *)GTK_STOCK_GO_BACK, (char *)"go-previous", (char *)"_Back"}, + {(char *)GTK_STOCK_GO_DOWN, (char *)"go-down", (char *)"_Down"}, + {(char *)GTK_STOCK_GO_FORWARD, (char *)"go-next", (char *)"_Forward"}, + {(char *)GTK_STOCK_GO_UP, (char *)"go-up", (char *)"_Up"}, + {(char *)GTK_STOCK_HARDDISK, (char *)"drive-harddisk", (char *)"_Hard Disk"}, + {(char *)GTK_STOCK_HELP, (char *)"help-browser", (char *)"_Help"}, + {(char *)GTK_STOCK_HOME, (char *)"go-home", (char *)"_Home"}, + {(char *)GTK_STOCK_INDEX, NULL, (char *)"_Index"}, + {(char *)GTK_STOCK_INDENT, (char *)"format-indent-more", (char *)"Increase Indent"}, + {(char *)GTK_STOCK_INFO, (char *)"dialog-information", (char *)"_Information"}, + {(char *)GTK_STOCK_ITALIC, (char *)"format-text-italic", (char *)"_Italic"}, + {(char *)GTK_STOCK_JUMP_TO, (char *)"go-jump", (char *)"_Jump to"}, + {(char *)GTK_STOCK_JUSTIFY_CENTER, (char *)"format-justify-center", (char *)"_Center"}, + {(char *)GTK_STOCK_JUSTIFY_FILL, (char *)"format-justify-fill", (char *)"_Fill"}, + {(char *)GTK_STOCK_JUSTIFY_LEFT, (char *)"format-justify-left", (char *)"_Left"}, + {(char *)GTK_STOCK_JUSTIFY_RIGHT, (char *)"format-justify-right", (char *)"_Right"}, + {(char *)GTK_STOCK_LEAVE_FULLSCREEN, (char *)"view-restore", (char *)"_Leave Fullscreen"}, + {(char *)GTK_STOCK_MISSING_IMAGE, (char *)"image-missing", NULL}, + {(char *)GTK_STOCK_MEDIA_FORWARD, (char *)"media-seek-forward", (char *)"_Forward"}, + {(char *)GTK_STOCK_MEDIA_NEXT, (char *)"media-skip-forward", (char *)"_Next"}, + {(char *)GTK_STOCK_MEDIA_PAUSE, (char *)"media-playback-pause", (char *)"P_ause"}, + {(char *)GTK_STOCK_MEDIA_PLAY, (char *)"media-playback-start", (char *)"_Play"}, + {(char *)GTK_STOCK_MEDIA_PREVIOUS, (char *)"media-skip-backward", (char *)"Pre_vious"}, + {(char *)GTK_STOCK_MEDIA_RECORD, (char *)"media-record", (char *)"_Record"}, + {(char *)GTK_STOCK_MEDIA_REWIND, (char *)"media-seek-backward", (char *)"R_ewind"}, + {(char *)GTK_STOCK_MEDIA_STOP, (char *)"media-playback-stop", (char *)"_Stop"}, + {(char *)GTK_STOCK_NETWORK, (char *)"network-workgroup", (char *)"_Network"}, + {(char *)GTK_STOCK_NEW, (char *)"document-new", (char *)"_New"}, + {(char *)GTK_STOCK_NO, NULL, (char *)"_No"}, + {(char *)GTK_STOCK_OK, NULL, (char *)"_OK"}, + {(char *)GTK_STOCK_OPEN, (char *)"document-open", (char *)"_Open"}, + {(char *)GTK_STOCK_ORIENTATION_PORTRAIT, (char *)"?", (char *)"Portrait"}, + {(char *)GTK_STOCK_ORIENTATION_LANDSCAPE, (char *)"?", (char *)"Landscape"}, + {(char *)GTK_STOCK_ORIENTATION_REVERSE_LANDSCAPE, (char *)"?", (char *)"Reverse landscape"}, + {(char *)GTK_STOCK_ORIENTATION_REVERSE_PORTRAIT, (char *)"?", (char *)"Reverse portrait"}, + {(char *)GTK_STOCK_PAGE_SETUP, (char *)"document-page-setup", (char *)"Page Set_up"}, + {(char *)GTK_STOCK_PASTE, (char *)"edit-paste", (char *)"_Paste"}, + {(char *)GTK_STOCK_PREFERENCES, (char *)"preferences-system", (char *)"_Preferences"}, + {(char *)GTK_STOCK_PRINT, (char *)"document-print", (char *)"_Print"}, + {(char *)GTK_STOCK_PRINT_ERROR, (char *)"printer-error", NULL}, + {(char *)GTK_STOCK_PRINT_PAUSED, NULL, NULL}, + {(char *)GTK_STOCK_PRINT_PREVIEW, NULL, (char *)"Print Pre_view"}, + {(char *)GTK_STOCK_PRINT_REPORT, NULL, NULL}, + {(char *)GTK_STOCK_PRINT_WARNING, NULL, NULL}, + {(char *)GTK_STOCK_PROPERTIES, (char *)"document-properties", (char *)"_Properties"}, + {(char *)GTK_STOCK_QUIT, (char *)"application-exit", (char *)"_Quit"}, + {(char *)GTK_STOCK_REDO, (char *)"edit-redo", (char *)"_Redo"}, + {(char *)GTK_STOCK_REFRESH, (char *)"view-refresh", (char *)"_Refresh"}, + {(char *)GTK_STOCK_REMOVE, (char *)"list-remove", (char *)"_Remove"}, + {(char *)GTK_STOCK_REVERT_TO_SAVED, (char *)"document-revert", (char *)"_Revert"}, + {(char *)GTK_STOCK_SAVE, (char *)"document-save", (char *)"_Save"}, + {(char *)GTK_STOCK_SAVE_AS, (char *)"document-save-as", (char *)"Save _As"}, + {(char *)GTK_STOCK_SELECT_ALL, (char *)"edit-select-all", (char *)"Select _All"}, + {(char *)GTK_STOCK_SELECT_COLOR, NULL, (char *)"_Color"}, + {(char *)GTK_STOCK_SELECT_FONT, NULL, (char *)"_Font"}, + {(char *)GTK_STOCK_SORT_ASCENDING, (char *)"view-sort-ascending", (char *)"_Ascending"}, + {(char *)GTK_STOCK_SORT_DESCENDING, (char *)"view-sort-descending", (char *)"_Descending"}, + {(char *)GTK_STOCK_SPELL_CHECK, (char *)"tools-check-spelling", (char *)"_Spell Check"}, + {(char *)GTK_STOCK_STOP, (char *)"process-stop", (char *)"_Stop"}, + {(char *)GTK_STOCK_STRIKETHROUGH, (char *)"format-text-strikethrough", (char *)"_Strikethrough"}, + {(char *)GTK_STOCK_UNDELETE, NULL, (char *)"_Undelete"}, + {(char *)GTK_STOCK_UNDERLINE, (char *)"format-text-underline", (char *)"_Underline"}, + {(char *)GTK_STOCK_UNDO, (char *)"edit-undo", (char *)"_Undo"}, + {(char *)GTK_STOCK_UNINDENT, (char *)"format-indent-less", NULL}, + {(char *)GTK_STOCK_YES, NULL, (char *)"_Yes"}, + {(char *)GTK_STOCK_ZOOM_100, (char *)"zoom-original", (char *)"_Normal Size"}, + {(char *)GTK_STOCK_ZOOM_FIT, (char *)"zoom-fit-best", (char *)"Best _Fit"}, + {(char *)GTK_STOCK_ZOOM_IN, (char *)"zoom-in", (char *)"Zoom _In"}, + {(char *)GTK_STOCK_ZOOM_OUT, (char *)"zoom-out", (char *)"Zoom _Out"}, +}; + +/** + * Compare two stock items by name. + */ +static int si_cmp(const stock_item_t * a, const stock_item_t * b) { + return strcmp(a->name, b->name); +} + + +#define BS(item, arr) (stock_item_t *)bsearch((void*)(((char*)&item) - offsetof(stock_item_t, name)), \ + (void*)arr, sizeof(arr) / sizeof(arr[0]), sizeof(arr[0]), \ + (int (*)(const void *, const void *))si_cmp) + /* generate application specific stock items */ void stock_icons_init(void) { + guint32 i; +#if !GTK_CHECK_VERSION(3, 10, 0) GtkIconFactory * factory; - gint32 i; - GdkPixbuf * pixbuf; GtkIconSet *icon_set; - - - /* register non-standard pixmaps with the gtk-stock engine */ - static const GtkStockItem stock_items[] = { - { (char *)WIRESHARK_STOCK_CAPTURE_INTERFACES, (char *)"_Interfaces", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_CAPTURE_OPTIONS, (char *)"_Options", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_CAPTURE_START, (char *)"_Start", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_CAPTURE_STOP, (char *)"S_top", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_CAPTURE_RESTART, (char *)"_Restart", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_CAPTURE_FILTER, (char *)"_Capture Filter", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_CAPTURE_FILTER_ENTRY, (char *)"_Capture Filter:", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_CAPTURE_DETAILS, (char *)"_Details", NO_MOD, 0, NULL }, -#ifdef HAVE_GEOIP - { (char *)WIRESHARK_STOCK_MAP, (char *)"Map", NO_MOD, 0, NULL }, + GtkIconSource *source16; #endif - { (char *)WIRESHARK_STOCK_GRAPH_A_B, (char *)"Graph A" UTF8_RIGHTWARDS_ARROW "B", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_GRAPH_B_A, (char *)"Graph A" UTF8_LEFTWARDS_ARROW "B", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_FOLLOW_STREAM, (char *)"Follow Stream", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_DISPLAY_FILTER, (char *)"Display _Filter", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_DISPLAY_FILTER_ENTRY, (char *)"F_ilter:", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_BROWSE, (char *)"_Browse...", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_CREATE_STAT, (char *)"Create _Stat", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_EXPORT, (char *)"_Export...", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_IMPORT, (char *)"_Import...", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_EDIT, (char *)"_Edit...", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_ADD_EXPRESSION, (char *)"E_xpression..." , NO_MOD, 0, NULL }, /* plus sign coming from icon */ - { (char *)WIRESHARK_STOCK_CLEAR_EXPRESSION, (char *)"Clea_r" , NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_APPLY_EXPRESSION, (char *)"App_ly" , NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_SAVE_ALL, (char *)"Save A_ll", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_DONT_SAVE, (char *)"Continue _without Saving", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_QUIT_DONT_SAVE, (char *)"Quit _without Saving", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_STOP_DONT_SAVE, (char *)"Stop and Continue _without Saving", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_STOP_QUIT_DONT_SAVE, (char *)"Stop and Quit _without Saving", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_STOP_SAVE, (char *)"Stop and Save", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_ABOUT, (char *)"_About", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_COLORIZE, (char *)"_Colorize", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_AUTOSCROLL, (char *)"_Auto Scroll", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_RESIZE_COLUMNS, (char *)"Resize Columns", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_TIME, (char *)"Time", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_INTERNET, (char *)"Internet", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_WEB_SUPPORT, (char *)"Web Support", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_WIKI, (char *)"Wiki", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_CONVERSATIONS, (char *)"Conversations", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_ENDPOINTS, (char *)"Endpoints", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_EXPERT_INFO, (char *)"Expert Info", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_GRAPHS, (char *)"Graphs", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_FLOW_GRAPH, (char *)"Flow Graph", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_TELEPHONY, (char *)"Telephony", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_DECODE_AS, (char *)"Decode As", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_CHECKBOX, (char *)"Checkbox", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_FILE_SET_LIST, (char *)"List Files", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_FILE_SET_NEXT, (char *)"Next File", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_FILE_SET_PREVIOUS, (char *)"Previous File", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_FILTER_OUT_STREAM, (char *)"Filter Out This Stream", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_ENABLE, (char *)"Enable", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_DISABLE, (char *)"Disable", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_COLOR1, (char *)"Color 1", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_COLOR2, (char *)"Color 2", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_COLOR3, (char *)"Color 3", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_COLOR4, (char *)"Color 4", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_COLOR5, (char *)"Color 5", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_COLOR6, (char *)"Color 6", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_COLOR7, (char *)"Color 7", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_COLOR8, (char *)"Color 8", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_COLOR9, (char *)"Color 9", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_COLOR0, (char *)"Color 10", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_DECODE, (char *)"Decode", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_AUDIO_PLAYER, (char *)"Player", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_VOIP_FLOW, (char *)"Flow", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_TELEPHONE, (char *)"Telephone", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_PREPARE_FILTER, (char *)"Prepare Filter", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_ANALYZE, (char *)"Analyze", NO_MOD, 0, NULL }, - { (char *)WIRESHARK_STOCK_SAVE, (char *)"Save", NO_MOD, 0, NULL } - }; static const stock_pixbuf_t pixbufs[] = { { WIRESHARK_STOCK_ABOUT, wsicon_16_pb_data, wsicon_24_pb_data }, @@ -176,130 +310,241 @@ void stock_icons_init(void) { /* New images should be PNGs + pixbufs above. Please don't add to this list. */ static const stock_pixmap_t pixmaps[] = { - { WIRESHARK_STOCK_CAPTURE_FILTER, capture_filter_24_xpm }, - { WIRESHARK_STOCK_CAPTURE_FILTER_ENTRY, capture_filter_24_xpm }, - { WIRESHARK_STOCK_CAPTURE_DETAILS, capture_details_24_xpm }, + { WIRESHARK_STOCK_CAPTURE_FILTER, capture_filter_24_xpm, 24}, + { WIRESHARK_STOCK_CAPTURE_FILTER_ENTRY, capture_filter_24_xpm, 24}, + { WIRESHARK_STOCK_CAPTURE_DETAILS, capture_details_24_xpm, 24}, #ifdef HAVE_GEOIP - { WIRESHARK_STOCK_MAP, internet_24_xpm}, + { WIRESHARK_STOCK_MAP, internet_24_xpm, 24}, #endif - { WIRESHARK_STOCK_DISPLAY_FILTER, display_filter_24_xpm }, - { WIRESHARK_STOCK_DISPLAY_FILTER_ENTRY, display_filter_24_xpm }, - { WIRESHARK_STOCK_COLORIZE, colorize_24_xpm }, - { WIRESHARK_STOCK_AUTOSCROLL, autoscroll_24_xpm }, - { WIRESHARK_STOCK_RESIZE_COLUMNS, resize_columns_24_xpm}, - { WIRESHARK_STOCK_TIME, time_24_xpm}, - { WIRESHARK_STOCK_INTERNET, internet_24_xpm}, - { WIRESHARK_STOCK_WEB_SUPPORT, web_support_24_xpm}, - { WIRESHARK_STOCK_CONVERSATIONS, conversations_16_xpm}, - { WIRESHARK_STOCK_ENDPOINTS, endpoints_16_xpm}, - { WIRESHARK_STOCK_EXPERT_INFO, expert_info_16_xpm}, - { WIRESHARK_STOCK_GRAPHS, graphs_16_xpm}, - { WIRESHARK_STOCK_FLOW_GRAPH, flow_graph_16_xpm}, - { WIRESHARK_STOCK_TELEPHONY, telephony_16_xpm}, - { WIRESHARK_STOCK_DECODE_AS, decode_as_16_xpm}, - { WIRESHARK_STOCK_CHECKBOX, checkbox_16_xpm}, - { WIRESHARK_STOCK_FILE_SET_LIST, file_set_list_16_xpm}, - { WIRESHARK_STOCK_FILE_SET_NEXT, file_set_next_16_xpm}, - { WIRESHARK_STOCK_FILE_SET_PREVIOUS, file_set_previous_16_xpm}, - { WIRESHARK_STOCK_FILTER_OUT_STREAM, display_filter_24_xpm}, - { WIRESHARK_STOCK_ENABLE, checkbox_16_xpm}, - { WIRESHARK_STOCK_COLOR1, icon_color_1_xpm}, - { WIRESHARK_STOCK_COLOR2, icon_color_2_xpm}, - { WIRESHARK_STOCK_COLOR3, icon_color_3_xpm}, - { WIRESHARK_STOCK_COLOR4, icon_color_4_xpm}, - { WIRESHARK_STOCK_COLOR5, icon_color_5_xpm}, - { WIRESHARK_STOCK_COLOR6, icon_color_6_xpm}, - { WIRESHARK_STOCK_COLOR7, icon_color_7_xpm}, - { WIRESHARK_STOCK_COLOR8, icon_color_8_xpm}, - { WIRESHARK_STOCK_COLOR9, icon_color_9_xpm}, - { WIRESHARK_STOCK_COLOR0, icon_color_0_xpm}, - { WIRESHARK_STOCK_DECODE, decode_24_xpm}, - { WIRESHARK_STOCK_AUDIO_PLAYER, audio_player_24_xpm}, - { WIRESHARK_STOCK_VOIP_FLOW, voip_flow_24_xpm}, - { WIRESHARK_STOCK_TELEPHONE, telephone_16_xpm}, - { WIRESHARK_STOCK_PREPARE_FILTER, display_filter_24_xpm}, - { WIRESHARK_STOCK_ANALYZE, analyze_24_xpm}, - { NULL, NULL } + { WIRESHARK_STOCK_DISPLAY_FILTER, display_filter_24_xpm, 24}, + { WIRESHARK_STOCK_DISPLAY_FILTER_ENTRY, display_filter_24_xpm, 24}, + { WIRESHARK_STOCK_COLORIZE, colorize_24_xpm, 24}, + { WIRESHARK_STOCK_AUTOSCROLL, autoscroll_24_xpm, 24}, + { WIRESHARK_STOCK_RESIZE_COLUMNS, resize_columns_24_xpm, 24}, + { WIRESHARK_STOCK_TIME, time_24_xpm, 24}, + { WIRESHARK_STOCK_INTERNET, internet_24_xpm, 24}, + { WIRESHARK_STOCK_WEB_SUPPORT, web_support_24_xpm, 24}, + { WIRESHARK_STOCK_CONVERSATIONS, conversations_16_xpm, 16}, + { WIRESHARK_STOCK_ENDPOINTS, endpoints_16_xpm, 16}, + { WIRESHARK_STOCK_EXPERT_INFO, expert_info_16_xpm, 16}, + { WIRESHARK_STOCK_GRAPHS, graphs_16_xpm, 16}, + { WIRESHARK_STOCK_FLOW_GRAPH, flow_graph_16_xpm, 16}, + { WIRESHARK_STOCK_TELEPHONY, telephony_16_xpm, 16}, + { WIRESHARK_STOCK_DECODE_AS, decode_as_16_xpm, 16}, + { WIRESHARK_STOCK_CHECKBOX, checkbox_16_xpm, 16}, + { WIRESHARK_STOCK_FILE_SET_LIST, file_set_list_16_xpm, 16}, + { WIRESHARK_STOCK_FILE_SET_NEXT, file_set_next_16_xpm, 16}, + { WIRESHARK_STOCK_FILE_SET_PREVIOUS, file_set_previous_16_xpm, 16}, + { WIRESHARK_STOCK_FILTER_OUT_STREAM, display_filter_24_xpm, 24}, + { WIRESHARK_STOCK_ENABLE, checkbox_16_xpm, 16}, + { WIRESHARK_STOCK_COLOR1, icon_color_1_xpm, 24}, + { WIRESHARK_STOCK_COLOR2, icon_color_2_xpm, 24}, + { WIRESHARK_STOCK_COLOR3, icon_color_3_xpm, 24}, + { WIRESHARK_STOCK_COLOR4, icon_color_4_xpm, 24}, + { WIRESHARK_STOCK_COLOR5, icon_color_5_xpm, 24}, + { WIRESHARK_STOCK_COLOR6, icon_color_6_xpm, 24}, + { WIRESHARK_STOCK_COLOR7, icon_color_7_xpm, 24}, + { WIRESHARK_STOCK_COLOR8, icon_color_8_xpm, 24}, + { WIRESHARK_STOCK_COLOR9, icon_color_9_xpm, 24}, + { WIRESHARK_STOCK_COLOR0, icon_color_0_xpm, 24}, + { WIRESHARK_STOCK_DECODE, decode_24_xpm, 24}, + { WIRESHARK_STOCK_AUDIO_PLAYER, audio_player_24_xpm, 24}, + { WIRESHARK_STOCK_VOIP_FLOW, voip_flow_24_xpm, 24}, + { WIRESHARK_STOCK_TELEPHONE, telephone_16_xpm, 16}, + { WIRESHARK_STOCK_PREPARE_FILTER, display_filter_24_xpm, 24}, + { WIRESHARK_STOCK_ANALYZE, analyze_24_xpm, 24}, + { NULL, NULL, 0} }; - /* Register our stock items */ - gtk_stock_add (stock_items, G_N_ELEMENTS (stock_items)); + /* sort lookup arrays */ + qsort(ws_stock_items, sizeof(ws_stock_items)/sizeof(ws_stock_items[0]), + sizeof(ws_stock_items[0]), (int (*)(const void *, const void *))si_cmp); + qsort(gtk_stock_items, sizeof(gtk_stock_items)/sizeof(gtk_stock_items[0]), + sizeof(gtk_stock_items[0]), (int (*)(const void *, const void *))si_cmp); +#if !GTK_CHECK_VERSION(3, 10, 0) + for (i = 0; i < (sizeof(ws_stock_items) / sizeof(ws_stock_items[0])) ; i++) { + GtkStockItem stock_item = + {(char *)ws_stock_items[i].name, + (char *)ws_stock_items[i].label, + (GdkModifierType)0, 0, NULL}; + gtk_stock_add(&stock_item, 1); + } /* Add our custom icon factory to the list of defaults */ factory = gtk_icon_factory_new(); gtk_icon_factory_add_default(factory); +#endif - /* Add pixmaps our icon factory */ + /* Add pixmaps as builtin theme icons */ /* Please use pixbufs (below) for new icons */ for (i = 0; pixmaps[i].name != NULL; i++) { /* The default icon */ - pixbuf = gdk_pixbuf_new_from_xpm_data((const char **) (pixmaps[i].xpm_data)); + GdkPixbuf * pixbuf = gdk_pixbuf_new_from_xpm_data((const char **) (pixmaps[i].xpm_data)); g_assert(pixbuf); +#if !GTK_CHECK_VERSION(3, 10, 0) icon_set = gtk_icon_set_new_from_pixbuf (pixbuf); - - /* XXX - add different sized icons here (some 16*16 icons look a bit blurred) */ - /*gtk_icon_set_add_source(icon_set, const GtkIconSource *source);*/ - gtk_icon_factory_add (factory, pixmaps[i].name, icon_set); gtk_icon_set_unref (icon_set); +#endif + gtk_icon_theme_add_builtin_icon(pixmaps[i].name, pixmaps[i].size, pixbuf); g_object_unref (G_OBJECT (pixbuf)); } - /* Add pixbufs our icon factory */ + /* Add pixbufs as builtin theme icons */ for (i = 0; pixbufs[i].name != NULL; i++) { + GdkPixbuf * pixbuf24 = gdk_pixbuf_new_from_inline(-1, pixbufs[i].pb_data24, FALSE, NULL); + g_assert(pixbuf24); +#if !GTK_CHECK_VERSION(3, 10, 0) + icon_set = gtk_icon_set_new_from_pixbuf(pixbuf24); + gtk_icon_factory_add (factory, pixbufs[i].name, icon_set); + gtk_icon_set_unref (icon_set); +#endif /* Default image */ - icon_set = gtk_icon_set_new_from_pixbuf(gdk_pixbuf_new_from_inline(-1, pixbufs[i].pb_data24, FALSE, NULL)); + gtk_icon_theme_add_builtin_icon(pixbufs[i].name, 24, pixbuf24); + if (pixbufs[i].pb_data16) { - GtkIconSource *source16 = gtk_icon_source_new(); - gtk_icon_source_set_pixbuf(source16, gdk_pixbuf_new_from_inline(-1, pixbufs[i].pb_data16, FALSE, NULL)); + GdkPixbuf * pixbuf16 = gdk_pixbuf_new_from_inline(-1, pixbufs[i].pb_data16, FALSE, NULL); + g_assert(pixbuf16); +#if !GTK_CHECK_VERSION(3, 10, 0) + source16 = gtk_icon_source_new(); + gtk_icon_source_set_pixbuf(source16, pixbuf16); gtk_icon_source_set_size_wildcarded(source16, FALSE); gtk_icon_source_set_size(source16, GTK_ICON_SIZE_MENU); - gtk_icon_set_add_source(icon_set, source16); /* Twice? Really? Seriously? */ source16 = gtk_icon_source_new(); - gtk_icon_source_set_pixbuf(source16, gdk_pixbuf_new_from_inline(-1, pixbufs[i].pb_data16, FALSE, NULL)); + gtk_icon_source_set_pixbuf(source16, pixbuf16); gtk_icon_source_set_size_wildcarded(source16, FALSE); gtk_icon_source_set_size(source16, GTK_ICON_SIZE_SMALL_TOOLBAR); - gtk_icon_set_add_source(icon_set, source16); +#else + gtk_icon_theme_add_builtin_icon(pixbufs[i].name, 16, pixbuf16); +#endif + g_object_unref (G_OBJECT (pixbuf16)); } - - gtk_icon_factory_add (factory, pixbufs[i].name, icon_set); - gtk_icon_set_unref (icon_set); + g_object_unref (G_OBJECT (pixbuf24)); } - +#if !GTK_CHECK_VERSION(3, 10, 0) /* use default stock icons for Wireshark specifics where the icon metapher makes sense */ /* PLEASE DON'T REUSE STOCK ICONS IF THEY ARE USUALLY USED FOR SOME DIFFERENT MEANING!!!) */ - icon_set = gtk_icon_factory_lookup_default(GTK_STOCK_OPEN); - gtk_icon_factory_add(factory, WIRESHARK_STOCK_BROWSE, icon_set); - icon_set = gtk_icon_factory_lookup_default(GTK_STOCK_OK); - gtk_icon_factory_add(factory, WIRESHARK_STOCK_CREATE_STAT, icon_set); - icon_set = gtk_icon_factory_lookup_default(GTK_STOCK_SAVE); - gtk_icon_factory_add(factory, WIRESHARK_STOCK_EXPORT, icon_set); /* XXX: needs a better icon */ - icon_set = gtk_icon_factory_lookup_default(GTK_STOCK_OPEN); - gtk_icon_factory_add(factory, WIRESHARK_STOCK_IMPORT, icon_set); /* XXX: needs a better icon */ - icon_set = gtk_icon_factory_lookup_default(GTK_STOCK_PROPERTIES); - gtk_icon_factory_add(factory, WIRESHARK_STOCK_EDIT, icon_set); - icon_set = gtk_icon_factory_lookup_default(GTK_STOCK_ADD); - gtk_icon_factory_add(factory, WIRESHARK_STOCK_ADD_EXPRESSION, icon_set); - icon_set = gtk_icon_factory_lookup_default(GTK_STOCK_CLEAR); - gtk_icon_factory_add(factory, WIRESHARK_STOCK_CLEAR_EXPRESSION, icon_set); - icon_set = gtk_icon_factory_lookup_default(GTK_STOCK_APPLY); - gtk_icon_factory_add(factory, WIRESHARK_STOCK_APPLY_EXPRESSION, icon_set); - icon_set = gtk_icon_factory_lookup_default(GTK_STOCK_CLEAR); - gtk_icon_factory_add(factory, WIRESHARK_STOCK_DONT_SAVE, icon_set); - gtk_icon_factory_add(factory, WIRESHARK_STOCK_QUIT_DONT_SAVE, icon_set); - gtk_icon_factory_add(factory, WIRESHARK_STOCK_STOP_DONT_SAVE, icon_set); - gtk_icon_factory_add(factory, WIRESHARK_STOCK_STOP_QUIT_DONT_SAVE, icon_set); - icon_set = gtk_icon_factory_lookup_default(GTK_STOCK_SAVE); - gtk_icon_factory_add(factory, WIRESHARK_STOCK_STOP_SAVE, icon_set); - gtk_icon_factory_add(factory, WIRESHARK_STOCK_SAVE_ALL, icon_set); /* XXX: needs a better icon */ - icon_set = gtk_icon_factory_lookup_default(GTK_STOCK_CLOSE); - gtk_icon_factory_add(factory, WIRESHARK_STOCK_DISABLE, icon_set); - /* Drop our reference to the factory, GTK will hold a reference.*/ - g_object_unref (G_OBJECT (factory)); + for (i = 0; i < (sizeof(ws_stock_items) / sizeof(ws_stock_items[0])) ; i++) { + stock_item_t * fallback_item = NULL; + if (NULL != (fallback_item = BS(ws_stock_items[i].icon, gtk_stock_items))) { + icon_set = gtk_icon_factory_lookup_default(fallback_item->name); + gtk_icon_factory_add(factory, ws_stock_items[i].name, icon_set); + } + } +#endif +} + +GtkWidget * ws_gtk_button_new_from_stock(const gchar *stock_id) { +#if !GTK_CHECK_VERSION(3, 10, 0) + return gtk_button_new_from_stock(stock_id); +#else + GtkWidget * b; + stock_item_t * i = NULL; + if (NULL != (i = BS(stock_id, gtk_stock_items))) { + /* GTK stock item*/ + return gtk_button_new_with_mnemonic(i->label); + } else if (NULL != (i = BS(stock_id, ws_stock_items))) { + /* Wireshark stock item*/ + stock_item_t * fallback_item; + if (NULL != (fallback_item = BS(i->icon, gtk_stock_items))) { + /* Wireshark fallback item uses a GTK stock icon*/ + b = gtk_button_new_from_icon_name(fallback_item->icon, GTK_ICON_SIZE_BUTTON); + } else { + b = gtk_button_new_from_icon_name(i->icon, GTK_ICON_SIZE_BUTTON); + } + gtk_button_set_label(GTK_BUTTON(b), i->label); + gtk_button_set_use_underline(GTK_BUTTON(b), TRUE); + return b; + } + return NULL; +#endif +} + +#define LBL_UNDERLINE(type, tb, lbl_item) \ + gtk_tool_button_set_label(type(tb), (lbl_item)->label); \ + gtk_tool_button_set_use_underline(type(tb), TRUE); + +GtkToolItem * ws_gtk_tool_button_new_from_stock(const gchar *stock_id) { +#if !GTK_CHECK_VERSION(3, 10, 0) + return gtk_tool_button_new_from_stock(stock_id); +#else + GtkToolItem * b = NULL; + stock_item_t * i = NULL; + if (NULL != (i = BS(stock_id, gtk_stock_items))) { + /* GTK stock item*/ + b = gtk_tool_button_new(NULL, i->label); + gtk_tool_button_set_use_underline(GTK_TOOL_BUTTON(b), TRUE); + gtk_tool_button_set_icon_name(GTK_TOOL_BUTTON (b), i->icon); + } else if (NULL != (i = BS(stock_id, ws_stock_items))) { + /* Wireshark stock item*/ + stock_item_t * fallback_item; + if (NULL != (fallback_item = BS(i->icon, gtk_stock_items))) { + /* Wireshark fallback item uses a GTK stock icon*/ + b = gtk_tool_button_new(NULL, i->label); + gtk_tool_button_set_use_underline(GTK_TOOL_BUTTON(b), TRUE); + gtk_tool_button_set_icon_name(GTK_TOOL_BUTTON(b), fallback_item->icon); + } else { + b = gtk_tool_button_new(NULL, i->label); + gtk_tool_button_set_icon_name(GTK_TOOL_BUTTON(b), i->icon); + } + } + return b; +#endif +} + +GtkToolItem * ws_gtk_toggle_tool_button_new_from_stock(const gchar *stock_id) { +#if !GTK_CHECK_VERSION(3, 10, 0) + return gtk_toggle_tool_button_new_from_stock(stock_id); +#else + GtkToolItem * b = NULL; + stock_item_t * i = NULL; + if (NULL != (i = BS(stock_id, gtk_stock_items))) { + /* GTK stock item*/ + b = gtk_toggle_tool_button_new(); + gtk_tool_button_set_icon_name(GTK_TOOL_BUTTON (b), i->icon); + LBL_UNDERLINE(GTK_TOOL_BUTTON, b, i); + } else if (NULL != (i = BS(stock_id, ws_stock_items))) { + /* Wireshark stock item*/ + stock_item_t * fallback_item; + if (NULL != (fallback_item = BS(i->icon, gtk_stock_items))) { + /* Wireshark fallback item uses a GTK stock icon*/ + b = gtk_toggle_tool_button_new(); + gtk_tool_button_set_icon_name(GTK_TOOL_BUTTON (b), fallback_item->icon); + LBL_UNDERLINE(GTK_TOOL_BUTTON, b, i); + } else { + b = gtk_toggle_tool_button_new(); + gtk_tool_button_set_icon_name(GTK_TOOL_BUTTON (b), i->icon); + LBL_UNDERLINE(GTK_TOOL_BUTTON, b, i); + } + } + return b; +#endif +} + +GtkWidget * ws_gtk_image_new_from_stock(const gchar *stock_id, GtkIconSize size) { +#if !GTK_CHECK_VERSION(3, 10, 0) + return gtk_image_new_from_stock(stock_id, size); +#else + stock_item_t * i = NULL; + if (NULL != (i = BS(stock_id, gtk_stock_items))) { + /* GTK stock item*/ + return gtk_image_new_from_icon_name(i->icon, size); + } else if (NULL != (i = BS(stock_id, ws_stock_items))) { + /* Wireshark stock item*/ + stock_item_t * fallback_item; + if (NULL != (fallback_item = BS(i->icon, gtk_stock_items))) { + /* Wireshark fallback item uses a GTK stock icon*/ + return gtk_image_new_from_icon_name(fallback_item->icon, size); + } else { + return gtk_image_new_from_icon_name(i->icon, size); + } + } + return NULL; +#endif } /* diff --git a/ui/gtk/stock_icons.h b/ui/gtk/stock_icons.h index 417b9884ea..b5fd9d0ec9 100644 --- a/ui/gtk/stock_icons.h +++ b/ui/gtk/stock_icons.h @@ -24,6 +24,7 @@ #ifndef __STOCK_ICONS_H__ #define __STOCK_ICONS_H__ +#include #define WIRESHARK_STOCK_CAPTURE_INTERFACES "Wireshark_Stock_CaptureInterfaces" #define WIRESHARK_STOCK_CAPTURE_OPTIONS "Wireshark_Stock_CaptureOptionss" @@ -95,6 +96,570 @@ #define WIRESHARK_STOCK_ANALYZE "Wireshark_Analyze" #define WIRESHARK_STOCK_SAVE "Wireshark_Save" +/* + * Use of GTK_STOCK_.* is deprecated from 3.10 + * https://developer.gnome.org/gtk3/stable/gtk3-Stock-Items.html + * We keep the defined names in the code and provide mapping for them + * to labels and standard icons based on + * https://docs.google.com/spreadsheet/pub?key=0AsPAM3pPwxagdGF4THNMMUpjUW5xMXZfdUNzMXhEa2c&output=html + */ +#if GTK_CHECK_VERSION(3, 10, 0) + +#ifdef GTK_STOCK_ABOUT +#undef GTK_STOCK_ABOUT +#endif +#define GTK_STOCK_ABOUT "gtk-about" + +#ifdef GTK_STOCK_ADD +#undef GTK_STOCK_ADD +#endif +#define GTK_STOCK_ADD "gtk-add" + +#ifdef GTK_STOCK_APPLY +#undef GTK_STOCK_APPLY +#endif +#define GTK_STOCK_APPLY "gtk-apply" + +#ifdef GTK_STOCK_BOLD +#undef GTK_STOCK_BOLD +#endif +#define GTK_STOCK_BOLD "gtk-bold" + +#ifdef GTK_STOCK_CANCEL +#undef GTK_STOCK_CANCEL +#endif +#define GTK_STOCK_CANCEL "gtk-cancel" + +#ifdef GTK_STOCK_CAPS_LOCK_WARNING +#undef GTK_STOCK_CAPS_LOCK_WARNING +#endif +#define GTK_STOCK_CAPS_LOCK_WARNING "gtk-caps-lock-warning" + +#ifdef GTK_STOCK_CDROM +#undef GTK_STOCK_CDROM +#endif +#define GTK_STOCK_CDROM "gtk-cdrom" + +#ifdef GTK_STOCK_CLEAR +#undef GTK_STOCK_CLEAR +#endif +#define GTK_STOCK_CLEAR "gtk-clear" + +#ifdef GTK_STOCK_CLOSE +#undef GTK_STOCK_CLOSE +#endif +#define GTK_STOCK_CLOSE "gtk-close" + +#ifdef GTK_STOCK_COLOR_PICKER +#undef GTK_STOCK_COLOR_PICKER +#endif +#define GTK_STOCK_COLOR_PICKER "gtk-color-picker" + +#ifdef GTK_STOCK_CONNECT +#undef GTK_STOCK_CONNECT +#endif +#define GTK_STOCK_CONNECT "gtk-connect" + +#ifdef GTK_STOCK_CONVERT +#undef GTK_STOCK_CONVERT +#endif +#define GTK_STOCK_CONVERT "gtk-convert" + +#ifdef GTK_STOCK_COPY +#undef GTK_STOCK_COPY +#endif +#define GTK_STOCK_COPY "gtk-copy" + +#ifdef GTK_STOCK_CUT +#undef GTK_STOCK_CUT +#endif +#define GTK_STOCK_CUT "gtk-cut" + +#ifdef GTK_STOCK_DELETE +#undef GTK_STOCK_DELETE +#endif +#define GTK_STOCK_DELETE "gtk-delete" + +#ifdef GTK_STOCK_DIALOG_AUTHENTICATION +#undef GTK_STOCK_DIALOG_AUTHENTICATION +#endif +#define GTK_STOCK_DIALOG_AUTHENTICATION "gtk-dialog-authentication" + +#ifdef GTK_STOCK_DIALOG_INFO +#undef GTK_STOCK_DIALOG_INFO +#endif +#define GTK_STOCK_DIALOG_INFO "gtk-dialog-info" + +#ifdef GTK_STOCK_DIALOG_WARNING +#undef GTK_STOCK_DIALOG_WARNING +#endif +#define GTK_STOCK_DIALOG_WARNING "gtk-dialog-warning" + +#ifdef GTK_STOCK_DIALOG_ERROR +#undef GTK_STOCK_DIALOG_ERROR +#endif +#define GTK_STOCK_DIALOG_ERROR "gtk-dialog-error" + +#ifdef GTK_STOCK_DIALOG_QUESTION +#undef GTK_STOCK_DIALOG_QUESTION +#endif +#define GTK_STOCK_DIALOG_QUESTION "gtk-dialog-question" + +#ifdef GTK_STOCK_DIRECTORY +#undef GTK_STOCK_DIRECTORY +#endif +#define GTK_STOCK_DIRECTORY "gtk-directory" + +#ifdef GTK_STOCK_DISCARD +#undef GTK_STOCK_DISCARD +#endif +#define GTK_STOCK_DISCARD "gtk-discard" + +#ifdef GTK_STOCK_DISCONNECT +#undef GTK_STOCK_DISCONNECT +#endif +#define GTK_STOCK_DISCONNECT "gtk-disconnect" + +#ifdef GTK_STOCK_DND +#undef GTK_STOCK_DND +#endif +#define GTK_STOCK_DND "gtk-dnd" + +#ifdef GTK_STOCK_DND_MULTIPLE +#undef GTK_STOCK_DND_MULTIPLE +#endif +#define GTK_STOCK_DND_MULTIPLE "gtk-dnd-multiple" + +#ifdef GTK_STOCK_EDIT +#undef GTK_STOCK_EDIT +#endif +#define GTK_STOCK_EDIT "gtk-edit" + +#ifdef GTK_STOCK_EXECUTE +#undef GTK_STOCK_EXECUTE +#endif +#define GTK_STOCK_EXECUTE "gtk-execute" + +#ifdef GTK_STOCK_FILE +#undef GTK_STOCK_FILE +#endif +#define GTK_STOCK_FILE "gtk-file" + +#ifdef GTK_STOCK_FIND +#undef GTK_STOCK_FIND +#endif +#define GTK_STOCK_FIND "gtk-find" + +#ifdef GTK_STOCK_FIND_AND_REPLACE +#undef GTK_STOCK_FIND_AND_REPLACE +#endif +#define GTK_STOCK_FIND_AND_REPLACE "gtk-find-and-replace" + +#ifdef GTK_STOCK_FLOPPY +#undef GTK_STOCK_FLOPPY +#endif +#define GTK_STOCK_FLOPPY "gtk-floppy" + +#ifdef GTK_STOCK_FULLSCREEN +#undef GTK_STOCK_FULLSCREEN +#endif +#define GTK_STOCK_FULLSCREEN "gtk-fullscreen" + +#ifdef GTK_STOCK_GOTO_BOTTOM +#undef GTK_STOCK_GOTO_BOTTOM +#endif +#define GTK_STOCK_GOTO_BOTTOM "gtk-goto-bottom" + +#ifdef GTK_STOCK_GOTO_FIRST +#undef GTK_STOCK_GOTO_FIRST +#endif +#define GTK_STOCK_GOTO_FIRST "gtk-goto-first" + +#ifdef GTK_STOCK_GOTO_LAST +#undef GTK_STOCK_GOTO_LAST +#endif +#define GTK_STOCK_GOTO_LAST "gtk-goto-last" + +#ifdef GTK_STOCK_GOTO_TOP +#undef GTK_STOCK_GOTO_TOP +#endif +#define GTK_STOCK_GOTO_TOP "gtk-goto-top" + +#ifdef GTK_STOCK_GO_BACK +#undef GTK_STOCK_GO_BACK +#endif +#define GTK_STOCK_GO_BACK "gtk-go-back" + +#ifdef GTK_STOCK_GO_DOWN +#undef GTK_STOCK_GO_DOWN +#endif +#define GTK_STOCK_GO_DOWN "gtk-go-down" + +#ifdef GTK_STOCK_GO_FORWARD +#undef GTK_STOCK_GO_FORWARD +#endif +#define GTK_STOCK_GO_FORWARD "gtk-go-forward" + +#ifdef GTK_STOCK_GO_UP +#undef GTK_STOCK_GO_UP +#endif +#define GTK_STOCK_GO_UP "gtk-go-up" + +#ifdef GTK_STOCK_HARDDISK +#undef GTK_STOCK_HARDDISK +#endif +#define GTK_STOCK_HARDDISK "gtk-harddisk" + +#ifdef GTK_STOCK_HELP +#undef GTK_STOCK_HELP +#endif +#define GTK_STOCK_HELP "gtk-help" + +#ifdef GTK_STOCK_HOME +#undef GTK_STOCK_HOME +#endif +#define GTK_STOCK_HOME "gtk-home" + +#ifdef GTK_STOCK_INDEX +#undef GTK_STOCK_INDEX +#endif +#define GTK_STOCK_INDEX "gtk-index" + +#ifdef GTK_STOCK_INDENT +#undef GTK_STOCK_INDENT +#endif +#define GTK_STOCK_INDENT "gtk-indent" + +#ifdef GTK_STOCK_INFO +#undef GTK_STOCK_INFO +#endif +#define GTK_STOCK_INFO "gtk-info" + +#ifdef GTK_STOCK_ITALIC +#undef GTK_STOCK_ITALIC +#endif +#define GTK_STOCK_ITALIC "gtk-italic" + +#ifdef GTK_STOCK_JUMP_TO +#undef GTK_STOCK_JUMP_TO +#endif +#define GTK_STOCK_JUMP_TO "gtk-jump-to" + +#ifdef GTK_STOCK_JUSTIFY_CENTER +#undef GTK_STOCK_JUSTIFY_CENTER +#endif +#define GTK_STOCK_JUSTIFY_CENTER "gtk-justify-center" + +#ifdef GTK_STOCK_JUSTIFY_FILL +#undef GTK_STOCK_JUSTIFY_FILL +#endif +#define GTK_STOCK_JUSTIFY_FILL "gtk-justify-fill" + +#ifdef GTK_STOCK_JUSTIFY_LEFT +#undef GTK_STOCK_JUSTIFY_LEFT +#endif +#define GTK_STOCK_JUSTIFY_LEFT "gtk-justify-left" + +#ifdef GTK_STOCK_JUSTIFY_RIGHT +#undef GTK_STOCK_JUSTIFY_RIGHT +#endif +#define GTK_STOCK_JUSTIFY_RIGHT "gtk-justify-right" + +#ifdef GTK_STOCK_LEAVE_FULLSCREEN +#undef GTK_STOCK_LEAVE_FULLSCREEN +#endif +#define GTK_STOCK_LEAVE_FULLSCREEN "gtk-leave-fullscreen" + +#ifdef GTK_STOCK_MISSING_IMAGE +#undef GTK_STOCK_MISSING_IMAGE +#endif +#define GTK_STOCK_MISSING_IMAGE "gtk-missing-image" + +#ifdef GTK_STOCK_MEDIA_FORWARD +#undef GTK_STOCK_MEDIA_FORWARD +#endif +#define GTK_STOCK_MEDIA_FORWARD "gtk-media-forward" + +#ifdef GTK_STOCK_MEDIA_NEXT +#undef GTK_STOCK_MEDIA_NEXT +#endif +#define GTK_STOCK_MEDIA_NEXT "gtk-media-next" + +#ifdef GTK_STOCK_MEDIA_PAUSE +#undef GTK_STOCK_MEDIA_PAUSE +#endif +#define GTK_STOCK_MEDIA_PAUSE "gtk-media-pause" + +#ifdef GTK_STOCK_MEDIA_PLAY +#undef GTK_STOCK_MEDIA_PLAY +#endif +#define GTK_STOCK_MEDIA_PLAY "gtk-media-play" + +#ifdef GTK_STOCK_MEDIA_PREVIOUS +#undef GTK_STOCK_MEDIA_PREVIOUS +#endif +#define GTK_STOCK_MEDIA_PREVIOUS "gtk-media-previous" + +#ifdef GTK_STOCK_MEDIA_RECORD +#undef GTK_STOCK_MEDIA_RECORD +#endif +#define GTK_STOCK_MEDIA_RECORD "gtk-media-record" + +#ifdef GTK_STOCK_MEDIA_REWIND +#undef GTK_STOCK_MEDIA_REWIND +#endif +#define GTK_STOCK_MEDIA_REWIND "gtk-media-rewind" + +#ifdef GTK_STOCK_MEDIA_STOP +#undef GTK_STOCK_MEDIA_STOP +#endif +#define GTK_STOCK_MEDIA_STOP "gtk-media-stop" + +#ifdef GTK_STOCK_NETWORK +#undef GTK_STOCK_NETWORK +#endif +#define GTK_STOCK_NETWORK "gtk-network" + +#ifdef GTK_STOCK_NEW +#undef GTK_STOCK_NEW +#endif +#define GTK_STOCK_NEW "gtk-new" + +#ifdef GTK_STOCK_NO +#undef GTK_STOCK_NO +#endif +#define GTK_STOCK_NO "gtk-no" + +#ifdef GTK_STOCK_OK +#undef GTK_STOCK_OK +#endif +#define GTK_STOCK_OK "gtk-ok" + +#ifdef GTK_STOCK_OPEN +#undef GTK_STOCK_OPEN +#endif +#define GTK_STOCK_OPEN "gtk-open" + +#ifdef GTK_STOCK_ORIENTATION_PORTRAIT +#undef GTK_STOCK_ORIENTATION_PORTRAIT +#endif +#define GTK_STOCK_ORIENTATION_PORTRAIT "gtk-orientation-portrait" + +#ifdef GTK_STOCK_ORIENTATION_LANDSCAPE +#undef GTK_STOCK_ORIENTATION_LANDSCAPE +#endif +#define GTK_STOCK_ORIENTATION_LANDSCAPE "gtk-orientation-landscape" + +#ifdef GTK_STOCK_ORIENTATION_REVERSE_LANDSCAPE +#undef GTK_STOCK_ORIENTATION_REVERSE_LANDSCAPE +#endif +#define GTK_STOCK_ORIENTATION_REVERSE_LANDSCAPE "gtk-orientation-reverse-landscape" + +#ifdef GTK_STOCK_ORIENTATION_REVERSE_PORTRAIT +#undef GTK_STOCK_ORIENTATION_REVERSE_PORTRAIT +#endif +#define GTK_STOCK_ORIENTATION_REVERSE_PORTRAIT "gtk-orientation-reverse-portrait" + +#ifdef GTK_STOCK_PAGE_SETUP +#undef GTK_STOCK_PAGE_SETUP +#endif +#define GTK_STOCK_PAGE_SETUP "gtk-page-setup" + +#ifdef GTK_STOCK_PASTE +#undef GTK_STOCK_PASTE +#endif +#define GTK_STOCK_PASTE "gtk-paste" + +#ifdef GTK_STOCK_PREFERENCES +#undef GTK_STOCK_PREFERENCES +#endif +#define GTK_STOCK_PREFERENCES "gtk-preferences" + +#ifdef GTK_STOCK_PRINT +#undef GTK_STOCK_PRINT +#endif +#define GTK_STOCK_PRINT "gtk-print" + +#ifdef GTK_STOCK_PRINT_ERROR +#undef GTK_STOCK_PRINT_ERROR +#endif +#define GTK_STOCK_PRINT_ERROR "gtk-print-error" + +#ifdef GTK_STOCK_PRINT_PAUSED +#undef GTK_STOCK_PRINT_PAUSED +#endif +#define GTK_STOCK_PRINT_PAUSED "gtk-print-paused" + +#ifdef GTK_STOCK_PRINT_PREVIEW +#undef GTK_STOCK_PRINT_PREVIEW +#endif +#define GTK_STOCK_PRINT_PREVIEW "gtk-print-preview" + +#ifdef GTK_STOCK_PRINT_REPORT +#undef GTK_STOCK_PRINT_REPORT +#endif +#define GTK_STOCK_PRINT_REPORT "gtk-print-report" + +#ifdef GTK_STOCK_PRINT_WARNING +#undef GTK_STOCK_PRINT_WARNING +#endif +#define GTK_STOCK_PRINT_WARNING "gtk-print-warning" + +#ifdef GTK_STOCK_PROPERTIES +#undef GTK_STOCK_PROPERTIES +#endif +#define GTK_STOCK_PROPERTIES "gtk-properties" + +#ifdef GTK_STOCK_QUIT +#undef GTK_STOCK_QUIT +#endif +#define GTK_STOCK_QUIT "gtk-quit" + +#ifdef GTK_STOCK_REDO +#undef GTK_STOCK_REDO +#endif +#define GTK_STOCK_REDO "gtk-redo" + +#ifdef GTK_STOCK_REFRESH +#undef GTK_STOCK_REFRESH +#endif +#define GTK_STOCK_REFRESH "gtk-refresh" + +#ifdef GTK_STOCK_REMOVE +#undef GTK_STOCK_REMOVE +#endif +#define GTK_STOCK_REMOVE "gtk-remove" + +#ifdef GTK_STOCK_REVERT_TO_SAVED +#undef GTK_STOCK_REVERT_TO_SAVED +#endif +#define GTK_STOCK_REVERT_TO_SAVED "gtk-revert-to-saved" + +#ifdef GTK_STOCK_SAVE +#undef GTK_STOCK_SAVE +#endif +#define GTK_STOCK_SAVE "gtk-save" + +#ifdef GTK_STOCK_SAVE_AS +#undef GTK_STOCK_SAVE_AS +#endif +#define GTK_STOCK_SAVE_AS "gtk-save-as" + +#ifdef GTK_STOCK_SELECT_ALL +#undef GTK_STOCK_SELECT_ALL +#endif +#define GTK_STOCK_SELECT_ALL "gtk-select-all" + +#ifdef GTK_STOCK_SELECT_COLOR +#undef GTK_STOCK_SELECT_COLOR +#endif +#define GTK_STOCK_SELECT_COLOR "gtk-select-color" + +#ifdef GTK_STOCK_SELECT_FONT +#undef GTK_STOCK_SELECT_FONT +#endif +#define GTK_STOCK_SELECT_FONT "gtk-select-font" + +#ifdef GTK_STOCK_SORT_ASCENDING +#undef GTK_STOCK_SORT_ASCENDING +#endif +#define GTK_STOCK_SORT_ASCENDING "gtk-sort-ascending" + +#ifdef GTK_STOCK_SORT_DESCENDING +#undef GTK_STOCK_SORT_DESCENDING +#endif +#define GTK_STOCK_SORT_DESCENDING "gtk-sort-descending" + +#ifdef GTK_STOCK_SPELL_CHECK +#undef GTK_STOCK_SPELL_CHECK +#endif +#define GTK_STOCK_SPELL_CHECK "gtk-spell-check" + +#ifdef GTK_STOCK_STOP +#undef GTK_STOCK_STOP +#endif +#define GTK_STOCK_STOP "gtk-stop" + +#ifdef GTK_STOCK_STRIKETHROUGH +#undef GTK_STOCK_STRIKETHROUGH +#endif +#define GTK_STOCK_STRIKETHROUGH "gtk-strikethrough" + +#ifdef GTK_STOCK_UNDELETE +#undef GTK_STOCK_UNDELETE +#endif +#define GTK_STOCK_UNDELETE "gtk-undelete" + +#ifdef GTK_STOCK_UNDERLINE +#undef GTK_STOCK_UNDERLINE +#endif +#define GTK_STOCK_UNDERLINE "gtk-underline" + +#ifdef GTK_STOCK_UNDO +#undef GTK_STOCK_UNDO +#endif +#define GTK_STOCK_UNDO "gtk-undo" + +#ifdef GTK_STOCK_UNINDENT +#undef GTK_STOCK_UNINDENT +#endif +#define GTK_STOCK_UNINDENT "gtk-unindent" + +#ifdef GTK_STOCK_YES +#undef GTK_STOCK_YES +#endif +#define GTK_STOCK_YES "gtk-yes" + +#ifdef GTK_STOCK_ZOOM_100 +#undef GTK_STOCK_ZOOM_100 +#endif +#define GTK_STOCK_ZOOM_100 "gtk-zoom-100" + +#ifdef GTK_STOCK_ZOOM_FIT +#undef GTK_STOCK_ZOOM_FIT +#endif +#define GTK_STOCK_ZOOM_FIT "gtk-zoom-fit" + +#ifdef GTK_STOCK_ZOOM_IN +#undef GTK_STOCK_ZOOM_IN +#endif +#define GTK_STOCK_ZOOM_IN "gtk-zoom-in" + +#ifdef GTK_STOCK_ZOOM_OUT +#undef GTK_STOCK_ZOOM_OUT +#endif +#define GTK_STOCK_ZOOM_OUT "gtk-zoom-out" + +#endif /* GTK_CHECK_VERSION(3, 10, 0) */ + void stock_icons_init(void); +/** + * Creates a GtkButton with a preset icon and label. + * @param stock_id Id of the icon and label pair + * @return The newly created GtkButton widget. + */ +GtkWidget * ws_gtk_button_new_from_stock(const gchar *stock_id); + +/** + * Creates a GtkToolButton with a preset icon and label. + * @param stock_id Id of the icon and label pair + * @return The newly created GtkButton widget. + */ +GtkToolItem * ws_gtk_tool_button_new_from_stock(const gchar *stock_id); + +/** + * Creates a GtkToggleToolButton with a preset icon and label. + * @param stock_id Id of the icon and label pair + * @return The newly created GtkButton widget. + */ +GtkToolItem * ws_gtk_toggle_tool_button_new_from_stock(const gchar *stock_id); + +/** + * Creates a GtkImage displaying a stock icon. + * @param stock_id a stock icon name + * @param size a stock icon size of GtkIconSize type + */ +GtkWidget * ws_gtk_image_new_from_stock(const gchar *stock_id, GtkIconSize size); + #endif /* __STOCK_ICONS_H__ */ diff --git a/ui/gtk/tap_param_dlg.c b/ui/gtk/tap_param_dlg.c index 2041b0b9a6..5c43af8a00 100644 --- a/ui/gtk/tap_param_dlg.c +++ b/ui/gtk/tap_param_dlg.c @@ -308,7 +308,7 @@ tap_param_dlg_cb(GtkAction *action _U_, gpointer data) case PARAM_FILTER: /* Filter button */ - filter_bt=gtk_button_new_from_stock(WIRESHARK_STOCK_DISPLAY_FILTER_ENTRY); + filter_bt=ws_gtk_button_new_from_stock(WIRESHARK_STOCK_DISPLAY_FILTER_ENTRY); g_signal_connect(filter_bt, "clicked", G_CALLBACK(display_filter_construct_cb), &(current_dlg->args)); gtk_box_pack_start(GTK_BOX(item_box), filter_bt, FALSE, TRUE, 0); gtk_widget_show(filter_bt); diff --git a/ui/gtk/uat_gui.c b/ui/gtk/uat_gui.c index ce8c2c8f1a..db36a02e7f 100644 --- a/ui/gtk/uat_gui.c +++ b/ui/gtk/uat_gui.c @@ -1059,26 +1059,26 @@ static GtkWidget *uat_window(void *u) { gtk_box_pack_end(GTK_BOX(vbox), refresh_hbox, TRUE, FALSE, 0); - rep->bt_up = gtk_button_new_from_stock(GTK_STOCK_GO_UP); + rep->bt_up = ws_gtk_button_new_from_stock(GTK_STOCK_GO_UP); gtk_widget_set_tooltip_text(rep->bt_up, "Move selected entry up"); - rep->bt_down = gtk_button_new_from_stock(GTK_STOCK_GO_DOWN); + rep->bt_down = ws_gtk_button_new_from_stock(GTK_STOCK_GO_DOWN); gtk_widget_set_tooltip_text(rep->bt_down, "Move selected entry down"); gtk_box_pack_start(GTK_BOX(move_hbox), rep->bt_up, TRUE, FALSE, 5); gtk_box_pack_start(GTK_BOX(move_hbox), rep->bt_down, TRUE, FALSE, 5); - rep->bt_new = gtk_button_new_from_stock(GTK_STOCK_NEW); + rep->bt_new = ws_gtk_button_new_from_stock(GTK_STOCK_NEW); gtk_widget_set_tooltip_text(rep->bt_new, "Create a new entry"); - rep->bt_edit = gtk_button_new_from_stock(WIRESHARK_STOCK_EDIT); + rep->bt_edit = ws_gtk_button_new_from_stock(WIRESHARK_STOCK_EDIT); gtk_widget_set_tooltip_text(rep->bt_edit, "Edit selected entry"); - rep->bt_copy = gtk_button_new_from_stock(GTK_STOCK_COPY); + rep->bt_copy = ws_gtk_button_new_from_stock(GTK_STOCK_COPY); gtk_widget_set_tooltip_text(rep->bt_copy, "Copy selected entry"); - rep->bt_delete = gtk_button_new_from_stock(GTK_STOCK_DELETE); + rep->bt_delete = ws_gtk_button_new_from_stock(GTK_STOCK_DELETE); gtk_widget_set_tooltip_text(rep->bt_delete, "Delete selected entry"); gtk_box_pack_end(GTK_BOX(edit_hbox), rep->bt_new, TRUE, FALSE, 5); @@ -1086,10 +1086,10 @@ static GtkWidget *uat_window(void *u) { gtk_box_pack_end(GTK_BOX(edit_hbox), rep->bt_copy, TRUE, FALSE, 5); gtk_box_pack_end(GTK_BOX(edit_hbox), rep->bt_delete, TRUE, FALSE, 5); - rep->bt_refresh = gtk_button_new_from_stock(GTK_STOCK_REFRESH); + rep->bt_refresh = ws_gtk_button_new_from_stock(GTK_STOCK_REFRESH); gtk_widget_set_tooltip_text(rep->bt_refresh, "Refresh from system defaults"); - rep->bt_clear = gtk_button_new_from_stock(GTK_STOCK_CLEAR); + rep->bt_clear = ws_gtk_button_new_from_stock(GTK_STOCK_CLEAR); gtk_widget_set_tooltip_text(rep->bt_clear, "Delete all entries"); gtk_box_pack_end(GTK_BOX(refresh_hbox), rep->bt_refresh, TRUE, FALSE, 5); diff --git a/ui/gtk/voip_calls_dlg.c b/ui/gtk/voip_calls_dlg.c index 2d9144f321..27b650215e 100644 --- a/ui/gtk/voip_calls_dlg.c +++ b/ui/gtk/voip_calls_dlg.c @@ -712,30 +712,30 @@ voip_calls_dlg_create(void) gtk_container_add (GTK_CONTAINER (hbuttonbox), bt_unselect); gtk_widget_set_tooltip_text (bt_unselect, "Unselect this conversation");*/ - bt_filter = gtk_button_new_from_stock(WIRESHARK_STOCK_PREPARE_FILTER); + bt_filter = ws_gtk_button_new_from_stock(WIRESHARK_STOCK_PREPARE_FILTER); gtk_container_add(GTK_CONTAINER(hbuttonbox), bt_filter); gtk_widget_set_tooltip_text(bt_filter, "Prepare a display filter of the selected conversation"); - bt_graph = gtk_button_new_from_stock(WIRESHARK_STOCK_VOIP_FLOW); + bt_graph = ws_gtk_button_new_from_stock(WIRESHARK_STOCK_VOIP_FLOW); gtk_container_add(GTK_CONTAINER(hbuttonbox), bt_graph); gtk_widget_show(bt_graph); g_signal_connect(bt_graph, "clicked", G_CALLBACK(on_graph_bt_clicked), NULL); gtk_widget_set_tooltip_text(bt_graph, "Show a flow graph of the selected calls."); #ifdef HAVE_LIBPORTAUDIO - bt_player = gtk_button_new_from_stock(WIRESHARK_STOCK_AUDIO_PLAYER); + bt_player = ws_gtk_button_new_from_stock(WIRESHARK_STOCK_AUDIO_PLAYER); gtk_container_add(GTK_CONTAINER(hbuttonbox), bt_player); gtk_widget_show(bt_player); g_signal_connect(bt_player, "clicked", G_CALLBACK(on_player_bt_clicked), NULL); gtk_widget_set_tooltip_text(bt_player, "Launch the RTP player to listen the selected calls."); #endif /* HAVE_LIBPORTAUDIO */ - bt_select_all = gtk_button_new_from_stock(GTK_STOCK_SELECT_ALL); + bt_select_all = ws_gtk_button_new_from_stock(GTK_STOCK_SELECT_ALL); gtk_container_add(GTK_CONTAINER(hbuttonbox), bt_select_all); gtk_widget_set_can_default(bt_select_all, TRUE); gtk_widget_set_tooltip_text(bt_select_all, "Select all the calls"); - bt_close = gtk_button_new_from_stock(GTK_STOCK_CLOSE); + bt_close = ws_gtk_button_new_from_stock(GTK_STOCK_CLOSE); gtk_container_add(GTK_CONTAINER (hbuttonbox), bt_close); gtk_widget_set_can_default(bt_close, TRUE); gtk_widget_set_tooltip_text(bt_close, "Close this dialog"); -- cgit v1.2.1