[anjuta/newproject] libanjuta, am, pm: Fix lots of warnings



commit a39f004953f73fce360e275bb91d10b67d0933cd
Author: Sébastien Granjoux <seb sfo free fr>
Date:   Sat Nov 6 18:23:14 2010 +0100

    libanjuta, am, pm: Fix lots of warnings

 libanjuta/anjuta-project.c              |  182 ++------------------------
 libanjuta/anjuta-project.h              |   13 +--
 libanjuta/anjuta-token-file.c           |    1 -
 libanjuta/anjuta-token-list.c           |   10 +-
 libanjuta/anjuta-token.c                |   53 --------
 plugins/am-project/ac-writer.c          |    8 +-
 plugins/am-project/am-node.c            |   28 +---
 plugins/am-project/am-node.h            |    8 +-
 plugins/am-project/am-project-private.h |    5 -
 plugins/am-project/am-project.c         |  217 ++++++++++++------------------
 plugins/am-project/am-project.h         |    4 -
 plugins/am-project/am-scanner.h         |    2 +
 plugins/am-project/am-scanner.l         |    8 -
 plugins/am-project/am-writer.c          |   45 ++-----
 plugins/dir-project/dir-node.c          |   19 +--
 plugins/project-manager/dialogs.c       |   23 +---
 plugins/project-manager/plugin.c        |    7 +-
 plugins/project-manager/project-model.c |   11 +--
 plugins/project-manager/project-view.c  |    9 --
 plugins/project-manager/project.c       |    8 -
 20 files changed, 151 insertions(+), 510 deletions(-)
---
diff --git a/libanjuta/anjuta-project.c b/libanjuta/anjuta-project.c
index 00c983f..5fc1fab 100644
--- a/libanjuta/anjuta-project.c
+++ b/libanjuta/anjuta-project.c
@@ -629,8 +629,8 @@ anjuta_project_node_get_native_properties (AnjutaProjectNode *node)
 	return NODE_DATA (node)->native_properties;
 }
 
-static
-find_property (gpointer item, gpointer data)
+static gint
+find_property (gconstpointer item, gconstpointer data)
 {
 	AnjutaProjectProperty *prop_a = (AnjutaProjectProperty *)item;
 	AnjutaProjectProperty *prop_b = (AnjutaProjectProperty *)data;
@@ -733,7 +733,7 @@ anjuta_project_property_free (AnjutaProjectProperty *prop)
 }
 
 GType
-anjuta_project_property_get_type ()
+anjuta_project_property_get_type (void)
 {
 	static GType type_id = 0;
 
@@ -774,7 +774,7 @@ anjuta_project_group_get_node_from_file (const AnjutaProjectNode *root, GFile *d
 {
 	AnjutaProjectNode *node;
 
-	node = anjuta_project_node_traverse (root, G_PRE_ORDER, anjuta_project_group_compare, directory);
+	node = anjuta_project_node_traverse ((AnjutaProjectNode *)root, G_PRE_ORDER, anjuta_project_group_compare, directory);
 
 	return node;
 }
@@ -811,7 +811,7 @@ anjuta_project_target_get_node_from_name (const AnjutaProjectNode *parent, const
 {
 	AnjutaProjectNode *node;
 
-	node = anjuta_project_node_traverse (parent, G_PRE_ORDER, anjuta_project_target_compare, name);
+	node = anjuta_project_node_traverse ((AnjutaProjectNode *)parent, G_PRE_ORDER, anjuta_project_target_compare, (gpointer)name);
 
 	return node;
 }
@@ -837,7 +837,7 @@ anjuta_project_source_get_node_from_file (const AnjutaProjectNode *parent, GFile
 	AnjutaProjectNode *node;
 
 
-	node = anjuta_project_node_traverse (parent, G_PRE_ORDER, anjuta_project_source_compare, file);
+	node = anjuta_project_node_traverse ((AnjutaProjectNode *)parent, G_PRE_ORDER, anjuta_project_source_compare, (gpointer)file);
 
 	return node;
 }
@@ -909,6 +909,8 @@ anjuta_project_node_info_new (AnjutaProjectNodeType type,
 	info->type = type;
 	info->name = g_strdup (name);
 	info->mime_type = g_strdup (mime_type);
+
+	return info;
 }
 
 AnjutaProjectNodeInfo *
@@ -1014,8 +1016,6 @@ anjuta_project_node_get_gobject_property (GObject    *object,
 	      GValue     *value,
 	      GParamSpec *pspec)
 {
-	AnjutaProjectNode *node = ANJUTA_PROJECT_NODE(object);
-        
 	G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
 }
 
@@ -1025,8 +1025,7 @@ anjuta_project_node_set_gobject_property (GObject      *object,
 	      const GValue *value,
 	      GParamSpec   *pspec)
 {
-	AnjutaProjectNode *node = ANJUTA_PROJECT_NODE(object);
-       G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
+	G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
 }
 
 static void
@@ -1112,166 +1111,3 @@ anjuta_project_node_class_init (AnjutaProjectNodeClass *klass)
                                        G_PARAM_READWRITE));
 
 }
-
-
-
-/* Proxy node object
- *---------------------------------------------------------------------------*/
-
-#define ANJUTA_TYPE_PROJECT_PROXY_NODE					(anjuta_project_proxy_node_get_type ())
-#define ANJUTA_PROJECT_PROXY_NODE(obj)					(G_TYPE_CHECK_INSTANCE_CAST ((obj), ANJUTA_TYPE_PROJECT_PROXY_NODE, AnjutaProjectProxyNode))
-
-typedef struct _AnjutaProjectProxyNode AnjutaProjectProxyNode;
-GType anjuta_project_proxy_node_get_type (void) G_GNUC_CONST;
-
-struct _AnjutaProjectProxyNode{
-	AnjutaProjectNode base;
-	AnjutaProjectNode *node;
-	guint reference;
-};
-
-
-AnjutaProjectNode *
-anjuta_project_proxy_new (AnjutaProjectNode *node)
-{
-	AnjutaProjectProxyNode *proxy;
-	GList *item;
-	
-	/* If the node is already a proxy get original node */
-	node = anjuta_project_proxy_get_node (node);
-	
-	/* Create proxy node */
-	proxy = g_object_new (ANJUTA_TYPE_PROJECT_PROXY_NODE, NULL);
-	proxy->reference = 1;
-	proxy->node = node;
-	proxy->base.type = node->type | ANJUTA_PROJECT_PROXY;
-	proxy->base.file = node->file != NULL ? g_object_ref (node->file) : NULL;
-	proxy->base.name = g_strdup (node->name);
-		
-	/* Shallow copy of all properties */
-	proxy->base.custom_properties = g_list_copy (node->custom_properties);
-	for (item = g_list_first (proxy->base.custom_properties); item != NULL; item = g_list_next (item))
-	{
-		AnjutaProjectProperty *prop = (AnjutaProjectProperty *)item->data;
-		AnjutaProjectProperty *new_prop;
-		
-		new_prop = anjuta_project_property_copy (prop);
-		item->data = new_prop;
-	}
-	
-	return ANJUTA_PROJECT_NODE (proxy);
-}
-
-AnjutaProjectNode *
-anjuta_project_proxy_unref (AnjutaProjectNode *node)
-{
-	g_object_unref (G_OBJECT (node));
-
-	return node;
-}
-
-/* GObjet implementation
- *---------------------------------------------------------------------------*/
-
-typedef struct _AnjutaProjectProxyNodeClass AnjutaProjectProxyNodeClass;
-
-struct _AnjutaProjectProxyNodeClass {
-	AnjutaProjectNodeClass parent_class;
-};
-
-G_DEFINE_TYPE (AnjutaProjectProxyNode, anjuta_project_proxy_node, ANJUTA_TYPE_PROJECT_NODE);
-
-static void
-anjuta_project_proxy_node_init (AnjutaProjectProxyNode *node)
-{
-}
-
-static void
-anjuta_project_proxy_node_finalize (GObject *object)
-{
-	AnjutaProjectProxyNode *proxy = ANJUTA_PROJECT_PROXY_NODE (object);
-	
-	G_OBJECT_CLASS (anjuta_project_proxy_node_parent_class)->finalize (object);
-}
-
-
-static void
-anjuta_project_proxy_node_class_init (AnjutaProjectProxyNodeClass *klass)
-{
-	GObjectClass* object_class = G_OBJECT_CLASS (klass);
-	
-	object_class->finalize = anjuta_project_proxy_node_finalize;
-}
-
-
-/* Proxy node functions
- *---------------------------------------------------------------------------*/
-
-static void
-reparent_children (AnjutaProjectNode *node, gpointer data)
-{
-	node->parent = ANJUTA_PROJECT_NODE (data);
-}
-
-AnjutaProjectNode *
-anjuta_project_proxy_exchange (AnjutaProjectNode *proxy, AnjutaProjectNode *node)
-{
-	GTypeQuery node_type_info;
-	GTypeQuery base_type_info;
-	guint extra_size;
-	AnjutaProjectNode *other;
-	
-
-	/* Swap specific data */
-	g_type_query (G_TYPE_FROM_INSTANCE (node), &node_type_info);
-	g_type_query (ANJUTA_TYPE_PROJECT_NODE, &base_type_info);
-
-	extra_size = node_type_info.instance_size - base_type_info.instance_size;
-	if (extra_size > 0)
-	{
-		gchar *data;
-
-		data = g_new (gchar , extra_size);
-		memcpy (data, ((gchar *)node) +  base_type_info.instance_size, extra_size);
-		memcpy (((gchar *)node) +  base_type_info.instance_size, ((gchar *)proxy) +  base_type_info.instance_size, extra_size);
-		memcpy (((gchar *)proxy) +  base_type_info.instance_size, data, extra_size);
-		g_free (data);
-	}
-
-	/* Exchange link */
-	other = proxy->children;
-	proxy->children = node->children;
-	node->children = other;
-	anjuta_project_node_children_foreach (proxy, reparent_children, proxy);
-	anjuta_project_node_children_foreach (node, reparent_children, node);
-	
-	/* Delete node temporary properties */
-	g_list_foreach (node->custom_properties, anjuta_project_property_free, NULL);
-	node->custom_properties = proxy->custom_properties;
-	proxy->custom_properties = NULL;
-	
-	return proxy;
-}
-
-AnjutaProjectNode *
-anjuta_project_proxy_get_node (AnjutaProjectNode *node)
-{
-	g_return_val_if_fail (node != NULL, FALSE);
-
-	if (ANJUTA_PROJECT_NODE (node)->type & ANJUTA_PROJECT_PROXY)
-	{
-		return ANJUTA_PROJECT_PROXY_NODE (node)->node;
-	}
-	else
-	{
-		return node;
-	}
-}
-
-gboolean
-anjuta_project_node_is_proxy (AnjutaProjectNode *node)
-{
-	g_return_val_if_fail (node != NULL, FALSE);
-
-	return NODE_DATA (node)->type & ANJUTA_PROJECT_PROXY ? TRUE : FALSE;
-}
diff --git a/libanjuta/anjuta-project.h b/libanjuta/anjuta-project.h
index 5890faf..6c67078 100644
--- a/libanjuta/anjuta-project.h
+++ b/libanjuta/anjuta-project.h
@@ -231,7 +231,7 @@ AnjutaProjectProperty *anjuta_project_node_remove_property (AnjutaProjectNode *n
 AnjutaProjectProperty *anjuta_project_property_new (const gchar *name, AnjutaProjectValueType type, const gchar *value, AnjutaProjectProperty *native);
 AnjutaProjectProperty * anjuta_project_property_copy (AnjutaProjectProperty *prop);
 void anjuta_project_property_free (AnjutaProjectProperty *prop);
-GType anjuta_project_property_get_type ();
+GType anjuta_project_property_get_type (void);
 
 
 //const gchar *anjuta_project_node_get_property_value (AnjutaProjectNode *node, AnjutaProjectProperty prop);
@@ -251,20 +251,11 @@ GFile *anjuta_project_source_get_file (const AnjutaProjectNode *source);
 AnjutaProjectNodeInfo *anjuta_project_node_info_new (AnjutaProjectNodeType type, const gchar *name, const gchar *mime_type);
 AnjutaProjectNodeInfo *anjuta_project_node_info_copy (AnjutaProjectNodeInfo *info);
 void anjuta_project_node_info_free (AnjutaProjectNodeInfo *info);
-GType anjuta_project_node_info_get_type ();
+GType anjuta_project_node_info_get_type (void);
 const gchar *anjuta_project_node_info_name (const AnjutaProjectNodeInfo *info);
 const gchar *anjuta_project_node_info_mime (const AnjutaProjectNodeInfo *info);
 AnjutaProjectNodeType anjuta_project_node_info_type (const AnjutaProjectNodeInfo *info);
 
-
-
-AnjutaProjectNode *anjuta_project_proxy_new (AnjutaProjectNode *node);
-AnjutaProjectNode *anjuta_project_proxy_unref (AnjutaProjectNode *node);
-AnjutaProjectNode *anjuta_project_proxy_exchange (AnjutaProjectNode *proxy, AnjutaProjectNode *node);
-AnjutaProjectNode *anjuta_project_proxy_get_node (AnjutaProjectNode *proxy);
-
-gboolean anjuta_project_node_is_proxy (AnjutaProjectNode *node);
-
 G_END_DECLS
 
 #endif
diff --git a/libanjuta/anjuta-token-file.c b/libanjuta/anjuta-token-file.c
index 6e26c11..045cb8f 100644
--- a/libanjuta/anjuta-token-file.c
+++ b/libanjuta/anjuta-token-file.c
@@ -231,7 +231,6 @@ remove_raw_token (AnjutaToken *token, gpointer user_data)
 static AnjutaToken *
 anjuta_token_file_remove_token (AnjutaTokenFile *file, AnjutaToken *token)
 {
-	AnjutaToken *last;
 	AnjutaToken *next = NULL;
 
 	if (token != NULL) next = anjuta_token_foreach_post_order (token, remove_raw_token, file);
diff --git a/libanjuta/anjuta-token-list.c b/libanjuta/anjuta-token-list.c
index 2d2fc00..ec72579 100644
--- a/libanjuta/anjuta-token-list.c
+++ b/libanjuta/anjuta-token-list.c
@@ -46,20 +46,22 @@ struct _AnjutaTokenStyle
 /* Private functions
  *---------------------------------------------------------------------------*/
 
-void free_separator (AnjutaTokenStyleSeparator *sep, gpointer user_data)
+static void
+free_separator (AnjutaTokenStyleSeparator *sep, gpointer user_data)
 {
 	g_free (sep->value);
 	g_slice_free (AnjutaTokenStyleSeparator, sep);
 }
 
-void free_separator_list (guint key, GList *value, gpointer user_data)
+static void
+free_separator_list (guint key, GList *value, gpointer user_data)
 {
 	/* Free list elements */
 	g_list_foreach (value, (GFunc)free_separator, NULL);
 	g_list_free (value);
 }
 
-AnjutaTokenStyleSeparator*
+static AnjutaTokenStyleSeparator*
 anjuta_token_style_insert_separator (AnjutaTokenStyle *style, guint key, const gchar *value)
 {
 	GList *list;
@@ -137,7 +139,7 @@ anjuta_token_style_insert_separator (AnjutaTokenStyle *style, guint key, const g
 	}
 }
 
-AnjutaTokenStyleSeparator*
+static AnjutaTokenStyleSeparator*
 anjuta_token_style_insert_separator_between (AnjutaTokenStyle *style, gint next, gint prev, const gchar *value)
 {
 	return anjuta_token_style_insert_separator (style, ((guint)prev & 0xFFFF) | (((guint)next & 0xFFFF) << 16), value);
diff --git a/libanjuta/anjuta-token.c b/libanjuta/anjuta-token.c
index a1cda97..b11cd9a 100644
--- a/libanjuta/anjuta-token.c
+++ b/libanjuta/anjuta-token.c
@@ -135,33 +135,6 @@ struct _AnjutaToken
  *---------------------------------------------------------------------------*/
 
 static AnjutaToken *
-anjuta_token_next2 (AnjutaToken *token) 
-{
-	AnjutaToken *last = token;
-	AnjutaToken *next;
-
-	while (last != NULL)
-	{
-		next = last->next;
-		if (next == NULL)
-		{
-			last = last->parent;
-			if (last != NULL)
-			{
-				for (; last->last != NULL; last = last->last);
-			}
-		}
-		else
-		{
-			for (; next->children != NULL; next = next->children);
-			break;
-		}
-	}
-	
-	return next;
-} 
- 
-static AnjutaToken *
 anjuta_token_next_child (AnjutaToken *child, AnjutaToken **last)
 {
 	if (child == NULL) return child;
@@ -208,26 +181,6 @@ anjuta_token_next_after_children (AnjutaToken *token)
 }
 
 static AnjutaToken *
-anjuta_token_next_item_after_children (AnjutaToken *parent)
-{
-	AnjutaToken *token;
-	AnjutaToken *last;
-	
-	for (last = parent; last->last != NULL; last = last->last);
-
-	for (token = last; token->parent != NULL; token = token->parent)
-	{
-		if (token->parent == parent)
-		{
-			return anjuta_token_next_after_children (parent);
-		}
-	}
-	
-	return anjuta_token_next_after_children (last);
-}
-
-
-AnjutaToken *
 anjuta_token_copy (AnjutaToken *token)
 {
 	AnjutaToken *copy = NULL;
@@ -583,12 +536,6 @@ anjuta_token_list (AnjutaToken *token)
 	return token->group;
 }
 
-AnjutaToken *
-anjuta_token_parent_group (AnjutaToken *token)
-{
-	return token->group;
-}
-
 /* Item move functions
  *---------------------------------------------------------------------------*/
 
diff --git a/plugins/am-project/ac-writer.c b/plugins/am-project/ac-writer.c
index ef2ddb4..e45bd0c 100644
--- a/plugins/am-project/ac-writer.c
+++ b/plugins/am-project/ac-writer.c
@@ -265,11 +265,10 @@ amp_module_create_token (AmpProject  *project, AnjutaAmModuleNode *module, GErro
 	AnjutaToken *token;
 	AnjutaToken *prev;
 	AnjutaProjectNode *sibling;
-	gchar *relative_name;
 
 	/* Get root node */
 	root = ANJUTA_AM_ROOT_NODE (anjuta_project_node_parent (ANJUTA_PROJECT_NODE (module)));
-	if ((root == NULL) || (anjuta_project_node_get_node_type (root) != ANJUTA_PROJECT_ROOT)) return FALSE;
+	if ((root == NULL) || (anjuta_project_node_get_node_type (ANJUTA_PROJECT_NODE (root)) != ANJUTA_PROJECT_ROOT)) return FALSE;
 
 	
 	/* Add in configure.ac */
@@ -340,17 +339,16 @@ amp_package_create_token (AmpProject  *project, AnjutaAmPackageNode *package, GE
 	gboolean after;
 	AnjutaToken *token;
 	AnjutaToken *prev;
-	AnjutaProjectNode *sibling;
 	AnjutaToken *args;
 
 
 	/* Get parent module */
 	module = ANJUTA_AM_MODULE_NODE (anjuta_project_node_parent (ANJUTA_PROJECT_NODE (package)));
-	if ((module == NULL) || (anjuta_project_node_get_node_type (module) != ANJUTA_PROJECT_MODULE)) return FALSE;
+	if ((module == NULL) || (anjuta_project_node_get_node_type (ANJUTA_PROJECT_NODE (module)) != ANJUTA_PROJECT_MODULE)) return FALSE;
 
 	/* Get root node */
 	root = ANJUTA_AM_ROOT_NODE (anjuta_project_node_parent (ANJUTA_PROJECT_NODE (module)));
-	if ((root == NULL) || (anjuta_project_node_get_node_type (root) != ANJUTA_PROJECT_ROOT)) return FALSE;
+	if ((root == NULL) || (anjuta_project_node_get_node_type (ANJUTA_PROJECT_NODE (root)) != ANJUTA_PROJECT_ROOT)) return FALSE;
 
 
 	/* Add in configure.ac */
diff --git a/plugins/am-project/am-node.c b/plugins/am-project/am-node.c
index 0fd28ac..cfb89ba 100644
--- a/plugins/am-project/am-node.c
+++ b/plugins/am-project/am-node.c
@@ -171,18 +171,6 @@ tagged_token_list_free (GList *list)
 /* Variable object
  *---------------------------------------------------------------------------*/
 
-static const gchar *
-amp_variable_get_name (AmpVariable *variable)
-{
-	return variable->name;
-}
-
-static gchar *
-amp_variable_evaluate (AmpVariable *variable)
-{
-	return anjuta_token_evaluate (variable->value);
-}
-
 AmpVariable*
 amp_variable_new (gchar *name, AnjutaTokenType assign, AnjutaToken *value)
 {
@@ -212,7 +200,7 @@ amp_variable_free (AmpVariable *variable)
 /* Root objects
  *---------------------------------------------------------------------------*/
 
-AnjutaProjectNode*
+AnjutaAmRootNode*
 amp_root_new (GFile *file, GError **error)
 {
 	AnjutaAmRootNode *root = NULL;
@@ -228,7 +216,7 @@ amp_root_new (GFile *file, GError **error)
 						ANJUTA_PROJECT_CAN_SAVE;
 	
 
-	return ANJUTA_PROJECT_NODE (root);
+	return root;
 }
 
 void
@@ -249,10 +237,8 @@ amp_root_clear (AnjutaAmRootNode *node)
 }
 
 AnjutaTokenFile*
-amp_root_set_configure (AnjutaProjectNode *node, GFile *configure)
+amp_root_set_configure (AnjutaAmRootNode *root, GFile *configure)
 {
-    AnjutaAmRootNode *root = ANJUTA_AM_ROOT_NODE (node);
-
 	if (root->configure_file != NULL) anjuta_token_file_free (root->configure_file);
 	root->configure_file = anjuta_token_file_new (configure);
 
@@ -327,7 +313,7 @@ amp_module_get_token (AnjutaAmModuleNode *node)
 	return node->module;
 }
 
-AnjutaProjectNode*
+AnjutaAmModuleNode*
 amp_module_new (const gchar *name, GError **error)
 {
 	AnjutaAmModuleNode *module = NULL;
@@ -342,7 +328,7 @@ amp_module_new (const gchar *name, GError **error)
 						ANJUTA_PROJECT_CAN_REMOVE;
 	module->module = NULL;
 
-	return ANJUTA_PROJECT_NODE (module);
+	return module;
 }
 
 void
@@ -392,7 +378,7 @@ anjuta_am_module_node_class_init (AnjutaAmModuleNodeClass *klass)
 /* Package objects
  *---------------------------------------------------------------------------*/
 
-AnjutaProjectNode*
+AnjutaAmPackageNode*
 amp_package_new (const gchar *name, GError **error)
 {
 	AnjutaAmPackageNode *node = NULL;
@@ -406,7 +392,7 @@ amp_package_new (const gchar *name, GError **error)
 	node->base.state =  ANJUTA_PROJECT_CAN_REMOVE;
 	node->version = NULL;
 
-	return ANJUTA_PROJECT_NODE (node);
+	return node;
 }
 
 void
diff --git a/plugins/am-project/am-node.h b/plugins/am-project/am-node.h
index df45166..97fe787 100644
--- a/plugins/am-project/am-node.h
+++ b/plugins/am-project/am-node.h
@@ -44,19 +44,19 @@ struct _AmpVariable {
 AmpVariable* amp_variable_new (gchar *name, AnjutaTokenType assign, AnjutaToken *value);
 
 
-AnjutaProjectNode* amp_root_new (GFile *file, GError **error);
+AnjutaAmRootNode* amp_root_new (GFile *file, GError **error);
 void amp_root_free (AnjutaAmRootNode *node);
 void amp_root_clear (AnjutaAmRootNode *node);
-AnjutaTokenFile* amp_root_set_configure (AnjutaProjectNode *node, GFile *configure);
+AnjutaTokenFile* amp_root_set_configure (AnjutaAmRootNode *node, GFile *configure);
 gboolean amp_root_update_configure (AnjutaAmRootNode *group, AnjutaToken *token);
 AnjutaToken* amp_root_get_configure_token (AnjutaAmRootNode *root);
 
-AnjutaProjectNode* amp_module_new (const gchar *name, GError **error);
+AnjutaAmModuleNode* amp_module_new (const gchar *name, GError **error);
 void amp_module_free (AnjutaAmModuleNode *node);
 AnjutaToken *amp_module_get_token (AnjutaAmModuleNode *node);
 void amp_module_add_token (AnjutaAmModuleNode *group, AnjutaToken *token);
 
-AnjutaProjectNode* amp_package_new (const gchar *name, GError **error);
+AnjutaAmPackageNode* amp_package_new (const gchar *name, GError **error);
 void amp_package_free (AnjutaAmPackageNode *node);
 void amp_package_set_version (AnjutaAmPackageNode *node, const gchar *compare, const gchar *version);
 AnjutaToken *amp_package_get_token (AnjutaAmPackageNode *node);
diff --git a/plugins/am-project/am-project-private.h b/plugins/am-project/am-project-private.h
index 260008c..92f9c17 100644
--- a/plugins/am-project/am-project-private.h
+++ b/plugins/am-project/am-project-private.h
@@ -53,11 +53,6 @@ struct _AmpProject {
 	GList				*properties;
 	AnjutaToken			*ac_init;
 	AnjutaToken			*args;
-	
-	AnjutaAmGroupNode              *root_node;         	/* tree containing project data;
-								 * each GNode's data is a
-								 * AmpNode, and the root of
-								 * the tree is the root group. */
 
 	/* shortcut hash tables, mapping id -> GNode from the tree above */
 	GHashTable		*groups;
diff --git a/plugins/am-project/am-project.c b/plugins/am-project/am-project.c
index e0c95e5..929b619 100644
--- a/plugins/am-project/am-project.c
+++ b/plugins/am-project/am-project.c
@@ -532,35 +532,6 @@ find_canonical_target (AnjutaProjectNode *node, gpointer data)
  *---------------------------------------------------------------------------*/
 
 /*
- * File monitoring support --------------------------------
- * FIXME: review these
- */
-static void
-monitor_cb (GFileMonitor *monitor,
-			GFile *file,
-			GFile *other_file,
-			GFileMonitorEvent event_type,
-			gpointer data)
-{
-	AmpProject *project = data;
-
-	g_return_if_fail (project != NULL && AMP_IS_PROJECT (project));
-
-	switch (event_type) {
-		case G_FILE_MONITOR_EVENT_CHANGED:
-		case G_FILE_MONITOR_EVENT_DELETED:
-			/* monitor will be removed here... is this safe? */
-			//amp_project_reload (project, NULL);
-			g_message ("project updated");
-			g_signal_emit_by_name (G_OBJECT (project), "file-changed");
-			break;
-		default:
-			break;
-	}
-}
-
-
-/*
  * ---------------- Data structures managment
  */
 
@@ -593,28 +564,24 @@ static void
 foreach_node_destroy (AnjutaProjectNode    *g_node,
 		      gpointer  data)
 {
-	AmpProject *project = (AmpProject *)data;
-	
 	switch (AMP_NODE_DATA (g_node)->type & ANJUTA_PROJECT_TYPE_MASK) {
 		case ANJUTA_PROJECT_GROUP:
-			//g_hash_table_remove (project->groups, g_file_get_uri (AMP_GROUP_NODE (g_node)->file));
-			amp_group_free (g_node);
+			amp_group_free ((AnjutaAmGroupNode *)g_node);
 			break;
 		case ANJUTA_PROJECT_TARGET:
-			amp_target_free (g_node);
+			amp_target_free ((AnjutaAmTargetNode *)g_node);
 			break;
 		case ANJUTA_PROJECT_SOURCE:
-			//g_hash_table_remove (project->sources, AMP_NODE (g_node)->id);
-			amp_source_free (g_node);
+			amp_source_free ((AnjutaAmSourceNode *)g_node);
 			break;
 		case ANJUTA_PROJECT_MODULE:
-			amp_module_free (g_node);
+			amp_module_free ((AnjutaAmModuleNode *)g_node);
 			break;
 		case ANJUTA_PROJECT_PACKAGE:
-			amp_package_free (g_node);
+			amp_package_free ((AnjutaAmPackageNode *)g_node);
 			break;
 		case ANJUTA_PROJECT_ROOT:
-			amp_root_clear (g_node);
+			amp_root_clear ((AnjutaAmRootNode *)g_node);
 			break;
 		default:
 			g_assert_not_reached ();
@@ -648,7 +615,7 @@ project_node_new (AmpProject *project, AnjutaProjectNodeType type, GFile *file,
 	
 	switch (type & ANJUTA_PROJECT_TYPE_MASK) {
 		case ANJUTA_PROJECT_GROUP:
-			node = amp_group_new (file, FALSE, error);
+			node = ANJUTA_PROJECT_NODE (amp_group_new (file, FALSE, error));
 			break;
 		case ANJUTA_PROJECT_TARGET:
 			node = ANJUTA_PROJECT_NODE (amp_target_new (name, 0, NULL, 0, error));
@@ -662,17 +629,17 @@ project_node_new (AmpProject *project, AnjutaProjectNodeType type, GFile *file,
 			}
 			else
 			{
-				node = amp_source_new (file, error);
+				node = ANJUTA_PROJECT_NODE (amp_source_new (file, error));
 			}
 			break;
 		case ANJUTA_PROJECT_MODULE:
-			node = amp_module_new (name, error);
+			node = ANJUTA_PROJECT_NODE (amp_module_new (name, error));
 			break;
 		case ANJUTA_PROJECT_PACKAGE:
-			node = amp_package_new (name, error);
+			node = ANJUTA_PROJECT_NODE (amp_package_new (name, error));
 			break;
 		case ANJUTA_PROJECT_ROOT:
-			node = amp_root_new (file, error);
+			node = ANJUTA_PROJECT_NODE (amp_root_new (file, error));
 			break;
 		default:
 			g_assert_not_reached ();
@@ -687,7 +654,7 @@ project_node_new (AmpProject *project, AnjutaProjectNodeType type, GFile *file,
  * a file node is found and save it. The node returned correspond to the
  * file node */
 static AnjutaProjectNode *
-project_node_save (AmpProject *project, AnjutaProjectNode *g_node, GError **error)
+project_node_save (AmpProject *project, AnjutaProjectNode *node, GError **error)
 {
 	GHashTableIter iter;
 	GHashTable *files;
@@ -701,14 +668,14 @@ project_node_save (AmpProject *project, AnjutaProjectNode *g_node, GError **erro
 	 * avoid duplicate, not sure if it is really necessary */
 	files = 	g_hash_table_new_full (g_direct_hash, g_direct_equal, NULL, NULL);
 	
-	switch (AMP_NODE_DATA (g_node)->type & ANJUTA_PROJECT_TYPE_MASK) {
+	switch (AMP_NODE_DATA (node)->type & ANJUTA_PROJECT_TYPE_MASK) {
 		case ANJUTA_PROJECT_GROUP:
-			g_hash_table_insert (files, AMP_GROUP_DATA (g_node)->tfile, NULL);
+			g_hash_table_insert (files, AMP_GROUP_DATA (node)->tfile, NULL);
 			g_hash_table_insert (files, AMP_ROOT_DATA (project->root)->configure_file, NULL);
 			break;
 		case ANJUTA_PROJECT_TARGET:
 		case ANJUTA_PROJECT_SOURCE:
-			for (parent = g_node; anjuta_project_node_get_node_type (parent) != ANJUTA_PROJECT_GROUP; parent = anjuta_project_node_parent (parent));
+			for (parent = node; anjuta_project_node_get_node_type (parent) != ANJUTA_PROJECT_GROUP; parent = anjuta_project_node_parent (parent));
 			g_hash_table_insert (files, AMP_GROUP_DATA (parent)->tfile, NULL);
 			break;
 		case ANJUTA_PROJECT_MODULE:
@@ -739,6 +706,8 @@ project_node_save (AmpProject *project, AnjutaProjectNode *g_node, GError **erro
 
 		anjuta_token_file_save (tfile, &error);
 	}
+
+	return node;
 }
 
 void
@@ -761,7 +730,7 @@ amp_project_load_properties (AmpProject *project, AnjutaToken *macro, AnjutaToke
 			AnjutaProjectProperty *new_prop;
 			AnjutaToken *arg;
 
-			new_prop = anjuta_project_node_remove_property (project->root, prop);
+			new_prop = anjuta_project_node_remove_property (project->root, (AnjutaProjectProperty *)prop);
 			if (new_prop != NULL)
 			{
 				amp_property_free (new_prop);
@@ -773,7 +742,7 @@ amp_project_load_properties (AmpProject *project, AnjutaToken *macro, AnjutaToke
 				g_free (new_prop->value);
 			}
 			new_prop->value = anjuta_token_evaluate (arg);
-			anjuta_project_node_insert_property (project->root, prop, new_prop);
+			anjuta_project_node_insert_property (project->root, (AnjutaProjectProperty *)prop, new_prop);
 		}
 	}
 	//g_message ("prop list %p get prop %p", *list, anjuta_project_node_get_property (project->root);
@@ -800,7 +769,7 @@ amp_project_load_module (AmpProject *project, AnjutaToken *module_token)
 		value = anjuta_token_evaluate (arg);
 		module = amp_module_new (value, NULL);
 		amp_module_add_token (module, module_token);
-		anjuta_project_node_append (project->root, module);
+		anjuta_project_node_append (project->root, ANJUTA_PROJECT_NODE (module));
 		if (value != NULL) g_hash_table_insert (project->modules, value, module);
 
 		/* Package list */
@@ -843,8 +812,8 @@ amp_project_load_module (AmpProject *project, AnjutaToken *module_token)
 			{
 				package = amp_package_new (value, NULL);
 				amp_package_add_token (package, item);
-				anjuta_project_node_append (module, package);
-				anjuta_project_node_set_state ((AnjutaProjectNode *)package, ANJUTA_PROJECT_INCOMPLETE);
+				anjuta_project_node_append (ANJUTA_PROJECT_NODE (module), ANJUTA_PROJECT_NODE (package));
+				anjuta_project_node_set_state (ANJUTA_PROJECT_NODE (package), ANJUTA_PROJECT_INCOMPLETE);
 				g_free (value);
 				compare = NULL;
 			}
@@ -910,7 +879,7 @@ project_load_target (AmpProject *project, AnjutaToken *name, AnjutaTokenType tok
 	value = anjuta_token_evaluate (name);
 	split_automake_variable (value, &flags, &install, NULL);
 
-	amp_group_add_token (parent, name, AM_GROUP_TARGET);
+	amp_group_add_token (ANJUTA_AM_GROUP_NODE (parent), name, AM_GROUP_TARGET);
 
 	//fprintf (stderr, "load_target list %p word %p next %p\n", list, anjuta_token_first_word (list), anjuta_token_next_word (anjuta_token_first_word (list)));
 	for (arg = anjuta_token_first_word (list); arg != NULL; arg = anjuta_token_next_word (arg))
@@ -946,7 +915,7 @@ project_load_target (AmpProject *project, AnjutaToken *name, AnjutaTokenType tok
 		if (target != NULL)
 		{
 			amp_target_add_token (target, ANJUTA_TOKEN_ARGUMENT, arg);
-			anjuta_project_node_append (parent, target);
+			anjuta_project_node_append (parent, ANJUTA_PROJECT_NODE (target));
 			DEBUG_PRINT ("create target %p name %s", target, value);
 
 			/* Check if there are sources or properties availables */
@@ -975,18 +944,18 @@ project_load_target (AmpProject *project, AnjutaToken *name, AnjutaTokenType tok
 				/* Copy all properties */
 				while ((properties = anjuta_project_node_get_custom_properties (ANJUTA_PROJECT_NODE (orphan))) != NULL)
 				{
-					AmpProperty *prop;
+					AnjutaProjectProperty *prop;
 					
-					prop = (AmpProperty *)anjuta_project_node_remove_property (ANJUTA_PROJECT_NODE (orphan), (AnjutaProjectProperty *)properties->data);
+					prop = (AnjutaProjectProperty *)anjuta_project_node_remove_property (ANJUTA_PROJECT_NODE (orphan), (AnjutaProjectProperty *)properties->data);
 					
-					amp_node_property_add (target, prop);
+					amp_node_property_add (ANJUTA_PROJECT_NODE (target), prop);
 				}
 
 				/* Copy all sources */
 				while ((child = anjuta_project_node_first_child (ANJUTA_PROJECT_NODE (orphan))) != NULL)
 				{
 					anjuta_project_node_remove (child);
-					anjuta_project_node_append (target, child);
+					anjuta_project_node_append (ANJUTA_PROJECT_NODE (target), child);
 					g_object_unref (child);
 				}
 				g_free (orig_key);
@@ -995,32 +964,32 @@ project_load_target (AmpProject *project, AnjutaToken *name, AnjutaTokenType tok
 
 			/* Set target properties */
 			if (flags & AM_TARGET_NOBASE) 
-				amp_node_property_load (target, AM_TOKEN__PROGRAMS, 0, "1", arg);
+				amp_node_property_load (ANJUTA_PROJECT_NODE (target), AM_TOKEN__PROGRAMS, 0, "1", arg);
 			if (flags & AM_TARGET_NOTRANS) 
-				amp_node_property_load (target, AM_TOKEN__PROGRAMS, 1, "1", arg);
+				amp_node_property_load (ANJUTA_PROJECT_NODE (target), AM_TOKEN__PROGRAMS, 1, "1", arg);
 			if (flags & AM_TARGET_DIST) 
-				amp_node_property_load (target, AM_TOKEN__PROGRAMS, 2, "1", arg);
+				amp_node_property_load (ANJUTA_PROJECT_NODE (target), AM_TOKEN__PROGRAMS, 2, "1", arg);
 			if (flags & AM_TARGET_NODIST) 
-				amp_node_property_load (target, AM_TOKEN__PROGRAMS, 2, "0", arg);
+				amp_node_property_load (ANJUTA_PROJECT_NODE (target), AM_TOKEN__PROGRAMS, 2, "0", arg);
 			if (flags & AM_TARGET_NOINST) 
 			{
-				amp_node_property_load (target, AM_TOKEN__PROGRAMS, 3, "1", arg);
+				amp_node_property_load (ANJUTA_PROJECT_NODE (target), AM_TOKEN__PROGRAMS, 3, "1", arg);
 			}
 			else
 			{
 				gchar *instdir = g_strconcat ("$(", install, "dir)", NULL);
-				amp_node_property_load (target, AM_TOKEN__PROGRAMS, 6, instdir, arg);
+				amp_node_property_load (ANJUTA_PROJECT_NODE (target), AM_TOKEN__PROGRAMS, 6, instdir, arg);
 				g_free (instdir);
 			}
 		
 			if (flags & AM_TARGET_CHECK) 
-				amp_node_property_load (target, AM_TOKEN__PROGRAMS, 4, "1", arg);
+				amp_node_property_load (ANJUTA_PROJECT_NODE (target), AM_TOKEN__PROGRAMS, 4, "1", arg);
 			if (flags & AM_TARGET_MAN)
 			{
 				gchar section[] = "0";
 
 				section[0] += (flags >> 7) & 0x1F;
-				amp_node_property_load (target, AM_TOKEN__PROGRAMS, 4, section, arg);
+				amp_node_property_load (ANJUTA_PROJECT_NODE (target), AM_TOKEN__PROGRAMS, 4, section, arg);
 			}
 		}
 		
@@ -1070,7 +1039,7 @@ project_load_sources (AmpProject *project, AnjutaToken *name, AnjutaToken *list,
 			}
 			else
 			{
-				parent = amp_target_new ("dummy", 0, NULL, 0, NULL);
+				parent = ANJUTA_PROJECT_NODE (amp_target_new ("dummy", 0, NULL, 0, NULL));
 			}
 			g_hash_table_insert (orphan_properties, target_id, parent);
 		}
@@ -1078,12 +1047,12 @@ project_load_sources (AmpProject *project, AnjutaToken *name, AnjutaToken *list,
 		{
 			g_free (target_id);
 		}
-		amp_target_add_token (parent, AM_TOKEN__SOURCES, name);
+		amp_target_add_token (ANJUTA_AM_TARGET_NODE (parent), AM_TOKEN__SOURCES, name);
 		
 		for (arg = anjuta_token_first_word (list); arg != NULL; arg = anjuta_token_next_word (arg))
 		{
 			gchar *value;
-			AnjutaAmSourceNode *source;
+			AnjutaProjectNode *source;
 			GFile *src_file;
 		
 			value = anjuta_token_evaluate (arg);
@@ -1139,7 +1108,7 @@ project_load_data (AmpProject *project, AnjutaToken *name, AnjutaToken *list, An
 		}
 	}*/
 	
-	amp_group_add_token (parent, name, AM_GROUP_TARGET);
+	amp_group_add_token (ANJUTA_AM_GROUP_NODE (parent), name, AM_GROUP_TARGET);
 
 	/* Check if target already exists */
 	find = target_id;
@@ -1148,12 +1117,12 @@ project_load_data (AmpProject *project, AnjutaToken *name, AnjutaToken *list, An
 	{
 		/* Create target */
 		target = amp_target_new (target_id, info->base.type, install, flags, NULL);
-		anjuta_project_node_append (parent, target);
+		anjuta_project_node_append (parent, ANJUTA_PROJECT_NODE (target));
 		DEBUG_PRINT ("create target %p name %s", target, target_id);
 	}
 	else
 	{
-		target = (AnjutaProjectNode *)find;
+		target = ANJUTA_AM_TARGET_NODE (find);
 	}
 	g_free (target_id);
 
@@ -1164,7 +1133,7 @@ project_load_data (AmpProject *project, AnjutaToken *name, AnjutaToken *list, An
 		for (arg = anjuta_token_first_word (list); arg != NULL; arg = anjuta_token_next_word (arg))
 		{
 			gchar *value;
-			AnjutaAmSourceNode *source;
+			AnjutaProjectNode *source;
 			GFile *src_file;
 		
 			value = anjuta_token_evaluate (arg);
@@ -1178,7 +1147,7 @@ project_load_data (AmpProject *project, AnjutaToken *name, AnjutaToken *list, An
 
 			/* Add as target child */
 			DEBUG_PRINT ("add target child %p", target);
-			anjuta_project_node_append (target, source);
+			anjuta_project_node_append (ANJUTA_PROJECT_NODE (target), source);
 
 			g_free (value);
 		}
@@ -1232,7 +1201,7 @@ project_load_target_properties (AmpProject *project, AnjutaToken *name, AnjutaTo
 			else
 			{
 				/* Create dummy target */
-				parent = amp_target_new ("dummy", 0, NULL, 0, NULL);
+				parent = ANJUTA_PROJECT_NODE (amp_target_new ("dummy", 0, NULL, 0, NULL));
 			}
 			g_hash_table_insert (orphan_properties, target_id, parent);
 		}
@@ -1244,7 +1213,7 @@ project_load_target_properties (AmpProject *project, AnjutaToken *name, AnjutaTo
 
 		/* Add property to target */
 		amp_node_property_add (parent, prop);
-		amp_target_add_token (parent, type, name);
+		amp_target_add_token (ANJUTA_AM_TARGET_NODE (parent), type, name);
 	}
 
 	return NULL;
@@ -1288,7 +1257,7 @@ find_group (AnjutaProjectNode *node, gpointer data)
 }
 
 static void
-project_load_subdirs (AmpProject *project, AnjutaToken *list, AnjutaAmGroupNode *parent, gboolean dist_only)
+project_load_subdirs (AmpProject *project, AnjutaToken *list, AnjutaProjectNode *parent, gboolean dist_only)
 {
 	AnjutaToken *arg;
 
@@ -1303,13 +1272,12 @@ project_load_subdirs (AmpProject *project, AnjutaToken *list, AnjutaAmGroupNode
 		if (strcmp (value, ".") != 0)
 		{
 			GFile *subdir;
-			gchar *group_id;
 			AnjutaAmGroupNode *group;
 
 			subdir = g_file_resolve_relative_path (AMP_GROUP_DATA (parent)->base.file, value);
 			
 			/* Look for already existing group */
-			group =anjuta_project_node_children_traverse (parent, find_group, subdir);
+			group = ANJUTA_AM_GROUP_NODE (anjuta_project_node_children_traverse (parent, find_group, subdir));
 
 			if (group != NULL)
 			{
@@ -1321,7 +1289,7 @@ project_load_subdirs (AmpProject *project, AnjutaToken *list, AnjutaAmGroupNode
 				/* Create new group */
 				group = amp_group_new (subdir, dist_only, NULL);
 				g_hash_table_insert (project->groups, g_file_get_uri (subdir), group);
-				anjuta_project_node_append (parent, group);
+				anjuta_project_node_append (parent, ANJUTA_PROJECT_NODE (group));
 				group = project_load_makefile (project, group);
 			}
 			amp_group_add_token (group, arg, dist_only ? AM_GROUP_TOKEN_DIST_SUBDIRS : AM_GROUP_TOKEN_SUBDIRS);
@@ -1376,7 +1344,7 @@ project_load_makefile (AmpProject *project, AnjutaAmGroupNode *group)
 
 	/* Parse makefile.am */
 	DEBUG_PRINT ("Parse: %s", g_file_get_uri (makefile));
-	tfile = amp_group_set_makefile (group, makefile, project);
+	tfile = amp_group_set_makefile (group, makefile, G_OBJECT (project));
 
 	
 	return group;
@@ -1388,13 +1356,13 @@ amp_project_set_am_variable (AmpProject* project, AnjutaAmGroupNode* group, Anju
 	switch (variable)
 	{
 	case AM_TOKEN_SUBDIRS:
-		project_load_subdirs (project, list, group, FALSE);
+		project_load_subdirs (project, list, ANJUTA_PROJECT_NODE (group), FALSE);
 		break;
 	case AM_TOKEN_DIST_SUBDIRS:
-		project_load_subdirs (project, list, group, TRUE);
+		project_load_subdirs (project, list, ANJUTA_PROJECT_NODE (group), TRUE);
 		break;
 	case AM_TOKEN__DATA:
-		project_load_data (project, name, list, group, orphan_properties);
+		project_load_data (project, name, list, ANJUTA_PROJECT_NODE (group), orphan_properties);
 		break;
 	case AM_TOKEN__HEADERS:
 	case AM_TOKEN__LIBRARIES:
@@ -1406,10 +1374,10 @@ amp_project_set_am_variable (AmpProject* project, AnjutaAmGroupNode* group, Anju
 	case AM_TOKEN__JAVA:
 	case AM_TOKEN__SCRIPTS:
 	case AM_TOKEN__TEXINFOS:
-		project_load_target (project, name, variable, list, group, orphan_properties);
+		project_load_target (project, name, variable, list, ANJUTA_PROJECT_NODE (group), orphan_properties);
 		break;
 	case AM_TOKEN__SOURCES:
-		project_load_sources (project, name, list, group, orphan_properties);
+		project_load_sources (project, name, list, ANJUTA_PROJECT_NODE (group), orphan_properties);
 		break;
 	case AM_TOKEN_DIR:
 	case AM_TOKEN__LDFLAGS:
@@ -1422,7 +1390,7 @@ amp_project_set_am_variable (AmpProject* project, AnjutaAmGroupNode* group, Anju
 	case AM_TOKEN__OBJCFLAGS:
 	case AM_TOKEN__LFLAGS:
 	case AM_TOKEN__YFLAGS:
-		project_load_group_properties (project, name, variable, list, group);
+		project_load_group_properties (project, name, variable, list, ANJUTA_PROJECT_NODE (group));
 		break;
 	case AM_TOKEN_TARGET_LDFLAGS:
 	case AM_TOKEN_TARGET_CPPFLAGS:
@@ -1437,7 +1405,7 @@ amp_project_set_am_variable (AmpProject* project, AnjutaAmGroupNode* group, Anju
 	case AM_TOKEN_TARGET_DEPENDENCIES:
 	case AM_TOKEN_TARGET_LIBADD:
 	case AM_TOKEN_TARGET_LDADD:
-		project_load_target_properties (project, name, variable, list, group, orphan_properties);
+		project_load_target_properties (project, name, variable, list, ANJUTA_PROJECT_NODE (group), orphan_properties);
 		break;
 	default:
 		break;
@@ -1548,7 +1516,7 @@ amp_project_replace_node (AnjutaProjectNode *new_node, AnjutaProjectNode *old_no
 			/* Update file monitor if it is a group */
 			if (anjuta_project_node_get_node_type (old_node) == ANJUTA_PROJECT_GROUP)
 			{
-				amp_group_update_monitor (old_node);
+				amp_group_update_monitor (ANJUTA_AM_GROUP_NODE (old_node));
 			}
 
 			/* Get old file */
@@ -1583,7 +1551,6 @@ amp_project_duplicate_node (AnjutaProjectNode *old_node)
 {
 	AnjutaProjectNode *new_node;
 	GTypeQuery type_info;
-	gchar *data;
 
 	/* Create new node */
 	new_node = g_object_new (G_TYPE_FROM_INSTANCE (old_node), NULL);
@@ -1625,7 +1592,6 @@ amp_project_load_root (AmpProject *project, GError **error)
 	GFile *root_file;
 	GFile *configure_file;
 	AnjutaTokenFile *configure_token_file;
-	gboolean ok = TRUE;
 	GError *err = NULL;
 
 	/* Unload current project */
@@ -1664,7 +1630,7 @@ amp_project_load_root (AmpProject *project, GError **error)
 	}
 
 	/* Parse configure */
-	configure_token_file = amp_root_set_configure (project->root, configure_file);
+	configure_token_file = amp_root_set_configure (ANJUTA_AM_ROOT_NODE (project->root), configure_file);
 	g_hash_table_insert (project->files, configure_file, configure_token_file);
 	g_object_add_toggle_ref (G_OBJECT (configure_token_file), remove_config_file, project);
 	arg = anjuta_token_file_load (configure_token_file, NULL);
@@ -1690,7 +1656,7 @@ amp_project_load_root (AmpProject *project, GError **error)
 	/* Load all makefiles recursively */
 	group = amp_group_new (root_file, FALSE, NULL);
 	g_hash_table_insert (project->groups, g_file_get_uri (root_file), group);
-	anjuta_project_node_append (project->root, group);
+	anjuta_project_node_append (project->root, ANJUTA_PROJECT_NODE (group));
 	
 	if (project_load_makefile (project, group) == NULL)
 	{
@@ -1777,7 +1743,7 @@ amp_project_load_package (AmpProject *project, AnjutaProjectNode *node, GError *
 					for (file = g_list_first (children); file != NULL; file = g_list_next (file))
 					{
 						/* Create a source for files */
-						AnjutaAmSourceNode *source;
+						AnjutaProjectNode *source;
 
 						source = project_node_new (project, ANJUTA_PROJECT_SOURCE, (GFile *)file->data, NULL, NULL);
 						anjuta_project_node_append (node, source);
@@ -1798,10 +1764,10 @@ amp_project_load_package (AmpProject *project, AnjutaProjectNode *node, GError *
 	return node;
 }
 
-static AnjutaProjectNode *
-amp_project_load_group (AmpProject *project, AnjutaProjectNode *node, GError **error)
+static AnjutaAmGroupNode *
+amp_project_load_group (AmpProject *project, AnjutaAmGroupNode *group, GError **error)
 {
-	if (project_load_makefile (project, node) == NULL)
+	if (project_load_makefile (project, group) == NULL)
 	{
 		g_set_error (error, IANJUTA_PROJECT_ERROR, 
 					IANJUTA_PROJECT_ERROR_DOESNT_EXIST,
@@ -1810,7 +1776,7 @@ amp_project_load_group (AmpProject *project, AnjutaProjectNode *node, GError **e
 		return NULL;
 	}
 
-	return node;
+	return group;
 }
 
 AnjutaProjectNode *
@@ -1829,7 +1795,7 @@ amp_project_load_node (AmpProject *project, AnjutaProjectNode *node, GError **er
 		loaded = amp_project_load_package (project, node, error);
 		break;
 	case ANJUTA_PROJECT_GROUP:
-		loaded = amp_project_load_group (project, node, error);
+		loaded = ANJUTA_PROJECT_NODE (amp_project_load_group (project, ANJUTA_AM_GROUP_NODE (node), error));
 		break;
 	default:
 		break;
@@ -1932,7 +1898,7 @@ amp_project_remove_group (AmpProject  *project,
 {
 	GList *token_list;
 
-	if (anjuta_project_node_get_node_type (group) != ANJUTA_PROJECT_GROUP) return;
+	if (anjuta_project_node_get_node_type (ANJUTA_PROJECT_NODE (group)) != ANJUTA_PROJECT_GROUP) return;
 	
 	for (token_list = amp_group_get_token (group, AM_GROUP_TOKEN_CONFIGURE); token_list != NULL; token_list = g_list_next (token_list))
 	{
@@ -1955,8 +1921,7 @@ amp_project_remove_source (AmpProject  *project,
 		    AnjutaAmSourceNode *source,
 		    GError     **error)
 {
-	amp_dump_node (source);
-	if (anjuta_project_node_get_node_type (source) != ANJUTA_PROJECT_SOURCE) return;
+	if (anjuta_project_node_get_node_type (ANJUTA_PROJECT_NODE (source)) != ANJUTA_PROJECT_SOURCE) return;
 	
 	anjuta_token_remove_word (AMP_SOURCE_DATA (source)->token);
 
@@ -2016,9 +1981,9 @@ static void
 foreach_node_move (AnjutaProjectNode *g_node, gpointer data)
 {
 	AmpProject *project = ((AmpMovePacket *)data)->project;
-	const gchar *old_root_file = ((AmpMovePacket *)data)->old_root_file;
+	GFile *old_root_file = ((AmpMovePacket *)data)->old_root_file;
 	GFile *root_file = anjuta_project_node_get_file (project->root);
-	GFile *relative;
+	gchar *relative;
 	GFile *new_file;
 	
 	switch (anjuta_project_node_get_node_type (g_node))
@@ -2145,7 +2110,7 @@ amp_project_new (GFile *file, GError **error)
 	AmpProject *project;
 	
 	project = AMP_PROJECT (g_object_new (AMP_TYPE_PROJECT, NULL));
-	project->root = amp_root_new (file, error);
+	project->root = ANJUTA_PROJECT_NODE (amp_root_new (file, error));
 
 	return project;
 }
@@ -2156,8 +2121,6 @@ amp_project_new (GFile *file, GError **error)
 AnjutaAmRootNode *
 amp_project_get_root (AmpProject *project)
 {
-	AnjutaAmRootNode *g_node = NULL;
-
 	return ANJUTA_AM_ROOT_NODE (project->root);
 }
 
@@ -2260,12 +2223,6 @@ amp_project_get_file (AmpProject *project)
 	return anjuta_project_node_get_file (project->root);
 }
 
-AnjutaProjectProperty *
-amp_project_get_property_list (AmpProject *project)
-{
-	return project->properties;
-}
-
 void
 amp_project_add_file (AmpProject *project, GFile *file, AnjutaTokenFile* token)
 {
@@ -2376,19 +2333,19 @@ amp_add_work (PmJob *job)
 	switch (anjuta_project_node_get_node_type (job->node))
 	{
 		case ANJUTA_PROJECT_GROUP:
-			amp_group_create_token (AMP_PROJECT (job->user_data), job->node, &job->error);
+			amp_group_create_token (AMP_PROJECT (job->user_data), ANJUTA_AM_GROUP_NODE (job->node), &job->error);
 			break;
 		case ANJUTA_PROJECT_TARGET:
-			amp_target_create_token (AMP_PROJECT (job->user_data), job->node, &job->error);
+			amp_target_create_token (AMP_PROJECT (job->user_data), ANJUTA_AM_TARGET_NODE (job->node), &job->error);
 			break;
 		case ANJUTA_PROJECT_SOURCE:
-			amp_source_create_token (AMP_PROJECT (job->user_data), job->node, &job->error);
+			amp_source_create_token (AMP_PROJECT (job->user_data), ANJUTA_AM_SOURCE_NODE (job->node), &job->error);
 			break;
 		case ANJUTA_PROJECT_MODULE:
-			amp_module_create_token (AMP_PROJECT (job->user_data), job->node, &job->error);
+			amp_module_create_token (AMP_PROJECT (job->user_data), ANJUTA_AM_MODULE_NODE (job->node), &job->error);
 			break;
 		case ANJUTA_PROJECT_PACKAGE:
-			amp_package_create_token (AMP_PROJECT (job->user_data), job->node, &job->error);
+			amp_package_create_token (AMP_PROJECT (job->user_data), ANJUTA_AM_PACKAGE_NODE (job->node), &job->error);
 			break;
 		default:
 			break;
@@ -2423,19 +2380,19 @@ amp_remove_work (PmJob *job)
 	switch (anjuta_project_node_get_node_type (job->node))
 	{
 		case ANJUTA_PROJECT_GROUP:
-			amp_group_delete_token (AMP_PROJECT (job->user_data), job->node, &job->error);
+			amp_group_delete_token (AMP_PROJECT (job->user_data), ANJUTA_AM_GROUP_NODE (job->node), &job->error);
 			break;
 		case ANJUTA_PROJECT_TARGET:
-			amp_target_delete_token (AMP_PROJECT (job->user_data), job->node, &job->error);
+			amp_target_delete_token (AMP_PROJECT (job->user_data), ANJUTA_AM_TARGET_NODE (job->node), &job->error);
 			break;
 		case ANJUTA_PROJECT_SOURCE:
-			amp_source_delete_token (AMP_PROJECT (job->user_data), job->node, &job->error);
+			amp_source_delete_token (AMP_PROJECT (job->user_data), ANJUTA_AM_SOURCE_NODE (job->node), &job->error);
 			break;
 		case ANJUTA_PROJECT_MODULE:
-			amp_module_delete_token (AMP_PROJECT (job->user_data), job->node, &job->error);
+			amp_module_delete_token (AMP_PROJECT (job->user_data), ANJUTA_AM_MODULE_NODE (job->node), &job->error);
 			break;
 		case ANJUTA_PROJECT_PACKAGE:
-			amp_package_delete_token (AMP_PROJECT (job->user_data), job->node, &job->error);
+			amp_package_delete_token (AMP_PROJECT (job->user_data), ANJUTA_AM_PACKAGE_NODE (job->node), &job->error);
 			break;
 		default:
 			break;
@@ -2503,19 +2460,19 @@ amp_remove_property_work (PmJob *job)
 	switch (anjuta_project_node_get_node_type (job->node))
 	{
 		case ANJUTA_PROJECT_GROUP:
-			amp_group_delete_token (AMP_PROJECT (job->user_data), job->node, &job->error);
+			amp_group_delete_token (AMP_PROJECT (job->user_data), ANJUTA_AM_GROUP_NODE (job->node), &job->error);
 			break;
 		case ANJUTA_PROJECT_TARGET:
-			amp_target_delete_token (AMP_PROJECT (job->user_data), job->node, &job->error);
+			amp_target_delete_token (AMP_PROJECT (job->user_data), ANJUTA_AM_TARGET_NODE (job->node), &job->error);
 			break;
 		case ANJUTA_PROJECT_SOURCE:
-			amp_source_delete_token (AMP_PROJECT (job->user_data), job->node, &job->error);
+			amp_source_delete_token (AMP_PROJECT (job->user_data), ANJUTA_AM_SOURCE_NODE (job->node), &job->error);
 			break;
 		case ANJUTA_PROJECT_MODULE:
-			amp_module_delete_token (AMP_PROJECT (job->user_data), job->node, &job->error);
+			amp_module_delete_token (AMP_PROJECT (job->user_data), ANJUTA_AM_MODULE_NODE (job->node), &job->error);
 			break;
 		case ANJUTA_PROJECT_PACKAGE:
-			amp_package_delete_token (AMP_PROJECT (job->user_data), job->node, &job->error);
+			amp_package_delete_token (AMP_PROJECT (job->user_data), ANJUTA_AM_PACKAGE_NODE (job->node), &job->error);
 			break;
 		default:
 			break;
@@ -2834,7 +2791,7 @@ amp_project_dispose (GObject *object)
 
 	project = AMP_PROJECT (object);
 	amp_project_unload (project);
-	if (project->root) amp_root_free (project->root);
+	if (project->root != NULL) amp_root_free (ANJUTA_AM_ROOT_NODE (project->root));
 	pm_command_queue_free (project->queue);
 
 	G_OBJECT_CLASS (parent_class)->dispose (object);	
diff --git a/plugins/am-project/am-project.h b/plugins/am-project/am-project.h
index 50c9dc1..d2d7b52 100644
--- a/plugins/am-project/am-project.h
+++ b/plugins/am-project/am-project.h
@@ -124,10 +124,6 @@ GList *amp_project_get_config_packages  (AmpProject *project, const gchar* modul
 
 GList *amp_project_get_target_types (AmpProject *project, GError **error);
 
-AnjutaProjectProperty *amp_project_get_property_list (AmpProject *project);
-//gchar* amp_project_get_property (AmpProject *project, AmpPropertyType type);
-//gboolean amp_project_set_property (AmpProject *project, AmpPropertyType type, const gchar* value);
-
 gchar * amp_project_get_node_id (AmpProject *project, const gchar *path);
 
 AnjutaProjectNode *amp_node_parent (AnjutaProjectNode *node);
diff --git a/plugins/am-project/am-scanner.h b/plugins/am-project/am-scanner.h
index 5cba7e9..97f51d6 100644
--- a/plugins/am-project/am-scanner.h
+++ b/plugins/am-project/am-scanner.h
@@ -45,6 +45,8 @@ void amp_am_scanner_set_am_variable (AmpAmScanner *scanner, AnjutaTokenType vari
 void amp_am_scanner_include (AmpAmScanner *scanner, AnjutaToken *name);
 void amp_am_scanner_update_variable (AmpAmScanner *scanner, AnjutaToken *variable);
 
+void amp_project_set_am_variable (AmpProject* project, AnjutaAmGroupNode* group, AnjutaTokenType variable, AnjutaToken *name, AnjutaToken *list, GHashTable *orphan_properties);
+
 
 void amp_am_yyerror (YYLTYPE *loc, AmpAmScanner *scanner, char const *s);
 
diff --git a/plugins/am-project/am-scanner.l b/plugins/am-project/am-scanner.l
index 382feeb..78864f5 100644
--- a/plugins/am-project/am-scanner.l
+++ b/plugins/am-project/am-scanner.l
@@ -298,7 +298,6 @@ void
 amp_am_scanner_parse_variable (AmpAmScanner *scanner, AnjutaToken *variable)
 {
 	AnjutaToken *value;
-	AnjutaToken *content;
 
 	anjuta_token_set_type (variable, ANJUTA_TOKEN_VARIABLE);
 
@@ -358,13 +357,6 @@ amp_am_scanner_parse_token (AmpAmScanner *scanner, AnjutaToken *root, AnjutaToke
 /* Constructor & Destructor
  *---------------------------------------------------------------------------*/
 
-static void
-free_source_list (GList *source_list)
-{
-	g_list_foreach (source_list, (GFunc)amp_source_free, NULL);
-	g_list_free (source_list);
-}
-
 AmpAmScanner *
 amp_am_scanner_new (AmpProject *project, AnjutaAmGroupNode *group)
 {
diff --git a/plugins/am-project/am-writer.c b/plugins/am-project/am-writer.c
index 2ccf9a7..79d9fb1 100644
--- a/plugins/am-project/am-writer.c
+++ b/plugins/am-project/am-writer.c
@@ -36,6 +36,7 @@
 #include <libanjuta/anjuta-utils.h>
 
 #include <string.h>
+#include <ctype.h>
 
 /* Types
   *---------------------------------------------------------------------------*/
@@ -95,25 +96,6 @@ amp_project_write_config_list (AmpProject *project)
 }
 
 static AnjutaToken *
-amp_project_write_subdirs_list (AnjutaAmGroupNode *project)
-{
-	AnjutaToken *pos = NULL;
-	AnjutaToken *token;
-	static gint eol_type[] = {ANJUTA_TOKEN_EOL, ANJUTA_TOKEN_SPACE, ANJUTA_TOKEN_COMMENT, 0};
-	
-	pos = anjuta_token_find_type (pos, ANJUTA_TOKEN_SEARCH_NOT, eol_type);
-
-	token = anjuta_token_insert_token_list (FALSE, pos,
-	    		AC_TOKEN_AC_CONFIG_FILES, "AC_CONFIG_FILES(",
-	    		ANJUTA_TOKEN_LIST, NULL,
-	    		ANJUTA_TOKEN_LAST, NULL,
-	    		RIGHT_PAREN, ")",
-	    		NULL);
-	
-	return token;
-}
-
-static AnjutaToken *
 amp_project_write_config_file (AmpProject *project, AnjutaToken *list, gboolean after, AnjutaToken *sibling, const gchar *filename)
 {
 	AnjutaToken *token;
@@ -149,7 +131,7 @@ amp_project_write_config_file (AmpProject *project, AnjutaToken *list, gboolean
 gboolean 
 amp_group_create_token (AmpProject  *project, AnjutaAmGroupNode *group, GError **error)
 {
-	AnjutaAmGroupNode *last;
+	AnjutaProjectNode *last;
 	GFile *directory;
 	GFile *makefile;
 	AnjutaToken *list;
@@ -203,19 +185,19 @@ amp_group_create_token (AmpProject  *project, AnjutaAmGroupNode *group, GError *
 	if (sibling == NULL)
 	{
 		/* Find a sibling before */
-		for (last = anjuta_project_node_prev_sibling (group); (last != NULL) && (anjuta_project_node_get_node_type (last) != ANJUTA_PROJECT_GROUP); last = anjuta_project_node_prev_sibling (last));
+		for (last = anjuta_project_node_prev_sibling (ANJUTA_PROJECT_NODE (group)); (last != NULL) && (anjuta_project_node_get_node_type (last) != ANJUTA_PROJECT_GROUP); last = anjuta_project_node_prev_sibling (last));
 		if (last != NULL)
 		{
-			sibling = last;
+			sibling = ANJUTA_AM_GROUP_NODE (last);
 			after = TRUE;
 		}
 		else
 		{
 			/* Find a sibling after */
-			for (last = anjuta_project_node_next_sibling (group); (last != NULL) && (anjuta_project_node_get_node_type (last) != ANJUTA_PROJECT_GROUP); last = anjuta_project_node_next_sibling (last));
+			for (last = anjuta_project_node_next_sibling (ANJUTA_PROJECT_NODE (group)); (last != NULL) && (anjuta_project_node_get_node_type (last) != ANJUTA_PROJECT_GROUP); last = anjuta_project_node_next_sibling (last));
 			if (last != NULL)
 			{
-				sibling = last;
+				sibling = ANJUTA_AM_GROUP_NODE (last);
 				after = FALSE;
 			}
 		}
@@ -686,10 +668,10 @@ amp_source_create_token (AmpProject  *project, AnjutaAmSourceNode *source, GErro
 
 	/* Get parent target */
 	target = ANJUTA_AM_TARGET_NODE (anjuta_project_node_parent (ANJUTA_PROJECT_NODE (source)));
-	if ((target == NULL) || (anjuta_project_node_get_node_type (target) != ANJUTA_PROJECT_TARGET)) return FALSE;
+	if ((target == NULL) || (anjuta_project_node_get_node_type (ANJUTA_PROJECT_NODE (target)) != ANJUTA_PROJECT_TARGET)) return FALSE;
 	
 	group = ANJUTA_AM_GROUP_NODE (anjuta_project_node_parent (ANJUTA_PROJECT_NODE (target)));
-	relative_name = g_file_get_relative_path (anjuta_project_node_get_file (group), anjuta_project_node_get_file (source));
+	relative_name = g_file_get_relative_path (anjuta_project_node_get_file (ANJUTA_PROJECT_NODE (group)), anjuta_project_node_get_file (ANJUTA_PROJECT_NODE (source)));
 
 	/* Add in Makefile.am */
 	/* Find a sibling if possible */
@@ -825,7 +807,6 @@ amp_source_delete_token (AmpProject  *project, AnjutaAmSourceNode *source, GErro
 static AnjutaToken*
 amp_property_delete_token (AmpProject  *project, AnjutaToken *token)
 {
-	AnjutaToken *list = NULL;
 	gboolean updated = FALSE;
 
 	if (token != NULL)
@@ -872,18 +853,18 @@ amp_project_write_property_list (AnjutaAmGroupNode *group, AnjutaProjectNode *no
 
 gboolean amp_project_update_am_property (AmpProject *project, AnjutaProjectNode *node, AnjutaProjectProperty *property)
 {
-	AnjutaAmGroupNode *group;
+	AnjutaProjectNode *group;
 	AnjutaToken *args;
 
 
 	/* Find group  of the property */
 	if (anjuta_project_node_get_node_type (node) == ANJUTA_PROJECT_GROUP)
 	{
-		group = ANJUTA_AM_GROUP_NODE (node);
+		group = node;
 	}
 	else
 	{
-		group = ANJUTA_AM_GROUP_NODE (anjuta_project_node_parent (node));
+		group = anjuta_project_node_parent (node);
 	}
 
 	if ((property->value == NULL) || (*property->value == '\0'))
@@ -920,7 +901,7 @@ gboolean amp_project_update_am_property (AmpProject *project, AnjutaProjectNode
 				canon_name = canonicalize_automake_variable (ANJUTA_AM_TARGET_NODE (node)->base.name);
 				prop_name = g_strconcat (canon_name, ((AmpProperty *)property->native)->suffix, NULL);
 			}
-			args = amp_project_write_property_list (group, node, prop_name);
+			args = amp_project_write_property_list (ANJUTA_AM_GROUP_NODE (group), node, prop_name);
 			((AmpProperty *)property)->token = args;
 			g_free (canon_name);
 			g_free (prop_name);
@@ -1013,7 +994,7 @@ gboolean amp_project_update_am_property (AmpProject *project, AnjutaProjectNode
 		}
 	}
 
-	if (args != NULL) amp_group_update_makefile (group, args);
+	if (args != NULL) amp_group_update_makefile (ANJUTA_AM_GROUP_NODE (group), args);
 	
 	return args != NULL ? TRUE : FALSE;
 }
diff --git a/plugins/dir-project/dir-node.c b/plugins/dir-project/dir-node.c
index a5e52ed..019fc79 100644
--- a/plugins/dir-project/dir-node.c
+++ b/plugins/dir-project/dir-node.c
@@ -92,17 +92,14 @@ on_file_changed (GFileMonitor *monitor,
 			GFileMonitorEvent event_type,
 			gpointer data)
 {
-	if (!anjuta_project_node_is_proxy (ANJUTA_PROJECT_NODE (data)))
-	{
-		switch (event_type) {
-			case G_FILE_MONITOR_EVENT_CHANGED:
-			case G_FILE_MONITOR_EVENT_DELETED:
-			case G_FILE_MONITOR_EVENT_CREATED:
-				g_signal_emit_by_name (ANJUTA_DIR_GROUP_NODE (data)->emitter, "file-changed", data);
-				break;
-			default:
-				break;
-		}
+	switch (event_type) {
+		case G_FILE_MONITOR_EVENT_CHANGED:
+		case G_FILE_MONITOR_EVENT_DELETED:
+		case G_FILE_MONITOR_EVENT_CREATED:
+			g_signal_emit_by_name (ANJUTA_DIR_GROUP_NODE (data)->emitter, "file-changed", data);
+			break;
+		default:
+			break;
 	}
 }
 
diff --git a/plugins/project-manager/dialogs.c b/plugins/project-manager/dialogs.c
index 535a266..29822a9 100644
--- a/plugins/project-manager/dialogs.c
+++ b/plugins/project-manager/dialogs.c
@@ -633,9 +633,8 @@ on_properties_dialog_response (GtkWidget *dialog,
 					{
 						/* Remove */
 						PropertyValue *value;
-						
-						value = g_slice_new0 (PropertyValue);
-						value->property = prop;
+
+						value = pm_property_value_new (prop, NULL);
 						modified = g_list_prepend (modified, value);
 					}
 				}
@@ -646,9 +645,7 @@ on_properties_dialog_response (GtkWidget *dialog,
 						/* Modified */
 						PropertyValue *value;
 						
-						value = g_slice_new0 (PropertyValue);
-						value->property = prop;
-						value->value = text;
+						value = pm_property_value_new (prop, text);
 						modified = g_list_prepend (modified, value);
 					}
 				}
@@ -660,9 +657,7 @@ on_properties_dialog_response (GtkWidget *dialog,
 					/* Modified */
 					PropertyValue *value;
 						
-					value = g_slice_new0 (PropertyValue);
-					value->property = prop;
-					value->value = text;
+					value = pm_property_value_new (prop, text);
 					modified = g_list_prepend (modified, value);
 				}
 				break;
@@ -1377,17 +1372,9 @@ anjuta_pm_project_new_module (AnjutaPmProject *project,
 					for (node = g_list_first (list); node != NULL; node = g_list_next (node))
 					{
 						GError *err = NULL;
-						AnjutaProjectNode* selected_module = (AnjutaProjectNode *)node->data;
 						AnjutaProjectNode* new_module;
 						gchar* uri = NULL;
-						GFile* module_file;
-
-						/*module_file = gbf_tree_data_get_file (selected_module);
-						new_module = ianjuta_project_add_module (project,
-															target,
-															module_file,
-															&err);
-						g_object_unref (module_file);*/
+						
 						new_module = NULL;
 						if (err) {
 							gchar *str = g_strdup_printf ("%s: %s\n",
diff --git a/plugins/project-manager/plugin.c b/plugins/project-manager/plugin.c
index d71f615..1236e8a 100644
--- a/plugins/project-manager/plugin.c
+++ b/plugins/project-manager/plugin.c
@@ -435,7 +435,7 @@ static void
 on_add_package (GtkAction *action, ProjectManagerPlugin *plugin)
 {
 	GtkTreeIter selected_module;
-	AnjutaProjectNode *new_module;
+	GList *new_module;
 	
 	update_operation_begin (plugin);
 	gbf_project_view_get_first_selected (GBF_PROJECT_VIEW (plugin->view), &selected_module);
@@ -443,6 +443,7 @@ on_add_package (GtkAction *action, ProjectManagerPlugin *plugin)
 	new_module = anjuta_pm_project_new_package (plugin->project,
 										   get_plugin_parent_window (plugin),
 										   &selected_module, NULL);
+	g_list_free (new_module);
 	update_operation_end (plugin, TRUE);
 }
 
@@ -942,7 +943,6 @@ update_ui (ProjectManagerPlugin *plugin)
 {
 	AnjutaUI *ui;
 	gint j;
-	GList *item;
 	gint caps;
 	gint main_caps;
 	gint popup_caps;
@@ -1264,7 +1264,6 @@ add_primary_target (AnjutaProjectNode *node, gpointer data)
 static void
 on_project_updated (AnjutaPmProject *project, AnjutaProjectNode *node, GError *error, ProjectManagerPlugin *plugin)
 {
-	AnjutaStatus *status;
 	gchar *dirname;
 
 	dirname = anjuta_util_get_local_path_from_uri (plugin->project_root_uri);
@@ -2071,7 +2070,7 @@ iproject_manager_get_selected (IAnjutaProjectManager *project_manager,
 	return NULL;
 }
 
-static gint
+static guint
 iproject_manager_get_capabilities (IAnjutaProjectManager *project_manager,
 								   GError **err)
 {
diff --git a/plugins/project-manager/project-model.c b/plugins/project-manager/project-model.c
index ea9c058..5805832 100644
--- a/plugins/project-manager/project-model.c
+++ b/plugins/project-manager/project-model.c
@@ -305,7 +305,7 @@ gbf_project_model_invalidate_children (GbfProjectModel *model, GtkTreeIter *iter
 		    	-1);
 		gbf_tree_data_invalidate (data);
 
-		valid = gtk_tree_model_iter_next (model, &child);
+		valid = gtk_tree_model_iter_next (GTK_TREE_MODEL (model), &child);
 	}
 
 	return valid;
@@ -746,12 +746,6 @@ add_root (GbfProjectModel 	*model,
 }
 
 static void
-project_updated_cb (IAnjutaProject *project, GbfProjectModel *model)
-{
-	gbf_project_model_update_tree (model, NULL, NULL);
-}
-
-static void
 load_project (GbfProjectModel *model, AnjutaPmProject *proj)
 {
 	model->priv->proj = proj;
@@ -841,7 +835,7 @@ recursive_find_tree_data (GtkTreeModel  *model,
 	return retval;
 }
 
-void
+static void
 gbf_project_model_update_shortcut (GbfProjectModel *model, AnjutaProjectNode *parent)
 {
 	GtkTreeIter child;
@@ -853,7 +847,6 @@ gbf_project_model_update_shortcut (GbfProjectModel *model, AnjutaProjectNode *pa
 	while (valid)
 	{
 		GbfTreeData *data;
-		AnjutaProjectNode* new_node = NULL;
 		AnjutaProjectNode* old_node = NULL;
 
 		gtk_tree_model_get (GTK_TREE_MODEL (model), &child,
diff --git a/plugins/project-manager/project-view.c b/plugins/project-manager/project-view.c
index 35d9375..bebb12e 100644
--- a/plugins/project-manager/project-view.c
+++ b/plugins/project-manager/project-view.c
@@ -507,15 +507,6 @@ on_each_get_iter (GtkTreeModel *model,
                         gpointer user_data)
 {
 	GList **selected = (GList **)user_data;
-	GbfTreeData *data;
-
-	/*if (GTK_IS_TREE_MODEL_FILTER (model))
-	{
-		GtkTreeIter child_iter;
-			
-		gtk_tree_model_filter_convert_iter_to_child_iter (GTK_TREE_MODEL_FILTER (model), &child_iter, iter);
-		*iter = child_iter;
-	}*/
 	
 	*selected = g_list_prepend (*selected, gtk_tree_iter_copy (iter));
 }
diff --git a/plugins/project-manager/project.c b/plugins/project-manager/project.c
index 516caf1..ec38daf 100644
--- a/plugins/project-manager/project.c
+++ b/plugins/project-manager/project.c
@@ -232,14 +232,6 @@ anjuta_pm_project_load (AnjutaPmProject *project, GFile *file, GError **error)
 	return TRUE;
 }
 
-static gboolean
-anjuta_pm_project_reload_node (AnjutaPmProject *project, AnjutaProjectNode *node, GError **error)
-{
-	ianjuta_project_load_node (project->project, project->root, NULL);	
-
-	return TRUE;
-}
-
 gboolean 
 anjuta_pm_project_unload (AnjutaPmProject *project, GError **error)
 {



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