Adjust the includes now that some paths have changed
[lttv.git] / ltt / branches / poly / lttv / modules / gui / main / src / callbacks.c
index 08a58516c2eb22bd47019b7e2596e22e3dbf52c4..76890d1575941454677c6ba1cbb2d3a2b6ddfcd6 100644 (file)
 #include "interface.h"
 #include "support.h"
 #include <lttv/lttv.h>
-#include <lttv/mainwindow.h>
-#include <lttv/menu.h>
-#include <lttv/toolbar.h>
-#include <lttv/gtktraceset.h>
+#include <lttvgui/mainwindow.h>
+#include <lttvgui/menu.h>
+#include <lttvgui/toolbar.h>
+#include <lttvgui/gtktraceset.h>
 #include <lttv/module.h>
-#include <lttv/gtkdirsel.h>
+#include <lttvgui/gtkdirsel.h>
 #include <lttv/iattribute.h>
-#include <lttv/lttvfilter.h>
+#include <lttvgui/lttvfilter.h>
 #include <ltt/trace.h>
 #include <ltt/facility.h>
 
@@ -48,6 +48,11 @@ extern GSList * g_main_window_list;
 
 static int g_win_count = 0;
 
+// MD : keep old directory
+static char remember_plugins_dir[PATH_LENGTH] = "";
+static char remember_trace_dir[PATH_LENGTH] = "";
+
+
 MainWindow * get_window_data_struct(GtkWidget * widget);
 char * get_unload_module(char ** loaded_module_name, int nb_module);
 char * get_remove_trace(char ** all_trace_name, int nb_trace);
@@ -481,12 +486,15 @@ void add_trace(GtkWidget * widget, gpointer user_data)
   MainWindow * mw_data = get_window_data_struct(widget);
   GtkDirSelection * file_selector = (GtkDirSelection *)gtk_dir_selection_new("Select a trace");
   gtk_dir_selection_hide_fileop_buttons(file_selector);
+  if(remember_trace_dir[0] != '\0')
+    gtk_dir_selection_set_filename(file_selector, remember_trace_dir);
   
   id = gtk_dialog_run(GTK_DIALOG(file_selector));
   switch(id){
     case GTK_RESPONSE_ACCEPT:
     case GTK_RESPONSE_OK:
       dir = gtk_dir_selection_get_dir (file_selector);
+      strncpy(remember_trace_dir, dir, PATH_LENGTH);
       if(!dir || strlen(dir) ==0){
        gtk_widget_destroy((GtkWidget*)file_selector);
        break;
@@ -1026,6 +1034,8 @@ on_load_module_activate                (GtkMenuItem     *menuitem,
   char str[PATH_LENGTH], *str1;
   MainWindow * mw_data = get_window_data_struct((GtkWidget*)menuitem);
   GtkFileSelection * file_selector = (GtkFileSelection *)gtk_file_selection_new("Select a module");
+  if(remember_plugins_dir[0] != '\0')
+    gtk_file_selection_set_filename(file_selector, remember_plugins_dir);
   gtk_file_selection_hide_fileop_buttons(file_selector);
   
   str[0] = '\0';
@@ -1034,7 +1044,8 @@ on_load_module_activate                (GtkMenuItem     *menuitem,
     case GTK_RESPONSE_ACCEPT:
     case GTK_RESPONSE_OK:
       dir = gtk_file_selection_get_selections (file_selector);
-      sprintf(str,dir[0]);
+      strncpy(str,dir[0],PATH_LENGTH);
+      strncpy(remember_plugins_dir,dir[0],PATH_LENGTH);
       str1 = strrchr(str,'/');
       if(str1)str1++;
       else{
@@ -1109,12 +1120,16 @@ on_add_module_search_path_activate     (GtkMenuItem     *menuitem,
   gint id;
 
   MainWindow * mw_data = get_window_data_struct((GtkWidget*)menuitem);
+  if(remember_plugins_dir[0] != '\0')
+    gtk_dir_selection_set_filename(file_selector, remember_plugins_dir);
 
   id = gtk_dialog_run(GTK_DIALOG(file_selector));
   switch(id){
     case GTK_RESPONSE_ACCEPT:
     case GTK_RESPONSE_OK:
       dir = gtk_dir_selection_get_dir (file_selector);
+      strncpy(remember_plugins_dir,dir,PATH_LENGTH);
+      strncat(remember_plugins_dir,"/",PATH_LENGTH);
       lttv_library_path_add(dir);
     case GTK_RESPONSE_REJECT:
     case GTK_RESPONSE_CANCEL:
This page took 0.024379 seconds and 4 git commands to generate.