[gtksourceview/wip/regex-search] Add gtk_source_buffer_get_search_contexts()



commit e27290933e60820ee3503f1754c8b5ef5e290de1
Author: Sébastien Wilmet <swilmet gnome org>
Date:   Mon Aug 12 18:08:56 2013 +0200

    Add gtk_source_buffer_get_search_contexts()
    
    In gedit, some actions in the Search menu work with the simple search
    and the search and replace. Before, the search API was directly in
    the buffer. Now it is done with a SearchContext. It will be more
    convenient to retrieve the list of SearchContext from the buffer, than
    maintaining this list internally in gedit. The actions in the Search
    menu can take the first highlighted SearchContext from the list.

 docs/reference/gtksourceview-3.0-sections.txt |    1 +
 gtksourceview/gtksourcebuffer.c               |   19 +++++++++++++++++++
 gtksourceview/gtksourcebuffer.h               |    2 ++
 3 files changed, 22 insertions(+), 0 deletions(-)
---
diff --git a/docs/reference/gtksourceview-3.0-sections.txt b/docs/reference/gtksourceview-3.0-sections.txt
index a063ba9..b28564b 100644
--- a/docs/reference/gtksourceview-3.0-sections.txt
+++ b/docs/reference/gtksourceview-3.0-sections.txt
@@ -26,6 +26,7 @@ gtk_source_buffer_iter_has_context_class
 gtk_source_buffer_get_context_classes_at_iter
 gtk_source_buffer_iter_forward_to_context_class_toggle
 gtk_source_buffer_iter_backward_to_context_class_toggle
+gtk_source_buffer_get_search_contexts
 gtk_source_buffer_disable_search_highlighting
 <SUBSECTION>
 gtk_source_buffer_get_max_undo_levels
diff --git a/gtksourceview/gtksourcebuffer.c b/gtksourceview/gtksourcebuffer.c
index 1178dcd..f726f1b 100644
--- a/gtksourceview/gtksourcebuffer.c
+++ b/gtksourceview/gtksourcebuffer.c
@@ -2569,3 +2569,22 @@ gtk_source_buffer_disable_search_highlighting (GtkSourceBuffer *buffer)
                gtk_source_search_context_set_highlight (search_context, FALSE);
        }
 }
+
+/**
+ * gtk_source_buffer_get_search_contexts:
+ * @buffer: a #GtkSourceBuffer.
+ *
+ * Gets the list of #GtkSourceSearchContext<!-- -->s attached to @buffer. Free
+ * the return value with g_list_free().
+ *
+ * Returns: (element-type GtkSource.SearchContext) (transfer container): a list
+ * of #GtkSourceSearchContext<!-- -->s attached to @buffer.
+ * Since: 3.10
+ */
+GList *
+gtk_source_buffer_get_search_contexts (GtkSourceBuffer *buffer)
+{
+       g_return_val_if_fail (GTK_SOURCE_IS_BUFFER (buffer), NULL);
+
+       return g_list_copy (buffer->priv->search_contexts);
+}
diff --git a/gtksourceview/gtksourcebuffer.h b/gtksourceview/gtksourcebuffer.h
index 5810d0d..bc40587 100644
--- a/gtksourceview/gtksourcebuffer.h
+++ b/gtksourceview/gtksourcebuffer.h
@@ -182,6 +182,8 @@ void                         gtk_source_buffer_set_undo_manager                     
(GtkSourceBuffer        *buffer,
 
 void                    gtk_source_buffer_disable_search_highlighting          (GtkSourceBuffer        
*buffer);
 
+GList                  *gtk_source_buffer_get_search_contexts                  (GtkSourceBuffer        
*buffer);
+
 G_END_DECLS
 
 #endif /* __GTK_SOURCE_BUFFER_H__ */


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