anjuta r4209 - in trunk: . plugins/symbol-db



Author: jhs
Date: Tue Sep  2 07:02:53 2008
New Revision: 4209
URL: http://svn.gnome.org/viewvc/anjuta?rev=4209&view=rev

Log:
2008-08-30  Massimo Cora\'  <maxcvs email it>

	* plugins/symbol-db/anjuta-symbol-db.glade:
	fix bug #549518
	* plugins/symbol-db/symbol-db-engine.c
	(sdb_engine_free_cached_queries), (sdb_engine_get_file_defined_id),
	(sdb_engine_finalize), (symbol_db_engine_new),
	(symbol_db_engine_file_exists), (symbol_db_engine_project_exists),
	(symbol_db_engine_add_new_project), (sdb_engine_add_new_language),
	(sdb_engine_add_new_file), (sdb_engine_add_new_sym_type),
	(sdb_engine_add_new_sym_kind), (sdb_engine_add_new_sym_access),
	(sdb_engine_add_new_sym_implementation),
	(sdb_engine_add_new_scope_definition),
	(sdb_engine_second_pass_update_scope_1),
	(sdb_engine_second_pass_update_heritage),
	(sdb_engine_add_new_symbol),
	(symbol_db_engine_update_project_symbols):
	* plugins/symbol-db/symbol-db-prefs.c (on_autoscan_button_toggled),
	(on_parallel_button_toggled), (sdb_prefs_init1):
	fixed on_parallel signal and preferences saving.
	used g_value_set_static_string () which is quicker than its brother
	g_value_set_string ().
	
	* configure.in: Require libgda 3.99.4

Modified:
   trunk/ChangeLog
   trunk/configure.in
   trunk/plugins/symbol-db/anjuta-symbol-db.glade
   trunk/plugins/symbol-db/symbol-db-engine.c
   trunk/plugins/symbol-db/symbol-db-prefs.c

Modified: trunk/configure.in
==============================================================================
--- trunk/configure.in	(original)
+++ trunk/configure.in	Tue Sep  2 07:02:53 2008
@@ -51,7 +51,7 @@
 GTKSOURCEVIEW_GTK_REQUIRED=2.10
 BINUTILS_REQUIRED=2.15.92
 LIBWNCK_REQUIRED=2.12
-GDA_REQUIRED=3.99.3
+GDA_REQUIRED=3.99.4
 
 dnl LIBGTODO_REQUIRED=0.15
 

Modified: trunk/plugins/symbol-db/anjuta-symbol-db.glade
==============================================================================
--- trunk/plugins/symbol-db/anjuta-symbol-db.glade	(original)
+++ trunk/plugins/symbol-db/anjuta-symbol-db.glade	Tue Sep  2 07:02:53 2008
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
 <!DOCTYPE glade-interface SYSTEM "glade-2.0.dtd">
-<!--Generated with glade3 3.4.4 on Wed Aug 20 23:49:57 2008 -->
+<!--Generated with glade3 3.4.4 on Wed Aug 27 21:42:20 2008 -->
 <glade-interface>
   <widget class="GtkWindow" id="symbol_db_pref_window">
     <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
@@ -79,7 +79,7 @@
                           <widget class="GtkCheckButton" id="preferences_toggle:bool:1:1:symboldb.parallel_scan">
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
-                            <property name="label" translatable="yes">Parallel global/project scan of symbols.</property>
+                            <property name="label" translatable="yes">Parallel scan of project and global symbols.</property>
                             <property name="response_id">0</property>
                             <property name="draw_indicator">True</property>
                           </widget>

Modified: trunk/plugins/symbol-db/symbol-db-engine.c
==============================================================================
--- trunk/plugins/symbol-db/symbol-db-engine.c	(original)
+++ trunk/plugins/symbol-db/symbol-db-engine.c	Tue Sep  2 07:02:53 2008
@@ -612,7 +612,7 @@
 sdb_engine_dyn_child_query_node_destroy (gpointer data)
 {
 	DynChildQueryNode *node_to_destroy;
-	
+
 	node_to_destroy = (DynChildQueryNode *)data;
 
 	g_free (node_to_destroy->query_str);
@@ -765,16 +765,19 @@
 
 	for (i = 0; i < PREP_QUERY_COUNT; i++)
 	{
+/*DEBUG_PRINT ("sdb_engine_free_cached_queries START %d", i);*/
 		node = priv->static_query_list[i];
 
 		if (node != NULL && node->stmt != NULL)
 		{
+			/*DEBUG_PRINT ("sdb_engine_free_cached_queries stmt %d", i);*/
 			g_object_unref (node->stmt);
 			node->stmt = NULL;
 		}
 		
 		if (node != NULL && node->plist != NULL)
 		{
+			/*DEBUG_PRINT ("sdb_engine_free_cached_queries plist %d", i);*/
 			g_object_unref (node->plist);
 			node->plist = NULL;
 		}
@@ -782,6 +785,7 @@
 		/* last but not the least free the node itself */
 		g_free (node);
 		priv->static_query_list[i] = NULL;
+/*DEBUG_PRINT ("sdb_engine_free_cached_queries END %d", i);		*/
 	}
 }
 
@@ -1147,16 +1151,16 @@
 		/* in this case fake_file will be ignored. */
 		
 		/* we expect here an absolute path */
-		g_value_set_string (value,
+		g_value_set_static_string (value,
 							tag_entry->file + strlen (base_prj_path) );
 	}
 	else
 	{
 		/* check whether the fake_file can substitute the tag_entry->file one */
 		if (fake_file_on_db == NULL)
-			g_value_set_string (value, tag_entry->file);
+			g_value_set_static_string (value, tag_entry->file);
 		else
-			g_value_set_string (value, fake_file_on_db);
+			g_value_set_static_string (value, fake_file_on_db);
 	}
 	
 	if ((file_defined_id = sdb_engine_get_tuple_id_by_unique_name (dbe,
@@ -1304,7 +1308,7 @@
 	/* notify listeners that another file has been scanned */
 	g_async_queue_push (priv->signals_queue, (gpointer)(SINGLE_FILE_SCAN_END +1));
 	
-	/* we've done with tag_file but we don't need to tagsClose (tag_file); */	
+	/* we've done with tag_file but we don't need to tagsClose (tag_file); */
 }
 
 static gpointer
@@ -2400,6 +2404,12 @@
 		priv->mutex = NULL;
 	}
 	
+	if (priv->shutting_cond)
+	{
+		g_cond_free (priv->shutting_cond);
+		priv->shutting_cond = NULL;
+	}
+	
 	if (priv->timeout_trigger_handler > 0)
 		g_source_remove (priv->timeout_trigger_handler);
 	
@@ -2628,7 +2638,7 @@
 	// FIXME
 	priv->mutex = g_mutex_new ();
 	// FIXME	
-	//priv->mutex = NULL;
+//	priv->mutex = NULL;
 	
 
 	/* set the mandatory ctags_path */
@@ -2790,7 +2800,7 @@
 		return FALSE;
 	}	
 	value = gda_value_new (G_TYPE_STRING);
-	g_value_set_string (value, relative);	
+	g_value_set_static_string (value, relative);	
 
 	if ((file_defined_id = sdb_engine_get_tuple_id_by_unique_name (dbe,
 													PREP_QUERY_GET_FILE_ID_BY_UNIQUE_NAME,
@@ -2941,7 +2951,7 @@
 
 	g_return_val_if_fail (priv->db_connection != NULL, FALSE);
 	value = gda_value_new (G_TYPE_STRING);
-	g_value_set_string (value, project_name);
+	g_value_set_static_string (value, project_name);
 
 	/* test the existence of the project in db */
 	if ((prj_id = sdb_engine_get_tuple_id_by_unique_name (dbe,
@@ -2995,7 +3005,7 @@
 		
 		DEBUG_PRINT ("adding default workspace... '%s'", workspace_name);
 		value = gda_value_new (G_TYPE_STRING);
-		g_value_set_string (value, workspace_name);
+		g_value_set_static_string (value, workspace_name);
 		
 		if ((wks_id = sdb_engine_get_tuple_id_by_unique_name (dbe,
 				 PREP_QUERY_GET_WORKSPACE_ID_BY_UNIQUE_NAME,
@@ -3018,7 +3028,7 @@
 	}
 
 	value = gda_value_new (G_TYPE_STRING);
-	g_value_set_string (value, workspace_name);
+	g_value_set_static_string (value, workspace_name);
 
 	/* get workspace id */
 	if ((wks_id = sdb_engine_get_tuple_id_by_unique_name (dbe,
@@ -3088,7 +3098,7 @@
 	priv = dbe->priv;
 	
 	value = gda_value_new (G_TYPE_STRING);
-	g_value_set_string (value, language);
+	g_value_set_static_string (value, language);
 
 	/* check for an already existing table with language "name". */
 	if ((table_id = sdb_engine_get_tuple_id_by_unique_name (dbe,
@@ -3179,7 +3189,7 @@
 				 project_name, local_filepath, language);*/
 	
 	value = gda_value_new (G_TYPE_STRING);
-	g_value_set_string (value, project_name);
+	g_value_set_static_string (value, project_name);
 
 	/* check for an already existing table with project "project". */
 	if ((project_id = sdb_engine_get_tuple_id_by_unique_name (dbe,
@@ -3203,7 +3213,7 @@
 	{
 		return FALSE;
 	}	
-	g_value_set_string (value, relative_path);	
+	g_value_set_static_string (value, relative_path);	
 
 	if ((file_id = sdb_engine_get_tuple_id_by_unique_name (dbe,
 								   PREP_QUERY_GET_FILE_ID_BY_UNIQUE_NAME,
@@ -3411,10 +3421,10 @@
 		GValue *value1, *value2;
 
 		value1 = gda_value_new (G_TYPE_STRING);
-		g_value_set_string (value1, type);
+		g_value_set_static_string (value1, type);
 
 		value2 = gda_value_new (G_TYPE_STRING);
-		g_value_set_string (value2, type_name);
+		g_value_set_static_string (value2, type_name);
 
 		if ((table_id = sdb_engine_get_tuple_id_by_unique_name2 (dbe,
 													 PREP_QUERY_GET_SYM_TYPE_ID,
@@ -3467,7 +3477,7 @@
 	}
 
 	value = gda_value_new (G_TYPE_STRING);
-	g_value_set_string (value, kind_name);
+	g_value_set_static_string (value, kind_name);
 		
 	
 	if ((table_id = sdb_engine_get_tuple_id_by_unique_name (dbe,
@@ -3551,7 +3561,7 @@
 
 	
 	value = gda_value_new (G_TYPE_STRING);
-	g_value_set_string (value, access);
+	g_value_set_static_string (value, access);
 
 	if ((table_id = sdb_engine_get_tuple_id_by_unique_name (dbe,
 									PREP_QUERY_GET_SYM_ACCESS_BY_UNIQUE_NAME,
@@ -3635,7 +3645,7 @@
 	}
 	
 	value = gda_value_new (G_TYPE_STRING);
-	g_value_set_string (value, implementation);
+	g_value_set_static_string (value, implementation);
 
 	if ((table_id = sdb_engine_get_tuple_id_by_unique_name (dbe,
 							PREP_QUERY_GET_SYM_IMPLEMENTATION_BY_UNIQUE_NAME,
@@ -3829,7 +3839,7 @@
 */		
 		/* let's check for an already present scope table with scope and type_id infos. */
 		value1 = gda_value_new (G_TYPE_STRING);
-		g_value_set_string (value1, scope);
+		g_value_set_static_string (value1, scope);
 
 		value2 = gda_value_new (G_TYPE_INT);
 		g_value_set_int (value2, type_table_id);
@@ -4106,10 +4116,10 @@
 	g_strfreev (tmp_str_splitted);
 
 	value1 = gda_value_new (G_TYPE_STRING);
-	g_value_set_string (value1, token_name);
+	g_value_set_static_string (value1, token_name);
 
 	value2 = gda_value_new (G_TYPE_STRING);
-	g_value_set_string (value2, object_name);
+	g_value_set_static_string (value2, object_name);
 
 	/* we're gonna access db. Let's lock here */
 	if (priv->mutex)
@@ -4430,7 +4440,7 @@
 				GValue *value1;
 
 				value1 = gda_value_new (G_TYPE_STRING);
-				g_value_set_string (value1, klass_name);
+				g_value_set_static_string (value1, klass_name);
 				
 				if ((base_klass_id =
 					 sdb_engine_get_tuple_id_by_unique_name (dbe,
@@ -4453,10 +4463,10 @@
 				GValue *value2;
 
 				value1 = gda_value_new (G_TYPE_STRING);
-				g_value_set_string (value1, klass_name);
+				g_value_set_static_string (value1, klass_name);
 
 				value2 = gda_value_new (G_TYPE_STRING);
-				g_value_set_string (value2, namespace_name);
+				g_value_set_static_string (value2, namespace_name);
 
 				DEBUG_PRINT ("value1 : %s value2 : %s", klass_name, namespace_name);
 				if ((base_klass_id =
@@ -4717,7 +4727,7 @@
 	{
 		GList *sym_list;
 		value1 = gda_value_new (G_TYPE_STRING);
-		g_value_set_string (value1, name);
+		g_value_set_static_string (value1, name);
 
 		value2 = gda_value_new (G_TYPE_INT);
 		g_value_set_int (value2, file_defined_id);
@@ -5444,7 +5454,7 @@
 	priv = dbe->priv;
 
 	value = gda_value_new (G_TYPE_STRING);
-	g_value_set_string (value, project);
+	g_value_set_static_string (value, project);
 
 	/* get project id */
 	if ((project_id = sdb_engine_get_tuple_id_by_unique_name (dbe,

Modified: trunk/plugins/symbol-db/symbol-db-prefs.c
==============================================================================
--- trunk/plugins/symbol-db/symbol-db-prefs.c	(original)
+++ trunk/plugins/symbol-db/symbol-db-prefs.c	Tue Sep  2 07:02:53 2008
@@ -358,7 +358,7 @@
 }
 
 static void
-on_check_button_toggled (GtkToggleButton *togglebutton, SymbolDBPrefs *sdbp)
+on_autoscan_button_toggled (GtkToggleButton *togglebutton, SymbolDBPrefs *sdbp)
 {
 	SymbolDBPrefsPriv *priv;	
 	gboolean check_button_value;
@@ -391,12 +391,27 @@
 }
 
 static void
+on_parallel_button_toggled (GtkToggleButton *togglebutton, SymbolDBPrefs *sdbp)
+{
+	SymbolDBPrefsPriv *priv;	
+	gboolean parallel_button_value;
+	priv = sdbp->priv;
+	GtkWidget *parallel_button;
+	
+	parallel_button = glade_xml_get_widget (priv->prefs_gxml, PARALLEL_SCAN);
+
+	parallel_button_value =  gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (parallel_button));
+	DEBUG_PRINT ("on_parallel_button_toggled ()");
+	anjuta_preferences_set_int (priv->prefs, PARALLEL_SCAN, parallel_button_value);	
+}
+
+static void
 sdb_prefs_init1 (SymbolDBPrefs *sdbp)
 {
 	SymbolDBPrefsPriv *priv;
 	GtkWidget *fchooser;
-	GtkWidget *check_button, *update_button;
-	gboolean check_button_value;
+	GtkWidget *check_button, *update_button, *parallel_button;
+	gboolean check_button_value, update_button_value, parallel_button_value;
 	gchar *ctags_value;
 
 	priv = sdbp->priv;
@@ -434,14 +449,21 @@
 	
 	check_button = glade_xml_get_widget (priv->prefs_gxml, PROJECT_AUTOSCAN);
 	g_signal_connect (G_OBJECT (check_button), "toggled", 
-					  G_CALLBACK (on_check_button_toggled), sdbp);
+					  G_CALLBACK (on_autoscan_button_toggled), sdbp);
 	check_button_value = anjuta_preferences_get_int (priv->prefs, PROJECT_AUTOSCAN);
 	gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (check_button), check_button_value);
 
 	update_button = glade_xml_get_widget (priv->prefs_gxml, BUFFER_AUTOSCAN);
 	g_signal_connect (G_OBJECT (update_button), "toggled", 
-					  G_CALLBACK (on_update_button_toggled), sdbp);	
-	
+					  G_CALLBACK (on_update_button_toggled), sdbp);
+	update_button_value = anjuta_preferences_get_int (priv->prefs, BUFFER_AUTOSCAN);
+	gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (update_button), update_button_value);
+	
+	parallel_button	= glade_xml_get_widget (priv->prefs_gxml, PARALLEL_SCAN);
+	g_signal_connect (G_OBJECT (parallel_button), "toggled", 
+					  G_CALLBACK (on_parallel_button_toggled), sdbp);
+	parallel_button_value = anjuta_preferences_get_int (priv->prefs, PARALLEL_SCAN);
+	gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (parallel_button), parallel_button_value);
 	
 	g_free (ctags_value);
 }



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]