Exemplo n.º 1
0
/* This extracts the project URI saved in the session so that it could be
 * loaded sequencially. Returned string must be freed.
 */
static GFile*
extract_project_from_session (const gchar* session_dir)
{
	AnjutaSession *session;
	GList *node, *files;
	GFile *project = NULL;

	session = anjuta_session_new (session_dir);

	files = anjuta_session_get_string_list (session, "File Loader", "Files");

	/* Find project file */
	node = files;
	for (node = files; node != NULL; node = g_list_next (node))
	{
		gchar *uri = node->data;
		if (uri)
		{
			if (anjuta_util_is_project_file (uri))
			{
				if (project != NULL) g_object_unref (project);
				project = anjuta_session_get_file_from_relative_uri (session, uri, NULL);
			}
			g_free (uri);
		}
	}
	g_list_free (files);
	g_object_unref (session);

	return project;
}
Exemplo n.º 2
0
static GList*
anjuta_session_get_relative_file_list (AnjutaSession *session, const gchar *section, const gchar *key)
{
	GList *list;
	GList *item;

 	list = anjuta_session_get_string_list (session, section, key);
	for (item = g_list_first (list); item != NULL; item = g_list_next (item))
	{
		GFile *file;

		file = anjuta_session_get_file_from_relative_uri (session, (const gchar *)item->data, NULL);
		g_free (item->data);
		item->data = file;
	}

	return list;
}