X-Git-Url: http://git.liburcu.org/?a=blobdiff_plain;f=ltt%2Fbranches%2Fpoly%2Flttv%2Fmodules%2Fgui%2Ftracecontrol%2Ftracecontrol.c;h=9892de13b8c9d0bd4dceeb719f2524f1e13e48ce;hb=b154e818a5378f1a2529a0e4d287b3f6dda1731e;hp=bc7ec1882ed67c5b875e0517ff5ca3d297804df2;hpb=915cab8162e47678400a5cf6f6849ec7cce4fb98;p=lttv.git diff --git a/ltt/branches/poly/lttv/modules/gui/tracecontrol/tracecontrol.c b/ltt/branches/poly/lttv/modules/gui/tracecontrol/tracecontrol.c index bc7ec188..9892de13 100644 --- a/ltt/branches/poly/lttv/modules/gui/tracecontrol/tracecontrol.c +++ b/ltt/branches/poly/lttv/modules/gui/tracecontrol/tracecontrol.c @@ -34,6 +34,7 @@ #include #include #include +#include #include "hTraceControlInsert.xpm" #include "TraceControlStart.xpm" @@ -69,9 +70,9 @@ typedef struct _ControlData ControlData; * Prototypes */ GtkWidget *guicontrol_get_widget(ControlData *tcd); -ControlData *gui_control(GObject *obj); +ControlData *gui_control(LttvPluginTab *ptab); void gui_control_destructor(ControlData *tcd); -GtkWidget* h_guicontrol(GObject *obj); +GtkWidget* h_guicontrol(LttvPlugin *plugin); void control_destroy_walk(gpointer data, gpointer user_data); /* @@ -152,9 +153,9 @@ guicontrol_get_widget(ControlData *tcd) * @return The Filter viewer data created. */ ControlData* -gui_control(GObject *obj) +gui_control(LttvPluginTab *ptab) { - Tab *tab = g_object_get_data(obj, "Tab"); + Tab *tab = ptab->tab; g_debug("filter::gui_control()"); unsigned i; @@ -983,7 +984,10 @@ void stop_clicked (GtkButton *button, gpointer user_data) const gchar *lttctl_path = gtk_entry_get_text(GTK_ENTRY(tcd->lttctl_path_entry)); - const gchar *trace_dir = gtk_entry_get_text(GTK_ENTRY(tcd->trace_dir_entry)); + gchar *trace_dir = gtk_entry_get_text(GTK_ENTRY(tcd->trace_dir_entry)); + GSList * trace_list = NULL; + + trace_list = g_slist_append(trace_list, trace_dir); /* Setup arguments to su */ /* child */ @@ -1067,7 +1071,7 @@ void stop_clicked (GtkButton *button, gpointer user_data) switch(id){ case GTK_RESPONSE_ACCEPT: { - create_main_window_with_trace(trace_dir); + create_main_window_with_trace_list(trace_list); } break; case GTK_RESPONSE_REJECT: @@ -1075,7 +1079,7 @@ void stop_clicked (GtkButton *button, gpointer user_data) break; } gtk_widget_destroy(dialogue); - + g_slist_free(trace_list); } @@ -1090,9 +1094,10 @@ void stop_clicked (GtkButton *button, gpointer user_data) * @return The widget created. */ GtkWidget * -h_guicontrol(GObject *obj) +h_guicontrol(LttvPlugin *plugin) { - ControlData* f = gui_control(obj); + LttvPluginTab *ptab = LTTV_PLUGIN_TAB(plugin); + ControlData* f = gui_control(ptab); return NULL; }