[anjuta] snippet-manager: Completing label field for the provider's proposals



commit 1da2b6720b4896c51e0aac9ae2f75866c9d0da5c
Author: Dragos Dena <dragos dena gmail com>
Date:   Fri Aug 13 03:55:52 2010 +0300

    snippet-manager: Completing label field for the provider's proposals

 .../snippets-interaction-interpreter.c             |   13 ++++++++-----
 plugins/snippets-manager/snippets-provider.c       |   15 +++++++++++++++
 2 files changed, 23 insertions(+), 5 deletions(-)
---
diff --git a/plugins/snippets-manager/snippets-interaction-interpreter.c b/plugins/snippets-manager/snippets-interaction-interpreter.c
index 6078d13..9935542 100644
--- a/plugins/snippets-manager/snippets-interaction-interpreter.c
+++ b/plugins/snippets-manager/snippets-interaction-interpreter.c
@@ -335,7 +335,6 @@ update_variables_values (SnippetsInteraction *snippets_interaction,
 		/* Modify the other appearances of the variables */
 		for (iter1 = g_list_first (edited_app_node); iter1 != NULL; iter1 = g_list_next (iter1))
 		{
-
 			/* Skipping the already visited appeareance */
 			if (iter1 == edited_app_node)
 				continue;
@@ -353,10 +352,14 @@ update_variables_values (SnippetsInteraction *snippets_interaction,
 			                               NULL);
 
 			if (modified_value > 0)
-				ianjuta_editor_insert (priv->cur_editor, start_iter, text, modified_value, NULL);
+			{
+				ianjuta_editor_insert (priv->cur_editor, start_iter, text, modified_value, NULL);			
+			}
 			else
-				ianjuta_editor_erase (priv->cur_editor, start_iter, end_iter, NULL);
-
+			{
+				ianjuta_editor_erase (priv->cur_editor, start_iter, end_iter, NULL);			
+			}
+			
 			g_object_unref (start_iter);
 			g_object_unref (end_iter);
 		}
@@ -802,7 +805,7 @@ snippets_interaction_insert_snippet (SnippetsInteraction *snippets_interaction,
 	priv->cur_snippet = snippet;
 	start_snippet_editing_session (snippets_interaction, 
 	                               cur_pos, 
-	                               strlen (snippet_default_content));
+	                               g_utf8_strlen (snippet_default_content, -1));
 
 	g_free (indent);
 	g_free (snippet_default_content);
diff --git a/plugins/snippets-manager/snippets-provider.c b/plugins/snippets-manager/snippets-provider.c
index 09fd57a..945e6d0 100644
--- a/plugins/snippets-manager/snippets-provider.c
+++ b/plugins/snippets-manager/snippets-provider.c
@@ -235,6 +235,7 @@ get_proposal_for_snippet (AnjutaSnippet *snippet,
 	IAnjutaEditorAssistProposal *proposal = NULL;
 	SnippetEntry *entry = NULL;
 	gchar *name_with_trigger = NULL;
+	gint i = 0, len = 0;
 
 	/* Assertions */
 	g_return_val_if_fail (ANJUTA_IS_SNIPPET (snippet), NULL);
@@ -249,6 +250,17 @@ get_proposal_for_snippet (AnjutaSnippet *snippet,
 	                                 NULL);
 	proposal->markup = name_with_trigger;
 
+	/* Fill the label field */
+	proposal->label = g_strdup (snippet_get_name (snippet));
+	len = strlen (proposal->label);
+	for (i = 0; i < len; i ++)
+		if (proposal->label[i] == ' '  ||
+		    proposal->label[i] == '\n' ||
+		    proposal->label[i] == '\t')
+		{
+			proposal->label[i] = '_';
+		}
+
 #if 0
 	/* Fill the info field */
 	proposal->info = snippet_get_default_content (snippet, G_OBJECT (snippets_db), "");
@@ -279,6 +291,7 @@ clear_suggestions_list (SnippetsProvider *snippets_provider)
 
 		g_free (cur_proposal->markup);
 		g_free (cur_proposal->data);
+		g_free (cur_proposal->label);
 		g_free (cur_proposal);		
 	}
 	g_list_free (priv->suggestions_list);
@@ -541,6 +554,7 @@ snippets_provider_load (SnippetsProvider *snippets_provider,
 	ianjuta_editor_assist_add (editor_assist, 
 	                           IANJUTA_PROVIDER (snippets_provider), 
 	                           NULL);
+
 	priv->editor_assist = editor_assist;
 
 	priv->request = FALSE;
@@ -641,6 +655,7 @@ snippets_provider_populate (IAnjutaProvider *self,
 		   separator. */
 		priv->start_iter = ianjuta_iterable_clone (cursor, NULL);
 		priv->request = FALSE;
+
 	}
 
 	clear_suggestions_list (snippets_provider);



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