aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--gtk/capture_dlg.c4
-rw-r--r--gtk/color_dlg.c7
-rw-r--r--gtk/display_opts.c4
-rw-r--r--gtk/dlg_utils.c15
-rw-r--r--gtk/dlg_utils.h12
-rw-r--r--gtk/filter_prefs.c5
-rw-r--r--gtk/find_dlg.c4
-rw-r--r--gtk/goto_dlg.c4
-rw-r--r--gtk/plugins_dlg.c7
-rw-r--r--gtk/prefs_dlg.c4
-rw-r--r--gtk/print_dlg.c4
-rw-r--r--gtk/progress_dlg.c5
-rw-r--r--gtk/simple_dialog.c8
13 files changed, 55 insertions, 28 deletions
diff --git a/gtk/capture_dlg.c b/gtk/capture_dlg.c
index 4d9d106507..429c6d6b35 100644
--- a/gtk/capture_dlg.c
+++ b/gtk/capture_dlg.c
@@ -1,7 +1,7 @@
/* capture_dlg.c
* Routines for packet capture windows
*
- * $Id: capture_dlg.c,v 1.27 2000/06/27 04:35:57 guy Exp $
+ * $Id: capture_dlg.c,v 1.28 2000/07/05 02:45:38 guy Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@zing.org>
@@ -131,7 +131,7 @@ capture_prep_cb(GtkWidget *w, gpointer d)
err_str);
}
- cap_open_w = gtk_window_new(GTK_WINDOW_TOPLEVEL);
+ cap_open_w = dlg_window_new();
gtk_window_set_title(GTK_WINDOW(cap_open_w), "Ethereal: Capture Preferences");
gtk_signal_connect(GTK_OBJECT(cap_open_w), "destroy",
GTK_SIGNAL_FUNC(capture_prep_destroy_cb), NULL);
diff --git a/gtk/color_dlg.c b/gtk/color_dlg.c
index a858a08632..3c13c679aa 100644
--- a/gtk/color_dlg.c
+++ b/gtk/color_dlg.c
@@ -1,7 +1,7 @@
/* color_dlg.c
* Definitions for dialog boxes for color filters
*
- * $Id: color_dlg.c,v 1.3 2000/06/27 04:35:58 guy Exp $
+ * $Id: color_dlg.c,v 1.4 2000/07/05 02:45:38 guy Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@zing.org>
@@ -42,6 +42,7 @@
#include "file.h"
#include "dfilter.h"
#include "simple_dialog.h"
+#include "dlg_utils.h"
#include "ui_util.h"
static GtkWidget* colorize_dialog_new(colfilter *filter);
@@ -126,7 +127,7 @@ colorize_dialog_new (colfilter *filter)
filter->row_selected = -1; /* no row selected */
tooltips = gtk_tooltips_new ();
- color_win = gtk_window_new (GTK_WINDOW_DIALOG);
+ color_win = dlg_window_new ();
gtk_object_set_data (GTK_OBJECT (color_win), "color_win", color_win);
gtk_window_set_title (GTK_WINDOW (color_win), ("Add color to protocols"));
@@ -633,7 +634,7 @@ edit_color_filter_dialog_new (colfilter *filter,
tooltips = gtk_tooltips_new ();
- edit_dialog = gtk_window_new (GTK_WINDOW_DIALOG);
+ edit_dialog = dlg_window_new ();
gtk_object_set_data (GTK_OBJECT (edit_dialog), "edit_dialog", edit_dialog);
gtk_window_set_title (GTK_WINDOW (edit_dialog), ("Edit color filter"));
colorf->edit_dialog = edit_dialog;
diff --git a/gtk/display_opts.c b/gtk/display_opts.c
index 9ad89427db..8ae7224da3 100644
--- a/gtk/display_opts.c
+++ b/gtk/display_opts.c
@@ -1,7 +1,7 @@
/* display_opts.c
* Routines for packet display windows
*
- * $Id: display_opts.c,v 1.9 2000/06/27 05:18:44 guy Exp $
+ * $Id: display_opts.c,v 1.10 2000/07/05 02:45:39 guy Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@zing.org>
@@ -107,7 +107,7 @@ display_opt_cb(GtkWidget *w, gpointer d) {
if we've changed it with "Apply". */
prev_timestamp_type = timestamp_type;
- display_opt_w = gtk_window_new(GTK_WINDOW_TOPLEVEL);
+ display_opt_w = dlg_window_new();
gtk_window_set_title(GTK_WINDOW(display_opt_w), "Ethereal: Display Options");
gtk_signal_connect(GTK_OBJECT(display_opt_w), "destroy",
GTK_SIGNAL_FUNC(display_opt_destroy_cb), NULL);
diff --git a/gtk/dlg_utils.c b/gtk/dlg_utils.c
index 2afa03fa23..f8b5534d03 100644
--- a/gtk/dlg_utils.c
+++ b/gtk/dlg_utils.c
@@ -1,7 +1,7 @@
/* dlg_utils.c
* Utilities to use when constructing dialogs
*
- * $Id: dlg_utils.c,v 1.3 2000/05/26 07:32:56 guy Exp $
+ * $Id: dlg_utils.c,v 1.4 2000/07/05 02:45:39 guy Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@zing.org>
@@ -30,12 +30,25 @@
#include <gtk/gtk.h>
#include <gdk/gdkkeysyms.h>
+#include "gtkglobals.h"
+
static void
dlg_activate (GtkWidget *widget, gpointer ok_button);
static gint
dlg_key_press (GtkWidget *widget, GdkEventKey *event, gpointer cancel_button);
+/* Create a dialog box window that belongs to Ethereal's main window. */
+GtkWidget *
+dlg_window_new(void)
+{
+ GtkWidget *win;
+
+ win = gtk_window_new(GTK_WINDOW_DIALOG);
+ gtk_window_set_transient_for(GTK_WINDOW(win), GTK_WINDOW(top_level));
+ return win;
+}
+
/* Set the "activate" signal for a widget to call a routine to
activate the "OK" button for a dialog box.
diff --git a/gtk/dlg_utils.h b/gtk/dlg_utils.h
index ef3a786b18..e73fdbc603 100644
--- a/gtk/dlg_utils.h
+++ b/gtk/dlg_utils.h
@@ -1,7 +1,7 @@
/* dlg_utils.h
* Declarations of utilities to use when constructing dialogs
*
- * $Id: dlg_utils.h,v 1.2 2000/05/08 04:23:46 guy Exp $
+ * $Id: dlg_utils.h,v 1.3 2000/07/05 02:45:39 guy Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@zing.org>
@@ -22,7 +22,17 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
+
+/* Create a dialog box window that belongs to Ethereal's main window. */
+GtkWidget *dlg_window_new(void);
+
+/* Set the "activate" signal for a widget to call a routine to
+ activate the "OK" button for a dialog box. */
void dlg_set_activate(GtkWidget *widget, GtkWidget *ok_button);
+
+/* Set the "key_press_event" signal for a top-level dialog window to
+ call a routine to activate the "Cancel" button for a dialog box if
+ the key being pressed is the <Esc> key. */
void dlg_set_cancel(GtkWidget *widget, GtkWidget *cancel_button);
GtkWidget *dlg_radio_button_new_with_label_with_mnemonic(GSList *group,
diff --git a/gtk/filter_prefs.c b/gtk/filter_prefs.c
index 0b9720c466..e6678294c0 100644
--- a/gtk/filter_prefs.c
+++ b/gtk/filter_prefs.c
@@ -3,7 +3,7 @@
* (This used to be a notebook page under "Preferences", hence the
* "prefs" in the file name.)
*
- * $Id: filter_prefs.c,v 1.11 2000/04/01 12:03:40 guy Exp $
+ * $Id: filter_prefs.c,v 1.12 2000/07/05 02:45:39 guy Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@zing.org>
@@ -47,6 +47,7 @@
#include "packet.h"
#include "file.h"
#include "util.h"
+#include "dlg_utils.h"
#include "ui_util.h"
#include "prefs_dlg.h"
@@ -221,7 +222,7 @@ filter_dialog_new(GtkWidget *caller, GtkWidget *filter_te)
*cancel_bt; /* cancel button */
GtkWidget *filter_pg = NULL; /* filter settings box */
- main_w = gtk_window_new(GTK_WINDOW_TOPLEVEL);
+ main_w = dlg_window_new();
gtk_window_set_title(GTK_WINDOW(main_w), "Ethereal: Filters");
/* Call a handler when we're destroyed, so we can inform
diff --git a/gtk/find_dlg.c b/gtk/find_dlg.c
index 69aa0a859e..bcd9926937 100644
--- a/gtk/find_dlg.c
+++ b/gtk/find_dlg.c
@@ -1,7 +1,7 @@
/* find_dlg.c
* Routines for "find frame" window
*
- * $Id: find_dlg.c,v 1.11 2000/06/27 04:36:00 guy Exp $
+ * $Id: find_dlg.c,v 1.12 2000/07/05 02:45:40 guy Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@zing.org>
@@ -83,7 +83,7 @@ find_frame_cb(GtkWidget *w, gpointer d)
return;
}
- find_frame_w = gtk_window_new(GTK_WINDOW_TOPLEVEL);
+ find_frame_w = dlg_window_new();
gtk_window_set_title(GTK_WINDOW(find_frame_w), "Ethereal: Find Frame");
gtk_signal_connect(GTK_OBJECT(find_frame_w), "destroy",
GTK_SIGNAL_FUNC(find_frame_destroy_cb), NULL);
diff --git a/gtk/goto_dlg.c b/gtk/goto_dlg.c
index 627e9c0ba9..78df4e64f0 100644
--- a/gtk/goto_dlg.c
+++ b/gtk/goto_dlg.c
@@ -1,7 +1,7 @@
/* goto_dlg.c
* Routines for "go to frame" window
*
- * $Id: goto_dlg.c,v 1.7 2000/06/27 04:36:01 guy Exp $
+ * $Id: goto_dlg.c,v 1.8 2000/07/05 02:45:40 guy Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@zing.org>
@@ -64,7 +64,7 @@ goto_frame_cb(GtkWidget *w, gpointer d)
GtkWidget *goto_frame_w, *main_vb, *fnumber_hb, *fnumber_lb, *fnumber_te,
*bbox, *ok_bt, *cancel_bt;
- goto_frame_w = gtk_window_new(GTK_WINDOW_TOPLEVEL);
+ goto_frame_w = dlg_window_new();
gtk_window_set_title(GTK_WINDOW(goto_frame_w), "Ethereal: Go To Frame");
/* Container for each row of widgets */
diff --git a/gtk/plugins_dlg.c b/gtk/plugins_dlg.c
index 15d858f353..5ccd66da40 100644
--- a/gtk/plugins_dlg.c
+++ b/gtk/plugins_dlg.c
@@ -1,7 +1,7 @@
/* plugins_dlg.c
* Dialog boxes for plugins
*
- * $Id: plugins_dlg.c,v 1.13 2000/02/07 17:07:54 gram Exp $
+ * $Id: plugins_dlg.c,v 1.14 2000/07/05 02:45:40 guy Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@zing.org>
@@ -35,6 +35,7 @@
#include "globals.h"
#include "plugins.h"
#include "keys.h"
+#include "dlg_utils.h"
#include "prefs_dlg.h"
#include "simple_dialog.h"
@@ -82,7 +83,7 @@ tools_plugins_cmd_cb(GtkWidget *widget, gpointer data)
GtkWidget *save_bn;
gchar *titles[] = {"Name", "Description", "Version", "Enabled"};
- plugins_window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
+ plugins_window = dlg_window_new();
gtk_window_set_title(GTK_WINDOW(plugins_window), "Ethereal: Plugins");
main_vbox = gtk_vbox_new(FALSE, 0);
@@ -311,7 +312,7 @@ plugins_filter_cb(GtkWidget *button, gpointer clist)
if (selected_row == -1) return;
pt_plug = find_plugin(selected_name, selected_version);
- filter_window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
+ filter_window = dlg_window_new();
gtk_window_set_title(GTK_WINDOW(filter_window), "Ethereal: Plugin Filter");
gtk_window_set_modal(GTK_WINDOW(filter_window), TRUE);
diff --git a/gtk/prefs_dlg.c b/gtk/prefs_dlg.c
index 33b7684d8f..72cda3c3b0 100644
--- a/gtk/prefs_dlg.c
+++ b/gtk/prefs_dlg.c
@@ -1,7 +1,7 @@
/* prefs_dlg.c
* Routines for handling preferences
*
- * $Id: prefs_dlg.c,v 1.11 2000/05/08 07:58:20 guy Exp $
+ * $Id: prefs_dlg.c,v 1.12 2000/07/05 02:45:41 guy Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@zing.org>
@@ -92,7 +92,7 @@ prefs_cb(GtkWidget *w, gpointer sp) {
return;
}
- prefs_w = gtk_window_new(GTK_WINDOW_TOPLEVEL);
+ prefs_w = dlg_window_new();
gtk_window_set_title(GTK_WINDOW(prefs_w), "Ethereal: Preferences");
gtk_signal_connect(GTK_OBJECT(prefs_w), "delete-event",
GTK_SIGNAL_FUNC(prefs_main_delete_cb), NULL);
diff --git a/gtk/print_dlg.c b/gtk/print_dlg.c
index 4bd191bb83..200c7084b1 100644
--- a/gtk/print_dlg.c
+++ b/gtk/print_dlg.c
@@ -1,7 +1,7 @@
/* print_dlg.c
* Dialog boxes for printing
*
- * $Id: print_dlg.c,v 1.18 2000/06/27 04:36:03 guy Exp $
+ * $Id: print_dlg.c,v 1.19 2000/07/05 02:45:41 guy Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@zing.org>
@@ -119,7 +119,7 @@ file_print_cmd_cb(GtkWidget *widget, gpointer data)
return;
}
- print_w = gtk_window_new(GTK_WINDOW_TOPLEVEL);
+ print_w = dlg_window_new();
gtk_window_set_title(GTK_WINDOW(print_w), "Ethereal: Print");
gtk_signal_connect(GTK_OBJECT(print_w), "destroy",
GTK_SIGNAL_FUNC(print_destroy_cb), NULL);
diff --git a/gtk/progress_dlg.c b/gtk/progress_dlg.c
index 63c0b694b1..5149fdf15a 100644
--- a/gtk/progress_dlg.c
+++ b/gtk/progress_dlg.c
@@ -1,7 +1,7 @@
/* progress_dlg.c
* Routines for progress-bar (modal) dialog
*
- * $Id: progress_dlg.c,v 1.2 2000/07/03 19:42:36 guy Exp $
+ * $Id: progress_dlg.c,v 1.3 2000/07/05 02:45:41 guy Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@zing.org>
@@ -28,6 +28,7 @@
#endif
#include "gtkglobals.h"
+#include "dlg_utils.h"
#include "ui_util.h"
#define PROG_BAR_KEY "progress_bar"
@@ -62,7 +63,7 @@ create_progress_dlg(gchar *title, gboolean *stop_flag)
GtkWidget *dlg_w, *main_vb, *title_lb, *prog_bar, *cancel_al,
*cancel_bt;
- dlg_w = gtk_window_new(GTK_WINDOW_TOPLEVEL);
+ dlg_w = dlg_window_new();
gtk_window_set_title(GTK_WINDOW(dlg_w), title);
/*
diff --git a/gtk/simple_dialog.c b/gtk/simple_dialog.c
index 71603e0f62..423467a95d 100644
--- a/gtk/simple_dialog.c
+++ b/gtk/simple_dialog.c
@@ -1,7 +1,7 @@
-/* dialog.c
- * Dialog box routines.
+/* simple_dialog.c
+ * Simple message dialog box routines.
*
- * $Id: simple_dialog.c,v 1.2 2000/05/03 07:19:38 guy Exp $
+ * $Id: simple_dialog.c,v 1.3 2000/07/05 02:45:42 guy Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@zing.org>
@@ -81,7 +81,7 @@ simple_dialog(gint type, gint *btn_mask, gchar *msg_format, ...) {
gchar **icon;
/* Main window */
- win = gtk_window_new(GTK_WINDOW_TOPLEVEL);
+ win = dlg_window_new();
gtk_container_border_width(GTK_CONTAINER(win), 7);
switch (type) {