create directories branches, tags, trunk
[lttv.git] / ltt / branches / poly / lttv / modules / gui / controlflow / module.c
index 69694d6f7b28e73863fe77bd8063abc607375b42..1ad14c1691f6c4e3d483ac75448687975a2122b8 100644 (file)
@@ -26,7 +26,7 @@
  *
  * This plugin adds a Control Flow Viewer functionnality to Linux TraceToolkit
  * GUI when this plugin is loaded. The init and destroy functions add the
- * viewer's insertion menu item and toolbar icon by calling gtkTraceSet's
+ * viewer's insertion menu item and toolbar icon by calling viewer.h's
  * API functions. Then, when a viewer's object is created, the constructor
  * creates ans register through API functions what is needed to interact
  * with the TraceSet window.
  * Author : Mathieu Desnoyers, June 2003
  */
 
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
 #include <glib.h>
 #include <lttv/lttv.h>
 #include <lttv/module.h>
-#include <lttv/gtktraceset.h>
+#include <lttvwindow/lttvwindow.h>
 
 #include "cfv.h"
+#include "lttv_plugin_cfv.h"
 #include "eventhooks.h"
 
-#include "../icons/hGuiControlFlowInsert.xpm"
-
-static LttvModule *Main_Win_Module;
+#include "hGuiControlFlowInsert.xpm"
 
+GQuark LTT_NAME_CPU;
 
 /** Array containing instanced objects. Used when module is unloaded */
 GSList *g_control_flow_data_list = NULL ;
 
-
-
-
 /*****************************************************************************
  *                 Functions for module loading/unloading                    *
  *****************************************************************************/
@@ -69,23 +70,24 @@ static void init() {
 
   g_info("GUI ControlFlow Viewer init()");
 
-  /* Register the toolbar insert button */
-  toolbar_item_reg(hGuiControlFlowInsert_xpm, "Insert Control Flow Viewer",
-      h_guicontrolflow);
-
-  /* Register the menu item insert entry */
-  menu_item_reg("/", "Insert Control Flow Viewer", h_guicontrolflow);
+  /* Register the toolbar insert button and menu entry*/
+  lttvwindow_register_constructor("guicontrolflow",
+                                  "/",
+                                  "Insert Control Flow Viewer",
+                                  hGuiControlFlowInsert_xpm,
+                                  "Insert Control Flow Viewer",
+                                  h_guicontrolflow);
   
+  LTT_NAME_CPU = g_quark_from_string("/cpu");
 }
 
 void destroy_walk(gpointer data, gpointer user_data)
 {
   g_info("Walk destroy GUI Control Flow Viewer");
-  guicontrolflow_destructor_full((ControlFlowData*)data);
+  guicontrolflow_destructor_full((LttvPluginCFV*)data);
 }
 
 
-
 /**
  * plugin's destroy function
  *
@@ -94,21 +96,18 @@ void destroy_walk(gpointer data, gpointer user_data)
  */
 static void destroy() {
   g_info("GUI Control Flow Viewer destroy()");
-  int i;
 
   g_slist_foreach(g_control_flow_data_list, destroy_walk, NULL );
   
   g_slist_free(g_control_flow_data_list);
 
-  /* Unregister the toolbar insert button */
-  toolbar_item_unreg(h_guicontrolflow);
-
-  /* Unregister the menu item insert entry */
-  menu_item_unreg(h_guicontrolflow);
+  g_slist_free(g_control_flow_data_list);
   
+  /* Unregister the toolbar insert button and menu entry */
+  lttvwindow_unregister_constructor(h_guicontrolflow);
 }
 
 
 LTTV_MODULE("guicontrolflow", "Control flow viewer", \
     "Graphical module to view processes state and control flow", \
-    init, destroy, "mainwin")
+    init, destroy, "lttvwindow")
This page took 0.024089 seconds and 4 git commands to generate.