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 <gerald@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
This commit is contained in:
Balint Reczey 2014-02-21 14:09:52 +01:00 committed by Anders Broman
parent 234ab5b763
commit 00be1d31ce
50 changed files with 1124 additions and 289 deletions

View File

@ -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"

View File

@ -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);

View File

@ -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. "

View File

@ -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",

View File

@ -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)) {

View File

@ -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);

View File

@ -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");

View File

@ -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);

View File

@ -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);

View File

@ -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);

View File

@ -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);

View File

@ -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);

View File

@ -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);

View File

@ -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);

View File

@ -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);

View File

@ -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");

View File

@ -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);

View File

@ -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);

View File

@ -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);

View File

@ -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) );

View File

@ -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);

View File

@ -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);

View File

@ -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();

View File

@ -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); \

View File

@ -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);

View File

@ -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 <winsock2.h>

View File

@ -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);

View File

@ -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;

View File

@ -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);

View File

@ -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);

View File

@ -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);

View File

@ -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);

View File

@ -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");

View File

@ -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);

View File

@ -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);

View File

@ -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);

View File

@ -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");

View File

@ -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);

View File

@ -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);

View File

@ -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);

View File

@ -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);

View File

@ -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);

View File

@ -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);

View File

@ -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);

View File

@ -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;
}

View File

@ -25,6 +25,9 @@
#include <gtk/gtk.h>
#include <stdlib.h>
#include <string.h>
#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
}
/*

View File

@ -24,6 +24,7 @@
#ifndef __STOCK_ICONS_H__
#define __STOCK_ICONS_H__
#include <gtk/gtk.h>
#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__ */

View File

@ -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);

View File

@ -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);

View File

@ -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");