[gtksourceview/wip/completion-model: 9/17] Completion: replace_model() function
- From: SÃbastien Wilmet <swilmet src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtksourceview/wip/completion-model: 9/17] Completion: replace_model() function
- Date: Tue, 22 Jan 2013 18:52:13 +0000 (UTC)
commit ecce7afee38ff9e208f8fa58ade877e0cfc4ea21
Author: SÃbastien Wilmet <swilmet gnome org>
Date: Mon Jan 21 23:04:39 2013 +0100
Completion: replace_model() function
gtksourceview/gtksourcecompletion.c | 60 ++++++++++++++++++-----------------
1 files changed, 31 insertions(+), 29 deletions(-)
---
diff --git a/gtksourceview/gtksourcecompletion.c b/gtksourceview/gtksourcecompletion.c
index 90954be..72568aa 100644
--- a/gtksourceview/gtksourcecompletion.c
+++ b/gtksourceview/gtksourcecompletion.c
@@ -2906,6 +2906,35 @@ info_button_style_updated (GtkWidget *button,
}
static void
+replace_model (GtkSourceCompletion *completion)
+{
+ if (completion->priv->model_proposals != NULL)
+ {
+ g_object_unref (completion->priv->model_proposals);
+ }
+
+ completion->priv->model_proposals = gtk_source_completion_model_new ();
+
+ gtk_source_completion_model_set_show_headers (completion->priv->model_proposals,
+ completion->priv->show_headers);
+
+ g_signal_connect_after (completion->priv->model_proposals,
+ "row-inserted",
+ G_CALLBACK (on_row_inserted_cb),
+ completion);
+
+ g_signal_connect_after (completion->priv->model_proposals,
+ "row-deleted",
+ G_CALLBACK (on_row_deleted_cb),
+ completion);
+
+ g_signal_connect (completion->priv->model_proposals,
+ "providers-changed",
+ G_CALLBACK (on_providers_changed),
+ completion);
+}
+
+static void
initialize_ui (GtkSourceCompletion *completion)
{
GtkBuilder *builder;
@@ -2950,15 +2979,7 @@ initialize_ui (GtkSourceCompletion *completion)
info_button_style_updated (completion->priv->info_button, completion);
- /* Tree view and model */
- completion->priv->model_proposals = gtk_source_completion_model_new ();
- gtk_source_completion_model_set_show_headers (completion->priv->model_proposals,
- completion->priv->show_headers);
-
-
- gtk_tree_view_set_model (GTK_TREE_VIEW (completion->priv->tree_view_proposals),
- GTK_TREE_MODEL (completion->priv->model_proposals));
-
+ /* Tree view */
selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (completion->priv->tree_view_proposals));
gtk_tree_selection_set_select_function (selection,
(GtkTreeSelectionFunc)selection_func,
@@ -3001,21 +3022,6 @@ initialize_ui (GtkSourceCompletion *completion)
completion,
NULL);
- g_signal_connect_after (completion->priv->model_proposals,
- "row-inserted",
- G_CALLBACK (on_row_inserted_cb),
- completion);
-
- g_signal_connect_after (completion->priv->model_proposals,
- "row-deleted",
- G_CALLBACK (on_row_deleted_cb),
- completion);
-
- g_signal_connect (completion->priv->model_proposals,
- "providers-changed",
- G_CALLBACK (on_providers_changed),
- completion);
-
g_signal_connect (completion->priv->tree_view_proposals,
"row-activated",
G_CALLBACK (row_activated_cb),
@@ -3151,11 +3157,7 @@ update_completion (GtkSourceCompletion *completion,
/* Create a new CompletionModel */
gtk_tree_view_set_model (GTK_TREE_VIEW (completion->priv->tree_view_proposals), NULL);
- g_object_unref (completion->priv->model_proposals);
- completion->priv->model_proposals = gtk_source_completion_model_new ();
-
- gtk_source_completion_model_set_show_headers (completion->priv->model_proposals,
- completion->priv->show_headers);
+ replace_model (completion);
for (item = providers; item != NULL; item = g_list_next (item))
{
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]