aboutsummaryrefslogtreecommitdiffstats
path: root/gtk/io_stat.c
diff options
context:
space:
mode:
authorAnders Broman <anders.broman@ericsson.com>2009-10-16 10:32:06 +0000
committerAnders Broman <anders.broman@ericsson.com>2009-10-16 10:32:06 +0000
commitc6620d77704b31d868a65873bd46d7ad8a500e54 (patch)
tree17f0b5816945700b74d95f5dcc61955fe70909fb /gtk/io_stat.c
parent6f57facbe50b57f33c2a4e03b3c1e57c877d2d3f (diff)
downloadwireshark-c6620d77704b31d868a65873bd46d7ad8a500e54.tar.gz
wireshark-c6620d77704b31d868a65873bd46d7ad8a500e54.tar.bz2
wireshark-c6620d77704b31d868a65873bd46d7ad8a500e54.zip
More gtk_option_menu -> gtk_combo_box
svn path=/trunk/; revision=30570
Diffstat (limited to 'gtk/io_stat.c')
-rw-r--r--gtk/io_stat.c228
1 files changed, 98 insertions, 130 deletions
diff --git a/gtk/io_stat.c b/gtk/io_stat.c
index ae8ffa97af..a40b9beb3d 100644
--- a/gtk/io_stat.c
+++ b/gtk/io_stat.c
@@ -145,7 +145,6 @@ typedef struct _io_stat_graph_t {
GtkWidget *filter_field;
GtkWidget *advanced_buttons;
int calc_type;
- io_stat_calc_type_t calc_types[MAX_CALC_TYPES];
int hf_index;
GtkWidget *calc_field;
GdkColor color;
@@ -1336,7 +1335,7 @@ quit(GtkWidget *widget, GdkEventExpose *event _U_)
static gint
pixmap_clicked_event(GtkWidget *widget, GdkEventButton *event)
{
- io_stat_t *io=(io_stat_t *)g_object_get_data(G_OBJECT(widget), "io_stat_t");
+ io_stat_t *io=(io_stat_t *)g_object_get_data(G_OBJECT(widget), "io_stat_t");
guint32 draw_width, interval, last_interval;
guint frame_num;
@@ -1494,16 +1493,15 @@ create_draw_area(io_stat_t *io, GtkWidget *box)
}
-static void
-tick_interval_select(GtkWidget *item, gpointer key)
+static void tick_interval_select(GtkWidget *item, gpointer key)
{
- int val;
+ int i;
io_stat_t *io;
io=(io_stat_t *)key;
- val=(long)g_object_get_data(G_OBJECT(item), "tick_interval");
+ i = gtk_combo_box_get_active (GTK_COMBO_BOX(item));
- io->interval=val;
+ io->interval=tick_interval_values[i];
cf_retap_packets(&cfile);
gdk_window_raise(io->window->window);
io_stat_redraw(io);
@@ -1512,12 +1510,12 @@ tick_interval_select(GtkWidget *item, gpointer key)
static void
pixels_per_tick_select(GtkWidget *item, gpointer key)
{
- int val;
+ int i;
io_stat_t *io;
io=(io_stat_t *)key;
- val=(long)g_object_get_data(G_OBJECT(item), "pixels_per_tick");
- io->pixels_per_tick=val;
+ i = gtk_combo_box_get_active (GTK_COMBO_BOX(item));
+ io->pixels_per_tick=pixels_per_tick[i];
io_stat_redraw(io);
}
@@ -1528,86 +1526,81 @@ plot_style_select(GtkWidget *item, gpointer key)
io_stat_graph_t *ppt;
ppt=(io_stat_graph_t *)key;
- val=(long)g_object_get_data(G_OBJECT(item), "plot_style");
+ val=gtk_combo_box_get_active (GTK_COMBO_BOX(item));
ppt->plot_style=val;
io_stat_redraw(ppt->io);
}
-static void
-create_pixels_per_tick_menu_items(io_stat_t *io, GtkWidget *menu)
+static GtkWidget *
+create_pixels_per_tick_menu_items(io_stat_t *io)
{
char str[5];
- GtkWidget *menu_item;
+ GtkWidget *combo_box;
int i;
+ combo_box = gtk_combo_box_new_text ();
+
for(i=0;i<MAX_PIXELS_PER_TICK;i++){
g_snprintf(str, 5, "%u", pixels_per_tick[i]);
- menu_item=gtk_menu_item_new_with_label(str);
-
- g_object_set_data(G_OBJECT(menu_item), "pixels_per_tick",
- GUINT_TO_POINTER(pixels_per_tick[i]));
- g_signal_connect(menu_item, "activate", G_CALLBACK(pixels_per_tick_select), io);
- gtk_widget_show(menu_item);
- gtk_menu_shell_append(GTK_MENU_SHELL(menu), menu_item);
+ gtk_combo_box_append_text (GTK_COMBO_BOX (combo_box), str);
}
- gtk_menu_set_active(GTK_MENU(menu), DEFAULT_PIXELS_PER_TICK);
- return;
-}
+ gtk_combo_box_set_active(GTK_COMBO_BOX(combo_box), DEFAULT_PIXELS_PER_TICK);
+ g_signal_connect(combo_box, "changed", G_CALLBACK(pixels_per_tick_select), (gpointer)io);
+ return combo_box;
+}
-static void
+static void
yscale_select(GtkWidget *item, gpointer key)
{
- int val;
- io_stat_t *io;
+ int i;
+ io_stat_t *io;
- io=(io_stat_t *)key;
- val=(long)g_object_get_data(G_OBJECT(item), "yscale_max");
+ io=(io_stat_t *)key;
+ i = gtk_combo_box_get_active (GTK_COMBO_BOX(item));
- io->max_y_units=val;
- io_stat_redraw(io);
+ io->max_y_units = yscale_max[i];
+ io_stat_redraw(io);
}
-static void
-create_tick_interval_menu_items(io_stat_t *io, GtkWidget *menu)
+static GtkWidget *
+create_tick_interval_menu_items(io_stat_t *io)
{
- char str[15];
- GtkWidget *menu_item;
- int i;
+ GtkWidget *combo_box;
+ char str[15];
+ int i;
- for(i=0;i<MAX_TICK_VALUES;i++){
- if(tick_interval_values[i]>=60000){
- g_snprintf(str, 15, "%u min", tick_interval_values[i]/60000);
- } else if(tick_interval_values[i]>=1000){
- g_snprintf(str, 15, "%u sec", tick_interval_values[i]/1000);
- } else if(tick_interval_values[i]>=100){
- g_snprintf(str, 15, "0.%1u sec", (tick_interval_values[i]/100)%10);
- } else if(tick_interval_values[i]>=10){
- g_snprintf(str, 15, "0.%02u sec", (tick_interval_values[i]/10)%10);
- } else {
- g_snprintf(str, 15, "0.%03u sec", (tick_interval_values[i])%10);
- }
+ combo_box = gtk_combo_box_new_text ();
- menu_item=gtk_menu_item_new_with_label(str);
- g_object_set_data(G_OBJECT(menu_item), "tick_interval",
- GUINT_TO_POINTER(tick_interval_values[i]));
- g_signal_connect(menu_item, "activate", G_CALLBACK(tick_interval_select), (gpointer)io);
- gtk_widget_show(menu_item);
- gtk_menu_shell_append(GTK_MENU_SHELL(menu), menu_item);
+ for(i=0;i<MAX_TICK_VALUES;i++){
+ if(tick_interval_values[i]>=1000){
+ g_snprintf(str, sizeof(str), "%u sec", tick_interval_values[i]/1000);
+ } else if(tick_interval_values[i]>=100){
+ g_snprintf(str, sizeof(str), "0.%1u sec", (tick_interval_values[i]/100)%10);
+ } else if(tick_interval_values[i]>=10){
+ g_snprintf(str, sizeof(str), "0.%02u sec", (tick_interval_values[i]/10)%10);
+ } else {
+ g_snprintf(str, sizeof(str), "0.%03u sec", (tick_interval_values[i])%10);
+ }
+ gtk_combo_box_append_text (GTK_COMBO_BOX (combo_box), str);
}
- gtk_menu_set_active(GTK_MENU(menu), DEFAULT_TICK_VALUE);
- return;
+ gtk_combo_box_set_active(GTK_COMBO_BOX(combo_box), 0);
+ g_signal_connect(combo_box, "changed", G_CALLBACK(tick_interval_select), (gpointer)io);
+
+ return combo_box;
}
-static void
-create_yscale_max_menu_items(io_stat_t *io, GtkWidget *menu)
+static GtkWidget *
+create_yscale_max_menu_items(io_stat_t *io)
{
char str[15];
- GtkWidget *menu_item;
+ GtkWidget *combo_box;
int i;
+ combo_box = gtk_combo_box_new_text ();
+
for(i=0;i<MAX_YSCALE;i++){
if(yscale_max[i]==LOGARITHMIC_YSCALE){
g_strlcpy(str, "Logarithmic", 15);
@@ -1616,28 +1609,22 @@ create_yscale_max_menu_items(io_stat_t *io, GtkWidget *menu)
} else {
g_snprintf(str, 15, "%u", yscale_max[i]);
}
- menu_item=gtk_menu_item_new_with_label(str);
- g_object_set_data(G_OBJECT(menu_item), "yscale_max",
- GUINT_TO_POINTER(yscale_max[i]));
- g_signal_connect(menu_item, "activate", G_CALLBACK(yscale_select), io);
- gtk_widget_show(menu_item);
- gtk_menu_shell_append(GTK_MENU_SHELL(menu), menu_item);
+ gtk_combo_box_append_text (GTK_COMBO_BOX (combo_box), str);
}
- gtk_menu_set_active(GTK_MENU(menu), DEFAULT_YSCALE);
- return;
+ gtk_combo_box_set_active(GTK_COMBO_BOX(combo_box), DEFAULT_YSCALE);
+ g_signal_connect(combo_box, "changed", G_CALLBACK(yscale_select), (gpointer)io);
+ return combo_box;
}
static void
count_type_select(GtkWidget *item, gpointer key)
{
static gboolean advanced_visible=FALSE;
- int val, i;
+ int i;
io_stat_t *io;
io=(io_stat_t *)key;
- val=(long)g_object_get_data(G_OBJECT(item), "count_type");
-
- io->count_type=val;
+ io->count_type = gtk_combo_box_get_active (GTK_COMBO_BOX(item));
if(io->count_type==COUNT_TYPE_ADVANCED){
for(i=0;i<MAX_GRAPHS;i++){
@@ -1649,9 +1636,6 @@ count_type_select(GtkWidget *item, gpointer key)
0,
io->window->allocation.width,
io->window->allocation.height);
-
-
-
}
advanced_visible=TRUE;
io_stat_redraw(io);
@@ -1666,29 +1650,28 @@ count_type_select(GtkWidget *item, gpointer key)
}
}
-static void
-create_frames_or_bytes_menu_items(io_stat_t *io, GtkWidget *menu)
+static GtkWidget *
+create_frames_or_bytes_menu_items(io_stat_t *io)
{
- GtkWidget *menu_item;
+ GtkWidget *combo_box;
int i;
+ combo_box = gtk_combo_box_new_text ();
+
for(i=0;i<MAX_COUNT_TYPES;i++){
- menu_item=gtk_menu_item_new_with_label(count_type_names[i]);
- g_object_set_data(G_OBJECT(menu_item), "count_type", GINT_TO_POINTER(i));
- g_signal_connect(menu_item, "activate", G_CALLBACK(count_type_select), io);
- gtk_widget_show(menu_item);
- gtk_menu_shell_append(GTK_MENU_SHELL(menu), menu_item);
+ gtk_combo_box_append_text (GTK_COMBO_BOX (combo_box), count_type_names[i]);
}
- return;
+ gtk_combo_box_set_active(GTK_COMBO_BOX(combo_box), 0);
+ g_signal_connect(combo_box, "changed", G_CALLBACK(count_type_select), (gpointer)io);
+ return combo_box;
}
static void
-create_ctrl_menu(io_stat_t *io, GtkWidget *box, const char *name, void (*func)(io_stat_t *io, GtkWidget *menu))
+create_ctrl_menu(io_stat_t *io, GtkWidget *box, const char *name, GtkWidget * (*func)(io_stat_t *io))
{
GtkWidget *hbox;
GtkWidget *label;
- GtkWidget *option_menu;
- GtkWidget *menu;
+ GtkWidget *combo_box;
hbox=gtk_hbox_new(FALSE, 0);
gtk_container_add(GTK_CONTAINER(box), hbox);
@@ -1699,12 +1682,9 @@ create_ctrl_menu(io_stat_t *io, GtkWidget *box, const char *name, void (*func)(i
gtk_widget_show(label);
gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
- option_menu=gtk_option_menu_new();
- menu=gtk_menu_new();
- (*func)(io, menu);
- gtk_option_menu_set_menu(GTK_OPTION_MENU(option_menu), menu);
- gtk_box_pack_end(GTK_BOX(hbox), option_menu, FALSE, FALSE, 0);
- gtk_widget_show(option_menu);
+ combo_box = (*func)(io);
+ gtk_box_pack_end(GTK_BOX(hbox), combo_box, FALSE, FALSE, 0);
+ gtk_widget_show(combo_box);
}
static void
@@ -1904,43 +1884,41 @@ filter_callback(GtkWidget *widget _U_, io_stat_graph_t *gio)
static void
-calc_type_select(GtkWidget *item _U_, gpointer key)
+calc_type_select(GtkWidget *item, gpointer key)
{
- io_stat_calc_type_t *ct=(io_stat_calc_type_t *)key;
+ io_stat_graph_t *gio = (io_stat_graph_t *)key;
- ct->gio->calc_type=ct->calc_type;
+ gio->calc_type=gtk_combo_box_get_active (GTK_COMBO_BOX(item));
/* disable the graph */
- disable_graph(ct->gio);
- io_stat_redraw(ct->gio->io);
+ disable_graph(gio);
+ io_stat_redraw(gio->io);
}
-static void
-create_calc_types_menu_items(io_stat_graph_t *gio, GtkWidget *menu)
+static GtkWidget *
+create_calc_types_menu_items(io_stat_graph_t *gio)
{
- GtkWidget *menu_item;
+ GtkWidget *combo_box;
int i;
+ combo_box = gtk_combo_box_new_text ();
+
for(i=0;i<MAX_CALC_TYPES;i++){
- gio->calc_types[i].gio=gio;
- gio->calc_types[i].calc_type=i;
- menu_item=gtk_menu_item_new_with_label(calc_type_names[i]);
- g_signal_connect(menu_item, "activate", G_CALLBACK(calc_type_select), &gio->calc_types[i]);
- gtk_widget_show(menu_item);
- gtk_menu_shell_append(GTK_MENU_SHELL(menu), menu_item);
+ gtk_combo_box_append_text (GTK_COMBO_BOX (combo_box), calc_type_names[i]);
}
- return;
+ gtk_combo_box_set_active(GTK_COMBO_BOX(combo_box), 0);
+ g_signal_connect(combo_box, "changed", G_CALLBACK(calc_type_select), gio);
+ return combo_box;
}
static void
-create_advanced_menu(io_stat_graph_t *gio, GtkWidget *box, const char *name, void (*func)(io_stat_graph_t *io, GtkWidget *menu))
+create_advanced_menu(io_stat_graph_t *gio, GtkWidget *box, const char *name, GtkWidget *(*func)(io_stat_graph_t *io))
{
GtkWidget *hbox;
GtkWidget *label;
- GtkWidget *option_menu;
- GtkWidget *menu;
+ GtkWidget *combo_box;
hbox=gtk_hbox_new(FALSE, 0);
gtk_container_add(GTK_CONTAINER(box), hbox);
@@ -1951,12 +1929,9 @@ create_advanced_menu(io_stat_graph_t *gio, GtkWidget *box, const char *name, voi
gtk_widget_show(label);
gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
- option_menu=gtk_option_menu_new();
- menu=gtk_menu_new();
- (*func)(gio, menu);
- gtk_option_menu_set_menu(GTK_OPTION_MENU(option_menu), menu);
- gtk_box_pack_end(GTK_BOX(hbox), option_menu, FALSE, FALSE, 0);
- gtk_widget_show(option_menu);
+ combo_box = (*func)(gio);
+ gtk_box_pack_end(GTK_BOX(hbox), combo_box, FALSE, FALSE, 0);
+ gtk_widget_show(combo_box);
}
static void
@@ -2006,9 +1981,7 @@ filter_button_clicked(GtkWidget *w, gpointer uio)
static void
create_filter_box(io_stat_graph_t *gio, GtkWidget *box, int num)
{
- GtkWidget *option_menu;
- GtkWidget *menu;
- GtkWidget *menu_item;
+ GtkWidget *combo_box;
GtkWidget *hbox;
GtkWidget *label;
char str[256];
@@ -2077,20 +2050,15 @@ create_filter_box(io_stat_graph_t *gio, GtkWidget *box, int num)
gtk_widget_show(label);
gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
- option_menu=gtk_option_menu_new();
- menu=gtk_menu_new();
+ combo_box = gtk_combo_box_new_text ();
for(i=0;i<MAX_PLOT_STYLES;i++){
- menu_item=gtk_menu_item_new_with_label(plot_style_name[i]);
- g_object_set_data(G_OBJECT(menu_item), "plot_style", GINT_TO_POINTER(i));
- g_signal_connect(menu_item, "activate", G_CALLBACK(plot_style_select), &gio->io->graphs[num-1]);
- gtk_widget_show(menu_item);
- gtk_menu_shell_append(GTK_MENU_SHELL(menu), menu_item);
+ gtk_combo_box_append_text (GTK_COMBO_BOX (combo_box), plot_style_name[i]);
}
- gtk_menu_set_active(GTK_MENU(menu), DEFAULT_PLOT_STYLE);
+ gtk_combo_box_set_active(GTK_COMBO_BOX(combo_box), DEFAULT_PLOT_STYLE);
+ g_signal_connect(combo_box, "changed", G_CALLBACK(plot_style_select), &gio->io->graphs[num-1]);
- gtk_option_menu_set_menu(GTK_OPTION_MENU(option_menu), menu);
- gtk_box_pack_end(GTK_BOX(hbox), option_menu, FALSE, FALSE, 0);
- gtk_widget_show(option_menu);
+ gtk_box_pack_end(GTK_BOX(hbox), combo_box, FALSE, FALSE, 0);
+ gtk_widget_show(combo_box);
return;