[Initng-svn] r4328 - initng-gui/initng-conf-gtk/src

svn at initng.thinktux.net svn at initng.thinktux.net
Thu Jun 1 08:38:45 CEST 2006


Author: danne
Date: Thu Jun  1 08:38:44 2006
New Revision: 4328

Modified:
   initng-gui/initng-conf-gtk/src/callbacks.c
   initng-gui/initng-conf-gtk/src/serviceparser.c

Log:
Trees are strange things. Will continue later.


Modified: initng-gui/initng-conf-gtk/src/callbacks.c
==============================================================================
--- initng-gui/initng-conf-gtk/src/callbacks.c	(original)
+++ initng-gui/initng-conf-gtk/src/callbacks.c	Thu Jun  1 08:38:44 2006
@@ -400,7 +400,7 @@
 
 void on_edit_button_clicked (GtkToolButton *toolbutton, gpointer user_data) {
   GtkWidget *service_list = glade_xml_get_widget(xml, "service_list");
-  on_service_list_row_activated(service_list, NULL, NULL, NULL);
+  on_service_list_row_activated(GTK_TREE_VIEW(service_list), NULL, NULL, NULL);
 }
 
 void on_log_button_clicked (GtkToolButton *toolbutton, gpointer user_data) {

Modified: initng-gui/initng-conf-gtk/src/serviceparser.c
==============================================================================
--- initng-gui/initng-conf-gtk/src/serviceparser.c	(original)
+++ initng-gui/initng-conf-gtk/src/serviceparser.c	Thu Jun  1 08:38:44 2006
@@ -130,6 +130,9 @@
   char *token = *name;
   printf("tokenizer: %s\n", token);
   char *rest = strchr(*name, '/');
+  if(rest == NULL) {
+    return token;
+  }
   rest[0] = 0;
   rest++;
   printf("End of tokenizer: %s, %s\n", token, rest);
@@ -137,26 +140,25 @@
   return token;
 }
 
-void add_recursive(GtkTreeStore *store, GtkTreeIter *iter, char *name,
+void add_recursive(GtkTreeStore *store, GtkTreeIter *parent_iter, char *name,
 		    	  struct s_info *serviceinfo) {
   char *tok = path_tokenizer(&name);
-  iter = find_service(store, iter, tok);
+  GtkTreeIter *child_iter = find_service(store, parent_iter, tok);
 
-  if(iter) { //The correct node was found
-	; //Maybe do something here?
-  } else { //The node has to be created
-    GtkTreeIter child; //Kanske vore bra att tilldela child någonting också :-)
+  if(!child_iter) { //The node has to be created
     printf("Prepending node for %s\n", tok);
-    gtk_tree_store_prepend(store, &child, iter);
+    if(parent_iter == NULL)
+    	printf("Parent_iter is NULL!\n");
+    gtk_tree_store_prepend(store, child_iter, parent_iter);
     printf("...\n");
-	iter = &child;
-    gtk_tree_store_set(store, iter, 0, tok, -1);
+	//iter = &child;
+    gtk_tree_store_set(store, child_iter, 0, tok, -1);
   }
 
   printf("Left to handle: %s\n", name);
 
-  if(strchr(name, '/'))  { //This is not the last part
-    add_recursive(store, iter, name, serviceinfo);
+  if(strcmp(tok, name))  { //This is not the last part
+    add_recursive(store, child_iter, name, serviceinfo);
   } else {
     ;
   }


More information about the Initng-svn mailing list