From 6a4a51ffec92ffbe1f80a61075fb37ecd397aed4 Mon Sep 17 00:00:00 2001 From: Luis Ontanon Date: Mon, 29 Jan 2007 10:23:38 +0000 Subject: The UAT gui starts to work set the macros_dlg to use it add a dummy dfilter_macros file to supress a warning at startup svn path=/trunk/; revision=20598 --- dfilter_macros | 0 epan/dfilter/dfilter-macro.c | 13 ++++++----- epan/dfilter/dfilter-macro.h | 4 +++- epan/dfilter/dfilter.c | 2 -- epan/uat-int.h | 2 +- epan/uat.c | 4 ++++ gtk/Makefile.am | 1 + gtk/Makefile.common | 1 + gtk/macros_dlg.c | 54 ++++++-------------------------------------- gtk/macros_dlg.h | 6 +++-- 10 files changed, 28 insertions(+), 59 deletions(-) create mode 100644 dfilter_macros diff --git a/dfilter_macros b/dfilter_macros new file mode 100644 index 0000000000..e69de29bb2 diff --git a/epan/dfilter/dfilter-macro.c b/epan/dfilter/dfilter-macro.c index 244565c589..b28cb5cc45 100644 --- a/epan/dfilter/dfilter-macro.c +++ b/epan/dfilter/dfilter-macro.c @@ -503,7 +503,7 @@ void dfilter_macro_init(void) { char* error = NULL; dfilter_macro_uat = uat_new("Display Filter Macros", sizeof(dfilter_macro_t), - "dfilter_macros", + DFILTER_MACRO_FILENAME, (void**) ¯os, &num_macros, macro_copy, @@ -515,11 +515,12 @@ void dfilter_macro_init(void) { NULL ); if(error) { - report_failure("error while loading dfilter_macros:\n%s",error); + report_failure("error while loading '" DFILTER_MACRO_FILENAME "':\n%s",error); } -#ifdef DUMP_MACROS - dfilter_macro_dump(); -#endif - } + +void dfilter_macro_get_uat(void** p) { + *p = dfilter_macro_uat; +} + diff --git a/epan/dfilter/dfilter-macro.h b/epan/dfilter/dfilter-macro.h index bc43e69637..bf30cbc53e 100644 --- a/epan/dfilter/dfilter-macro.h +++ b/epan/dfilter/dfilter-macro.h @@ -24,7 +24,7 @@ #ifndef _DFILTER_MACRO_H #define _DFILTER_MACRO_H -#define DFILTER_MACRO_FILENAME "df_macros" +#define DFILTER_MACRO_FILENAME "dfilter_macros" typedef struct _dfilter_macro_t { @@ -49,4 +49,6 @@ gchar* dfilter_macro_apply(const gchar* text, guint depth, gchar** error); void dfilter_macro_init(void); +void dfilter_macro_get_uat(void**); + #endif /* _DFILTER_MACRO_H */ diff --git a/epan/dfilter/dfilter.c b/epan/dfilter/dfilter.c index 8ad6061c53..775321076f 100644 --- a/epan/dfilter/dfilter.c +++ b/epan/dfilter/dfilter.c @@ -73,8 +73,6 @@ dfilter_fail(const char *format, ...) void dfilter_init(void) { - gchar* err; - if (ParserObj) { g_message("I expected ParserObj to be NULL\n"); /* Free the Lemon Parser object */ diff --git a/epan/uat-int.h b/epan/uat-int.h index ca46f1553f..4f9b8a48f7 100644 --- a/epan/uat-int.h +++ b/epan/uat-int.h @@ -82,5 +82,5 @@ gboolean uat_save(uat_t* dt, char** error); gboolean uat_load(uat_t* dt, char** error); #define UAT_UPDATE(uat) do { *((uat)->user_ptr) = (void*)((uat)->user_data->data); *((uat)->nrows_p) = (uat)->user_data->len; } while(0) - +#define UAT_INDEX_PTR(uat,idx) (uat->user_data->data + (uat->record_size * (idx))) #endif diff --git a/epan/uat.c b/epan/uat.c index 93bf611753..c0eeb8bad5 100644 --- a/epan/uat.c +++ b/epan/uat.c @@ -59,6 +59,10 @@ uat_t* uat_start(const char* name, uat_free_cb_t free_cb) { uat_t* uat = g_malloc(sizeof(uat_t)); + + if (!all_uats) + all_uats = g_ptr_array_new(); + g_ptr_array_add(all_uats,uat); g_assert(name && size && filename && data_ptr && num_items_ptr); diff --git a/gtk/Makefile.am b/gtk/Makefile.am index cb4b6ca5ca..6517711d23 100644 --- a/gtk/Makefile.am +++ b/gtk/Makefile.am @@ -111,6 +111,7 @@ noinst_HEADERS = \ text_page.h \ toolbar.h \ u3.h \ + uat_gui.h \ voip_calls.h \ voip_calls_dlg.h \ webbrowser.h diff --git a/gtk/Makefile.common b/gtk/Makefile.common index ed572bcd0c..654f2ab4fb 100644 --- a/gtk/Makefile.common +++ b/gtk/Makefile.common @@ -113,6 +113,7 @@ WIRESHARK_GTK_SRC = \ text_page.c \ toolbar.c \ u3.c \ + uat_gui.c \ voip_calls.c \ webbrowser.c diff --git a/gtk/macros_dlg.c b/gtk/macros_dlg.c index 05ffee4d26..797b0e3824 100644 --- a/gtk/macros_dlg.c +++ b/gtk/macros_dlg.c @@ -25,56 +25,16 @@ # include "config.h" #endif -#include -#include -#include -#include #include -#include -#include "dlg_utils.h" -#include "gui_utils.h" -#include "compat_macros.h" -static void append_macro(dfilter_macro_t* m, void* lp) { - GtkWidget *list = lp; - simple_list_append(list, 0, m->name, 1, m->text, -1); -} +#include +#include +#include "uat_gui.h" +#include "macros_dlg.h" void macros_dialog_cb(GtkWidget *w _U_, gpointer data _U_) { - GtkWidget *macros_w, *vbox; - GtkWidget *scrolledwindow; - GtkWidget *list; - const gchar *titles[] = {"Name", "Text"}; - - macros_w = window_new(GTK_WINDOW_TOPLEVEL, "Display Filter Macros"); - gtk_window_set_default_size(GTK_WINDOW(macros_w), 650, 600); - -#if GTK_MAJOR_VERSION >= 2 - gtk_window_set_position(GTK_WINDOW(macros_w), GTK_WIN_POS_CENTER_ON_PARENT); -#else - gtk_window_set_position(GTK_WINDOW(macros_w), GTK_WIN_POS_CENTER); -#endif - - gtk_container_border_width(GTK_CONTAINER(macros_w), 6); - - vbox = gtk_vbox_new(FALSE, 12); - gtk_container_border_width(GTK_CONTAINER(vbox), 6); - gtk_container_add(GTK_CONTAINER(macros_w), vbox); - - scrolledwindow = scrolled_window_new(NULL, NULL); - gtk_container_add(GTK_CONTAINER(vbox), scrolledwindow); - -#if GTK_MAJOR_VERSION >= 2 - gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolledwindow), - GTK_SHADOW_IN); -#endif - - list = simple_list_new(2 , titles); - dfilter_macro_foreach(append_macro, list); - gtk_container_add(GTK_CONTAINER(scrolledwindow), list); - - gtk_widget_show_all(macros_w); - - return; + uat_t* dfmuat; + dfilter_macro_get_uat(&dfmuat); + uat_window(dfmuat); } diff --git a/gtk/macros_dlg.h b/gtk/macros_dlg.h index 680520eecb..321131fe95 100644 --- a/gtk/macros_dlg.h +++ b/gtk/macros_dlg.h @@ -20,5 +20,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -void macros_dialog_cb(GtkWidget *w _U_, gpointer data _U_); +#ifndef __MACROS_DLG_H_ +#define __MACROS_DLG_H_ + void macros_dialog_cb(GtkWidget*, gpointer); +#endif \ No newline at end of file -- cgit v1.2.3