X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=ltt%2Fbranches%2Fpoly%2Flttv%2Fmodules%2Fgui%2Fcontrolflow%2Fmodule.c;h=14311efed2a552661b6eb7dd1cee0e5afeb1d8a7;hb=703b25fad5513ff1d7dc442c0e5d278160964f44;hp=c0b3f498bf3d377aa62776462524e509bbd0dc96;hpb=4e4d11b3b1db254446f6cad04b3c3fa9b574851f;p=lttv.git diff --git a/ltt/branches/poly/lttv/modules/gui/controlflow/module.c b/ltt/branches/poly/lttv/modules/gui/controlflow/module.c index c0b3f498..14311efe 100644 --- a/ltt/branches/poly/lttv/modules/gui/controlflow/module.c +++ b/ltt/branches/poly/lttv/modules/gui/controlflow/module.c @@ -50,10 +50,14 @@ #include "eventhooks.h" #include "hGuiControlFlowInsert.xpm" +#include "hLegendInsert.xpm" + +GQuark LTT_NAME_CPU; /** Array containing instanced objects. Used when module is unloaded */ GSList *g_control_flow_data_list = NULL ; +GSList *g_legend_list = NULL ; /***************************************************************************** * Functions for module loading/unloading * @@ -75,6 +79,16 @@ static void init() { hGuiControlFlowInsert_xpm, "Insert Control Flow Viewer", h_guicontrolflow); + + lttvwindow_register_constructor("guicontrolflowlegend", + "/", + "Popup Control Flow Viewer Legend", + hLegendInsert_xpm, + "Popup Control Flow Viewer Legend", + h_legend); + + + LTT_NAME_CPU = g_quark_from_string("/cpu"); } void destroy_walk(gpointer data, gpointer user_data) @@ -83,6 +97,12 @@ void destroy_walk(gpointer data, gpointer user_data) guicontrolflow_destructor_full((ControlFlowData*)data); } +void destroy_legend_walk(gpointer data, gpointer user_data) +{ + g_info("Walk destroy GUI Control Flow Viewer"); + legend_destructor((GtkWindow*)data); +} + /** @@ -98,8 +118,13 @@ static void destroy() { g_slist_free(g_control_flow_data_list); + g_slist_foreach(g_legend_list, destroy_legend_walk, NULL ); + + g_slist_free(g_control_flow_data_list); + /* Unregister the toolbar insert button and menu entry */ lttvwindow_unregister_constructor(h_guicontrolflow); + lttvwindow_unregister_constructor(h_legend); }