[gtksourceview/wip/chergert/gsv-gtk4] buffer: modernize GtkSourceBuffer
- From: Christian Hergert <chergert src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtksourceview/wip/chergert/gsv-gtk4] buffer: modernize GtkSourceBuffer
- Date: Thu, 9 Jan 2020 00:31:04 +0000 (UTC)
commit d0c67e10228e0e4df0e895660074d058aeed88b0
Author: Christian Hergert <chergert redhat com>
Date: Wed Jan 8 16:30:11 2020 -0800
buffer: modernize GtkSourceBuffer
- Use G_DECLARE*
- Align similar functions
- Use get_instance_private()
- Remove autocleanup helpers
gtksourceview/gtksourceautocleanups.h | 1 -
gtksourceview/gtksourcebuffer-private.h | 74 +++---
gtksourceview/gtksourcebuffer.c | 394 +++++++++++++++++++-------------
gtksourceview/gtksourcebuffer.h | 217 +++++++-----------
4 files changed, 346 insertions(+), 340 deletions(-)
---
diff --git a/gtksourceview/gtksourceautocleanups.h b/gtksourceview/gtksourceautocleanups.h
index 550fa1c4..eb1b2293 100644
--- a/gtksourceview/gtksourceautocleanups.h
+++ b/gtksourceview/gtksourceautocleanups.h
@@ -28,7 +28,6 @@ G_BEGIN_DECLS
#ifndef __GI_SCANNER__
-G_DEFINE_AUTOPTR_CLEANUP_FUNC(GtkSourceBuffer, g_object_unref)
G_DEFINE_AUTOPTR_CLEANUP_FUNC(GtkSourceCompletion, g_object_unref)
G_DEFINE_AUTOPTR_CLEANUP_FUNC(GtkSourceCompletionContext, g_object_unref)
G_DEFINE_AUTOPTR_CLEANUP_FUNC(GtkSourceCompletionInfo, g_object_unref)
diff --git a/gtksourceview/gtksourcebuffer-private.h b/gtksourceview/gtksourcebuffer-private.h
index 2b86e14d..492c33c8 100644
--- a/gtksourceview/gtksourcebuffer-private.h
+++ b/gtksourceview/gtksourcebuffer-private.h
@@ -29,62 +29,48 @@
G_BEGIN_DECLS
GTK_SOURCE_INTERNAL
-void _gtk_source_buffer_update_syntax_highlight (GtkSourceBuffer *buffer,
- const GtkTextIter *start,
- const GtkTextIter *end,
- gboolean synchronous);
-
+void _gtk_source_buffer_update_syntax_highlight (GtkSourceBuffer *buffer,
+ const GtkTextIter *start,
+ const GtkTextIter *end,
+ gboolean
synchronous);
GTK_SOURCE_INTERNAL
-void _gtk_source_buffer_update_search_highlight (GtkSourceBuffer *buffer,
- const GtkTextIter *start,
- const GtkTextIter *end,
- gboolean synchronous);
-
+void _gtk_source_buffer_update_search_highlight (GtkSourceBuffer *buffer,
+ const GtkTextIter *start,
+ const GtkTextIter *end,
+ gboolean
synchronous);
GTK_SOURCE_INTERNAL
-GtkSourceMark *_gtk_source_buffer_source_mark_next (GtkSourceBuffer *buffer,
- GtkSourceMark *mark,
- const gchar *category);
-
+GtkSourceMark *_gtk_source_buffer_source_mark_next (GtkSourceBuffer *buffer,
+ GtkSourceMark *mark,
+ const gchar *category);
GTK_SOURCE_INTERNAL
-GtkSourceMark *_gtk_source_buffer_source_mark_prev (GtkSourceBuffer *buffer,
- GtkSourceMark *mark,
- const gchar *category);
-
+GtkSourceMark *_gtk_source_buffer_source_mark_prev (GtkSourceBuffer *buffer,
+ GtkSourceMark *mark,
+ const gchar *category);
GTK_SOURCE_INTERNAL
-GtkTextTag *_gtk_source_buffer_get_bracket_match_tag (GtkSourceBuffer *buffer);
-
+GtkTextTag *_gtk_source_buffer_get_bracket_match_tag (GtkSourceBuffer *buffer);
GTK_SOURCE_INTERNAL
-void _gtk_source_buffer_add_search_context (GtkSourceBuffer *buffer,
- GtkSourceSearchContext
*search_context);
-
+void _gtk_source_buffer_add_search_context (GtkSourceBuffer *buffer,
+ GtkSourceSearchContext
*search_context);
GTK_SOURCE_INTERNAL
-void _gtk_source_buffer_set_as_invalid_character (GtkSourceBuffer *buffer,
- const GtkTextIter *start,
- const GtkTextIter *end);
-
+void _gtk_source_buffer_set_as_invalid_character (GtkSourceBuffer *buffer,
+ const GtkTextIter *start,
+ const GtkTextIter *end);
GTK_SOURCE_INTERNAL
-gboolean _gtk_source_buffer_has_invalid_chars (GtkSourceBuffer *buffer);
-
+gboolean _gtk_source_buffer_has_invalid_chars (GtkSourceBuffer *buffer);
GTK_SOURCE_INTERNAL
-GtkSourceBracketMatchType
- _gtk_source_buffer_find_bracket_match (GtkSourceBuffer *buffer,
- const GtkTextIter *pos,
- GtkTextIter *bracket,
- GtkTextIter
*bracket_match);
-
+GtkSourceBracketMatchType _gtk_source_buffer_find_bracket_match (GtkSourceBuffer *buffer,
+ const GtkTextIter *pos,
+ GtkTextIter *bracket,
+ GtkTextIter
*bracket_match);
GTK_SOURCE_INTERNAL
-void _gtk_source_buffer_save_and_clear_selection (GtkSourceBuffer *buffer);
-
+void _gtk_source_buffer_save_and_clear_selection (GtkSourceBuffer *buffer);
GTK_SOURCE_INTERNAL
-void _gtk_source_buffer_restore_selection (GtkSourceBuffer *buffer);
-
+void _gtk_source_buffer_restore_selection (GtkSourceBuffer *buffer);
GTK_SOURCE_INTERNAL
-gboolean _gtk_source_buffer_is_undo_redo_enabled (GtkSourceBuffer *buffer);
-
+gboolean _gtk_source_buffer_is_undo_redo_enabled (GtkSourceBuffer *buffer);
GTK_SOURCE_INTERNAL
-gboolean _gtk_source_buffer_has_source_marks (GtkSourceBuffer *buffer);
-
+gboolean _gtk_source_buffer_has_source_marks (GtkSourceBuffer *buffer);
GTK_SOURCE_INTERNAL
-gboolean _gtk_source_buffer_has_spaces_tag (GtkSourceBuffer *buffer);
+gboolean _gtk_source_buffer_has_spaces_tag (GtkSourceBuffer *buffer);
G_END_DECLS
diff --git a/gtksourceview/gtksourcebuffer.c b/gtksourceview/gtksourcebuffer.c
index bad12f1d..76c5ef05 100644
--- a/gtksourceview/gtksourcebuffer.c
+++ b/gtksourceview/gtksourcebuffer.c
@@ -190,7 +190,7 @@ enum
N_PROPERTIES
};
-struct _GtkSourceBufferPrivate
+typedef struct
{
GtkTextTag *bracket_match_tag;
GtkSourceBracketMatchType bracket_match_state;
@@ -218,7 +218,7 @@ struct _GtkSourceBufferPrivate
guint highlight_syntax : 1;
guint highlight_brackets : 1;
guint implicit_trailing_newline : 1;
-};
+} GtkSourceBufferPrivate;
static guint buffer_signals[N_SIGNALS];
static GParamSpec *buffer_properties[N_PROPERTIES];
@@ -272,7 +272,9 @@ static void
gtk_source_buffer_check_tag_for_spaces (GtkSourceBuffer *buffer,
GtkSourceTag *tag)
{
- if (!buffer->priv->has_draw_spaces_tag)
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
+
+ if (!priv->has_draw_spaces_tag)
{
gboolean draw_spaces_set;
@@ -282,7 +284,7 @@ gtk_source_buffer_check_tag_for_spaces (GtkSourceBuffer *buffer,
if (draw_spaces_set)
{
- buffer->priv->has_draw_spaces_tag = TRUE;
+ priv->has_draw_spaces_tag = TRUE;
}
}
}
@@ -314,9 +316,10 @@ static void
gtk_source_buffer_constructed (GObject *object)
{
GtkSourceBuffer *buffer = GTK_SOURCE_BUFFER (object);
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
GtkTextTagTable *table;
- if (buffer->priv->undo_manager == NULL)
+ if (priv->undo_manager == NULL)
{
/* This will install the default undo manager */
gtk_source_buffer_set_undo_manager (buffer, NULL);
@@ -587,35 +590,37 @@ static void
set_undo_manager (GtkSourceBuffer *buffer,
GtkSourceUndoManager *manager)
{
- if (manager == buffer->priv->undo_manager)
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
+
+ if (manager == priv->undo_manager)
{
return;
}
- if (buffer->priv->undo_manager != NULL)
+ if (priv->undo_manager != NULL)
{
- g_signal_handlers_disconnect_by_func (buffer->priv->undo_manager,
+ g_signal_handlers_disconnect_by_func (priv->undo_manager,
G_CALLBACK (gtk_source_buffer_can_undo_handler),
buffer);
- g_signal_handlers_disconnect_by_func (buffer->priv->undo_manager,
+ g_signal_handlers_disconnect_by_func (priv->undo_manager,
G_CALLBACK (gtk_source_buffer_can_redo_handler),
buffer);
- g_object_unref (buffer->priv->undo_manager);
- buffer->priv->undo_manager = NULL;
+ g_object_unref (priv->undo_manager);
+ priv->undo_manager = NULL;
}
if (manager != NULL)
{
- buffer->priv->undo_manager = g_object_ref (manager);
+ priv->undo_manager = g_object_ref (manager);
- g_signal_connect (buffer->priv->undo_manager,
+ g_signal_connect (priv->undo_manager,
"can-undo-changed",
G_CALLBACK (gtk_source_buffer_can_undo_handler),
buffer);
- g_signal_connect (buffer->priv->undo_manager,
+ g_signal_connect (priv->undo_manager,
"can-redo-changed",
G_CALLBACK (gtk_source_buffer_can_redo_handler),
buffer);
@@ -630,8 +635,9 @@ static void
search_context_weak_notify_cb (GtkSourceBuffer *buffer,
GObject *search_context)
{
- buffer->priv->search_contexts = g_list_remove (buffer->priv->search_contexts,
- search_context);
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
+
+ priv->search_contexts = g_list_remove (priv->search_contexts, search_context);
}
static void
@@ -639,8 +645,6 @@ gtk_source_buffer_init (GtkSourceBuffer *buffer)
{
GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
- buffer->priv = priv;
-
priv->highlight_syntax = TRUE;
priv->highlight_brackets = TRUE;
priv->bracket_match_state = GTK_SOURCE_BRACKET_MATCH_NONE;
@@ -665,29 +669,30 @@ static void
gtk_source_buffer_dispose (GObject *object)
{
GtkSourceBuffer *buffer = GTK_SOURCE_BUFFER (object);
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
GList *l;
- if (buffer->priv->bracket_highlighting_timeout_id != 0)
+ if (priv->bracket_highlighting_timeout_id != 0)
{
- g_source_remove (buffer->priv->bracket_highlighting_timeout_id);
- buffer->priv->bracket_highlighting_timeout_id = 0;
+ g_source_remove (priv->bracket_highlighting_timeout_id);
+ priv->bracket_highlighting_timeout_id = 0;
}
- if (buffer->priv->undo_manager != NULL)
+ if (priv->undo_manager != NULL)
{
set_undo_manager (buffer, NULL);
}
- if (buffer->priv->highlight_engine != NULL)
+ if (priv->highlight_engine != NULL)
{
- _gtk_source_engine_attach_buffer (buffer->priv->highlight_engine, NULL);
+ _gtk_source_engine_attach_buffer (priv->highlight_engine, NULL);
}
- g_clear_object (&buffer->priv->highlight_engine);
- g_clear_object (&buffer->priv->language);
- g_clear_object (&buffer->priv->style_scheme);
+ g_clear_object (&priv->highlight_engine);
+ g_clear_object (&priv->language);
+ g_clear_object (&priv->style_scheme);
- for (l = buffer->priv->search_contexts; l != NULL; l = l->next)
+ for (l = priv->search_contexts; l != NULL; l = l->next)
{
GtkSourceSearchContext *search_context = l->data;
@@ -696,15 +701,15 @@ gtk_source_buffer_dispose (GObject *object)
buffer);
}
- g_list_free (buffer->priv->search_contexts);
- buffer->priv->search_contexts = NULL;
+ g_list_free (priv->search_contexts);
+ priv->search_contexts = NULL;
- g_clear_object (&buffer->priv->all_source_marks);
+ g_clear_object (&priv->all_source_marks);
- if (buffer->priv->source_marks != NULL)
+ if (priv->source_marks != NULL)
{
- g_hash_table_unref (buffer->priv->source_marks);
- buffer->priv->source_marks = NULL;
+ g_hash_table_unref (priv->source_marks);
+ priv->source_marks = NULL;
}
G_OBJECT_CLASS (gtk_source_buffer_parent_class)->dispose (object);
@@ -716,11 +721,7 @@ gtk_source_buffer_set_property (GObject *object,
const GValue *value,
GParamSpec *pspec)
{
- GtkSourceBuffer *buffer;
-
- g_return_if_fail (GTK_SOURCE_IS_BUFFER (object));
-
- buffer = GTK_SOURCE_BUFFER (object);
+ GtkSourceBuffer *buffer = GTK_SOURCE_BUFFER (object);
switch (prop_id)
{
@@ -764,32 +765,29 @@ gtk_source_buffer_get_property (GObject *object,
GValue *value,
GParamSpec *pspec)
{
- GtkSourceBuffer *buffer;
-
- g_return_if_fail (GTK_SOURCE_IS_BUFFER (object));
-
- buffer = GTK_SOURCE_BUFFER (object);
+ GtkSourceBuffer *buffer = GTK_SOURCE_BUFFER (object);
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
switch (prop_id)
{
case PROP_HIGHLIGHT_SYNTAX:
- g_value_set_boolean (value, buffer->priv->highlight_syntax);
+ g_value_set_boolean (value, priv->highlight_syntax);
break;
case PROP_HIGHLIGHT_MATCHING_BRACKETS:
- g_value_set_boolean (value, buffer->priv->highlight_brackets);
+ g_value_set_boolean (value, priv->highlight_brackets);
break;
case PROP_MAX_UNDO_LEVELS:
- g_value_set_int (value, buffer->priv->max_undo_levels);
+ g_value_set_int (value, priv->max_undo_levels);
break;
case PROP_LANGUAGE:
- g_value_set_object (value, buffer->priv->language);
+ g_value_set_object (value, priv->language);
break;
case PROP_STYLE_SCHEME:
- g_value_set_object (value, buffer->priv->style_scheme);
+ g_value_set_object (value, priv->style_scheme);
break;
case PROP_CAN_UNDO:
@@ -801,11 +799,11 @@ gtk_source_buffer_get_property (GObject *object,
break;
case PROP_UNDO_MANAGER:
- g_value_set_object (value, buffer->priv->undo_manager);
+ g_value_set_object (value, priv->undo_manager);
break;
case PROP_IMPLICIT_TRAILING_NEWLINE:
- g_value_set_boolean (value, buffer->priv->implicit_trailing_newline);
+ g_value_set_boolean (value, priv->implicit_trailing_newline);
break;
default:
@@ -825,6 +823,8 @@ gtk_source_buffer_get_property (GObject *object,
GtkSourceBuffer *
gtk_source_buffer_new (GtkTextTagTable *table)
{
+ g_return_val_if_fail (table == NULL || GTK_IS_TEXT_TAG_TABLE (table), NULL);
+
return g_object_new (GTK_SOURCE_TYPE_BUFFER,
"tag-table", table,
NULL);
@@ -873,34 +873,37 @@ gtk_source_buffer_can_redo_handler (GtkSourceUndoManager *manager,
static void
update_bracket_match_style (GtkSourceBuffer *buffer)
{
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
GtkSourceStyle *style = NULL;
- if (buffer->priv->bracket_match_tag == NULL)
+ if (priv->bracket_match_tag == NULL)
{
return;
}
- if (buffer->priv->style_scheme != NULL)
+ if (priv->style_scheme != NULL)
{
- style = _gtk_source_style_scheme_get_matching_brackets_style (buffer->priv->style_scheme);
+ style = _gtk_source_style_scheme_get_matching_brackets_style (priv->style_scheme);
}
- gtk_source_style_apply (style, buffer->priv->bracket_match_tag);
+ gtk_source_style_apply (style, priv->bracket_match_tag);
}
static GtkTextTag *
get_bracket_match_tag (GtkSourceBuffer *buffer)
{
- if (buffer->priv->bracket_match_tag == NULL)
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
+
+ if (priv->bracket_match_tag == NULL)
{
- buffer->priv->bracket_match_tag =
+ priv->bracket_match_tag =
gtk_text_buffer_create_tag (GTK_TEXT_BUFFER (buffer),
NULL,
NULL);
update_bracket_match_style (buffer);
}
- return buffer->priv->bracket_match_tag;
+ return priv->bracket_match_tag;
}
/* This is private, just used by the print compositor to not print bracket
@@ -910,7 +913,9 @@ get_bracket_match_tag (GtkSourceBuffer *buffer)
GtkTextTag *
_gtk_source_buffer_get_bracket_match_tag (GtkSourceBuffer *buffer)
{
- return buffer->priv->bracket_match_tag;
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
+
+ return priv->bracket_match_tag;
}
static gunichar
@@ -1057,15 +1062,14 @@ remove_tag_with_minimal_damage (GtkTextBuffer *buffer,
static void
update_bracket_highlighting (GtkSourceBuffer *source_buffer)
{
- GtkTextBuffer *buffer;
+ GtkTextBuffer *buffer = GTK_TEXT_BUFFER (source_buffer);
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (source_buffer);
GtkTextIter insert_iter;
GtkTextIter bracket;
GtkTextIter bracket_match;
GtkSourceBracketMatchType previous_state;
- buffer = GTK_TEXT_BUFFER (source_buffer);
-
- if (source_buffer->priv->bracket_match_tag != NULL)
+ if (priv->bracket_match_tag != NULL)
{
GtkTextIter start;
GtkTextIter end;
@@ -1073,20 +1077,20 @@ update_bracket_highlighting (GtkSourceBuffer *source_buffer)
gtk_text_buffer_get_bounds (buffer, &start, &end);
remove_tag_with_minimal_damage (GTK_TEXT_BUFFER (source_buffer),
- source_buffer->priv->bracket_match_tag,
+ priv->bracket_match_tag,
&start,
&end);
}
- if (!source_buffer->priv->highlight_brackets)
+ if (!priv->highlight_brackets)
{
- if (source_buffer->priv->bracket_match_tag != NULL)
+ if (priv->bracket_match_tag != NULL)
{
GtkTextTagTable *table;
table = gtk_text_buffer_get_tag_table (buffer);
- gtk_text_tag_table_remove (table, source_buffer->priv->bracket_match_tag);
- source_buffer->priv->bracket_match_tag = NULL;
+ gtk_text_tag_table_remove (table, priv->bracket_match_tag);
+ priv->bracket_match_tag = NULL;
}
return;
@@ -1096,14 +1100,14 @@ update_bracket_highlighting (GtkSourceBuffer *source_buffer)
&insert_iter,
gtk_text_buffer_get_insert (buffer));
- previous_state = source_buffer->priv->bracket_match_state;
- source_buffer->priv->bracket_match_state =
+ previous_state = priv->bracket_match_state;
+ priv->bracket_match_state =
_gtk_source_buffer_find_bracket_match (source_buffer,
&insert_iter,
&bracket,
&bracket_match);
- if (source_buffer->priv->bracket_match_state == GTK_SOURCE_BRACKET_MATCH_FOUND)
+ if (priv->bracket_match_state == GTK_SOURCE_BRACKET_MATCH_FOUND)
{
GtkTextIter next_iter;
@@ -1133,13 +1137,13 @@ update_bracket_highlighting (GtkSourceBuffer *source_buffer)
* positions are nonbrackets.
*/
if (previous_state != GTK_SOURCE_BRACKET_MATCH_NONE ||
- source_buffer->priv->bracket_match_state != GTK_SOURCE_BRACKET_MATCH_NONE)
+ priv->bracket_match_state != GTK_SOURCE_BRACKET_MATCH_NONE)
{
g_signal_emit (source_buffer,
buffer_signals[BRACKET_MATCHED],
0,
NULL,
- source_buffer->priv->bracket_match_state);
+ priv->bracket_match_state);
}
}
@@ -1147,19 +1151,22 @@ static gboolean
bracket_highlighting_timeout_cb (gpointer user_data)
{
GtkSourceBuffer *buffer = GTK_SOURCE_BUFFER (user_data);
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
update_bracket_highlighting (buffer);
- buffer->priv->bracket_highlighting_timeout_id = 0;
+ priv->bracket_highlighting_timeout_id = 0;
return G_SOURCE_REMOVE;
}
static void
queue_bracket_highlighting_update (GtkSourceBuffer *buffer)
{
- if (buffer->priv->bracket_highlighting_timeout_id != 0)
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
+
+ if (priv->bracket_highlighting_timeout_id != 0)
{
- g_source_remove (buffer->priv->bracket_highlighting_timeout_id);
+ g_source_remove (priv->bracket_highlighting_timeout_id);
}
/* Queue an update to the bracket location instead of doing it
@@ -1179,7 +1186,7 @@ queue_bracket_highlighting_update (GtkSourceBuffer *buffer)
* If we had access to a GdkFrameClock, we might consider using
* ::update() or ::after-paint() to synchronize this.
*/
- buffer->priv->bracket_highlighting_timeout_id =
+ priv->bracket_highlighting_timeout_id =
gdk_threads_add_timeout_full (G_PRIORITY_LOW,
UPDATE_BRACKET_DELAY,
bracket_highlighting_timeout_cb,
@@ -1211,12 +1218,13 @@ gtk_source_buffer_content_inserted (GtkTextBuffer *buffer,
gint end_offset)
{
GtkSourceBuffer *source_buffer = GTK_SOURCE_BUFFER (buffer);
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (source_buffer);
cursor_moved (source_buffer);
- if (source_buffer->priv->highlight_engine != NULL)
+ if (priv->highlight_engine != NULL)
{
- _gtk_source_engine_text_inserted (source_buffer->priv->highlight_engine,
+ _gtk_source_engine_text_inserted (priv->highlight_engine,
start_offset,
end_offset);
}
@@ -1309,6 +1317,7 @@ gtk_source_buffer_real_delete_range (GtkTextBuffer *buffer,
{
gint offset, length;
GtkSourceBuffer *source_buffer = GTK_SOURCE_BUFFER (buffer);
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (source_buffer);
g_return_if_fail (GTK_SOURCE_IS_BUFFER (buffer));
g_return_if_fail (start != NULL);
@@ -1325,9 +1334,9 @@ gtk_source_buffer_real_delete_range (GtkTextBuffer *buffer,
cursor_moved (source_buffer);
/* emit text deleted for engines */
- if (source_buffer->priv->highlight_engine != NULL)
+ if (priv->highlight_engine != NULL)
{
- _gtk_source_engine_text_deleted (source_buffer->priv->highlight_engine,
+ _gtk_source_engine_text_deleted (priv->highlight_engine,
offset, length);
}
}
@@ -1534,9 +1543,11 @@ _gtk_source_buffer_find_bracket_match (GtkSourceBuffer *buffer,
gboolean
gtk_source_buffer_can_undo (GtkSourceBuffer *buffer)
{
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
+
g_return_val_if_fail (GTK_SOURCE_IS_BUFFER (buffer), FALSE);
- return gtk_source_undo_manager_can_undo (buffer->priv->undo_manager);
+ return gtk_source_undo_manager_can_undo (priv->undo_manager);
}
/**
@@ -1551,9 +1562,11 @@ gtk_source_buffer_can_undo (GtkSourceBuffer *buffer)
gboolean
gtk_source_buffer_can_redo (GtkSourceBuffer *buffer)
{
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
+
g_return_val_if_fail (GTK_SOURCE_IS_BUFFER (buffer), FALSE);
- return gtk_source_undo_manager_can_redo (buffer->priv->undo_manager);
+ return gtk_source_undo_manager_can_redo (priv->undo_manager);
}
/**
@@ -1602,9 +1615,11 @@ gtk_source_buffer_redo (GtkSourceBuffer *buffer)
gint
gtk_source_buffer_get_max_undo_levels (GtkSourceBuffer *buffer)
{
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
+
g_return_val_if_fail (GTK_SOURCE_IS_BUFFER (buffer), 0);
- return buffer->priv->max_undo_levels;
+ return priv->max_undo_levels;
}
/**
@@ -1624,18 +1639,20 @@ void
gtk_source_buffer_set_max_undo_levels (GtkSourceBuffer *buffer,
gint max_undo_levels)
{
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
+
g_return_if_fail (GTK_SOURCE_IS_BUFFER (buffer));
- if (buffer->priv->max_undo_levels == max_undo_levels)
+ if (priv->max_undo_levels == max_undo_levels)
{
return;
}
- buffer->priv->max_undo_levels = max_undo_levels;
+ priv->max_undo_levels = max_undo_levels;
- if (GTK_SOURCE_IS_UNDO_MANAGER_DEFAULT (buffer->priv->undo_manager))
+ if (GTK_SOURCE_IS_UNDO_MANAGER_DEFAULT (priv->undo_manager))
{
- gtk_source_undo_manager_default_set_max_undo_levels (GTK_SOURCE_UNDO_MANAGER_DEFAULT
(buffer->priv->undo_manager),
+ gtk_source_undo_manager_default_set_max_undo_levels (GTK_SOURCE_UNDO_MANAGER_DEFAULT
(priv->undo_manager),
max_undo_levels);
}
@@ -1645,20 +1662,22 @@ gtk_source_buffer_set_max_undo_levels (GtkSourceBuffer *buffer,
gboolean
_gtk_source_buffer_is_undo_redo_enabled (GtkSourceBuffer *buffer)
{
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
+
g_return_val_if_fail (GTK_SOURCE_IS_BUFFER (buffer), FALSE);
- if (buffer->priv->undo_manager == NULL)
+ if (priv->undo_manager == NULL)
{
return FALSE;
}
/* A custom UndoManager is not forced to follow max_undo_levels. */
- if (!GTK_SOURCE_IS_UNDO_MANAGER_DEFAULT (buffer->priv->undo_manager))
+ if (!GTK_SOURCE_IS_UNDO_MANAGER_DEFAULT (priv->undo_manager))
{
return TRUE;
}
- return buffer->priv->max_undo_levels != 0;
+ return priv->max_undo_levels != 0;
}
/**
@@ -1676,9 +1695,11 @@ _gtk_source_buffer_is_undo_redo_enabled (GtkSourceBuffer *buffer)
void
gtk_source_buffer_begin_not_undoable_action (GtkSourceBuffer *buffer)
{
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
+
g_return_if_fail (GTK_SOURCE_IS_BUFFER (buffer));
- gtk_source_undo_manager_begin_not_undoable_action (buffer->priv->undo_manager);
+ gtk_source_undo_manager_begin_not_undoable_action (priv->undo_manager);
}
/**
@@ -1693,9 +1714,11 @@ gtk_source_buffer_begin_not_undoable_action (GtkSourceBuffer *buffer)
void
gtk_source_buffer_end_not_undoable_action (GtkSourceBuffer *buffer)
{
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
+
g_return_if_fail (GTK_SOURCE_IS_BUFFER (buffer));
- gtk_source_undo_manager_end_not_undoable_action (buffer->priv->undo_manager);
+ gtk_source_undo_manager_end_not_undoable_action (priv->undo_manager);
}
/**
@@ -1711,9 +1734,11 @@ gtk_source_buffer_end_not_undoable_action (GtkSourceBuffer *buffer)
gboolean
gtk_source_buffer_get_highlight_matching_brackets (GtkSourceBuffer *buffer)
{
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
+
g_return_val_if_fail (GTK_SOURCE_IS_BUFFER (buffer), FALSE);
- return buffer->priv->highlight_brackets;
+ return priv->highlight_brackets;
}
/**
@@ -1730,13 +1755,15 @@ void
gtk_source_buffer_set_highlight_matching_brackets (GtkSourceBuffer *buffer,
gboolean highlight)
{
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
+
g_return_if_fail (GTK_SOURCE_IS_BUFFER (buffer));
highlight = highlight != FALSE;
- if (highlight != buffer->priv->highlight_brackets)
+ if (highlight != priv->highlight_brackets)
{
- buffer->priv->highlight_brackets = highlight;
+ priv->highlight_brackets = highlight;
update_bracket_highlighting (buffer);
@@ -1756,9 +1783,11 @@ gtk_source_buffer_set_highlight_matching_brackets (GtkSourceBuffer *buffer,
gboolean
gtk_source_buffer_get_highlight_syntax (GtkSourceBuffer *buffer)
{
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
+
g_return_val_if_fail (GTK_SOURCE_IS_BUFFER (buffer), FALSE);
- return buffer->priv->highlight_syntax;
+ return priv->highlight_syntax;
}
/**
@@ -1780,13 +1809,15 @@ void
gtk_source_buffer_set_highlight_syntax (GtkSourceBuffer *buffer,
gboolean highlight)
{
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
+
g_return_if_fail (GTK_SOURCE_IS_BUFFER (buffer));
highlight = highlight != FALSE;
- if (buffer->priv->highlight_syntax != highlight)
+ if (priv->highlight_syntax != highlight)
{
- buffer->priv->highlight_syntax = highlight;
+ priv->highlight_syntax = highlight;
g_object_notify_by_pspec (G_OBJECT (buffer), buffer_properties[PROP_HIGHLIGHT_SYNTAX]);
}
}
@@ -1808,36 +1839,38 @@ void
gtk_source_buffer_set_language (GtkSourceBuffer *buffer,
GtkSourceLanguage *language)
{
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
+
g_return_if_fail (GTK_SOURCE_IS_BUFFER (buffer));
g_return_if_fail (GTK_SOURCE_IS_LANGUAGE (language) || language == NULL);
- if (!g_set_object (&buffer->priv->language, language))
+ if (!g_set_object (&priv->language, language))
{
return;
}
- if (buffer->priv->highlight_engine != NULL)
+ if (priv->highlight_engine != NULL)
{
/* disconnect the old engine */
- _gtk_source_engine_attach_buffer (buffer->priv->highlight_engine, NULL);
- g_object_unref (buffer->priv->highlight_engine);
- buffer->priv->highlight_engine = NULL;
+ _gtk_source_engine_attach_buffer (priv->highlight_engine, NULL);
+ g_object_unref (priv->highlight_engine);
+ priv->highlight_engine = NULL;
}
if (language != NULL)
{
/* get a new engine */
- buffer->priv->highlight_engine = _gtk_source_language_create_engine (language);
+ priv->highlight_engine = _gtk_source_language_create_engine (language);
- if (buffer->priv->highlight_engine != NULL)
+ if (priv->highlight_engine != NULL)
{
- _gtk_source_engine_attach_buffer (buffer->priv->highlight_engine,
+ _gtk_source_engine_attach_buffer (priv->highlight_engine,
GTK_TEXT_BUFFER (buffer));
- if (buffer->priv->style_scheme != NULL)
+ if (priv->style_scheme != NULL)
{
- _gtk_source_engine_set_style_scheme (buffer->priv->highlight_engine,
- buffer->priv->style_scheme);
+ _gtk_source_engine_set_style_scheme (priv->highlight_engine,
+ priv->style_scheme);
}
}
}
@@ -1859,9 +1892,11 @@ gtk_source_buffer_set_language (GtkSourceBuffer *buffer,
GtkSourceLanguage *
gtk_source_buffer_get_language (GtkSourceBuffer *buffer)
{
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
+
g_return_val_if_fail (GTK_SOURCE_IS_BUFFER (buffer), NULL);
- return buffer->priv->language;
+ return priv->language;
}
/*
@@ -1879,11 +1914,13 @@ _gtk_source_buffer_update_syntax_highlight (GtkSourceBuffer *buffer,
const GtkTextIter *end,
gboolean synchronous)
{
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
+
g_return_if_fail (GTK_SOURCE_IS_BUFFER (buffer));
- if (buffer->priv->highlight_engine != NULL)
+ if (priv->highlight_engine != NULL)
{
- _gtk_source_engine_update_highlight (buffer->priv->highlight_engine,
+ _gtk_source_engine_update_highlight (priv->highlight_engine,
start,
end,
synchronous);
@@ -1896,11 +1933,12 @@ _gtk_source_buffer_update_search_highlight (GtkSourceBuffer *buffer,
const GtkTextIter *end,
gboolean synchronous)
{
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
GList *l;
g_return_if_fail (GTK_SOURCE_IS_BUFFER (buffer));
- for (l = buffer->priv->search_contexts; l != NULL; l = l->next)
+ for (l = priv->search_contexts; l != NULL; l = l->next)
{
GtkSourceSearchContext *search_context = l->data;
@@ -1959,16 +1997,18 @@ void
gtk_source_buffer_set_style_scheme (GtkSourceBuffer *buffer,
GtkSourceStyleScheme *scheme)
{
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
+
g_return_if_fail (GTK_SOURCE_IS_BUFFER (buffer));
g_return_if_fail (GTK_SOURCE_IS_STYLE_SCHEME (scheme) || scheme == NULL);
- if (g_set_object (&buffer->priv->style_scheme, scheme))
+ if (g_set_object (&priv->style_scheme, scheme))
{
update_bracket_match_style (buffer);
- if (buffer->priv->highlight_engine != NULL)
+ if (priv->highlight_engine != NULL)
{
- _gtk_source_engine_set_style_scheme (buffer->priv->highlight_engine, scheme);
+ _gtk_source_engine_set_style_scheme (priv->highlight_engine, scheme);
}
g_object_notify_by_pspec (G_OBJECT (buffer), buffer_properties[PROP_STYLE_SCHEME]);
@@ -1989,29 +2029,33 @@ gtk_source_buffer_set_style_scheme (GtkSourceBuffer *buffer,
GtkSourceStyleScheme *
gtk_source_buffer_get_style_scheme (GtkSourceBuffer *buffer)
{
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
+
g_return_val_if_fail (GTK_SOURCE_IS_BUFFER (buffer), NULL);
- return buffer->priv->style_scheme;
+ return priv->style_scheme;
}
static void
add_source_mark (GtkSourceBuffer *buffer,
GtkSourceMark *mark)
{
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
+
const gchar *category;
GtkSourceMarksSequence *seq;
- _gtk_source_marks_sequence_add (buffer->priv->all_source_marks,
+ _gtk_source_marks_sequence_add (priv->all_source_marks,
GTK_TEXT_MARK (mark));
category = gtk_source_mark_get_category (mark);
- seq = g_hash_table_lookup (buffer->priv->source_marks, category);
+ seq = g_hash_table_lookup (priv->source_marks, category);
if (seq == NULL)
{
seq = _gtk_source_marks_sequence_new (GTK_TEXT_BUFFER (buffer));
- g_hash_table_insert (buffer->priv->source_marks,
+ g_hash_table_insert (priv->source_marks,
g_strdup (category),
seq);
}
@@ -2046,15 +2090,16 @@ gtk_source_buffer_real_mark_deleted (GtkTextBuffer *buffer,
if (GTK_SOURCE_IS_MARK (mark))
{
GtkSourceBuffer *source_buffer = GTK_SOURCE_BUFFER (buffer);
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (source_buffer);
const gchar *category;
GtkSourceMarksSequence *seq;
category = gtk_source_mark_get_category (GTK_SOURCE_MARK (mark));
- seq = g_hash_table_lookup (source_buffer->priv->source_marks, category);
+ seq = g_hash_table_lookup (priv->source_marks, category);
if (_gtk_source_marks_sequence_is_empty (seq))
{
- g_hash_table_remove (source_buffer->priv->source_marks, category);
+ g_hash_table_remove (priv->source_marks, category);
}
g_signal_emit (buffer, buffer_signals[SOURCE_MARK_UPDATED], 0, mark);
@@ -2069,17 +2114,21 @@ gtk_source_buffer_real_mark_deleted (GtkTextBuffer *buffer,
static void
gtk_source_buffer_real_undo (GtkSourceBuffer *buffer)
{
- g_return_if_fail (gtk_source_undo_manager_can_undo (buffer->priv->undo_manager));
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
- gtk_source_undo_manager_undo (buffer->priv->undo_manager);
+ g_return_if_fail (gtk_source_undo_manager_can_undo (priv->undo_manager));
+
+ gtk_source_undo_manager_undo (priv->undo_manager);
}
static void
gtk_source_buffer_real_redo (GtkSourceBuffer *buffer)
{
- g_return_if_fail (gtk_source_undo_manager_can_redo (buffer->priv->undo_manager));
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
+
+ g_return_if_fail (gtk_source_undo_manager_can_redo (priv->undo_manager));
- gtk_source_undo_manager_redo (buffer->priv->undo_manager);
+ gtk_source_undo_manager_redo (priv->undo_manager);
}
/**
@@ -2137,9 +2186,11 @@ static GtkSourceMarksSequence *
get_marks_sequence (GtkSourceBuffer *buffer,
const gchar *category)
{
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
+
return category == NULL ?
- buffer->priv->all_source_marks :
- g_hash_table_lookup (buffer->priv->source_marks, category);
+ priv->all_source_marks :
+ g_hash_table_lookup (priv->source_marks, category);
}
GtkSourceMark *
@@ -2380,11 +2431,13 @@ gtk_source_buffer_remove_source_marks (GtkSourceBuffer *buffer,
gboolean
_gtk_source_buffer_has_source_marks (GtkSourceBuffer *buffer)
{
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
+
g_return_val_if_fail (GTK_SOURCE_IS_BUFFER (buffer), FALSE);
- if (buffer->priv->all_source_marks != NULL)
+ if (priv->all_source_marks != NULL)
{
- return !_gtk_source_marks_sequence_is_empty (buffer->priv->all_source_marks);
+ return !_gtk_source_marks_sequence_is_empty (priv->all_source_marks);
}
return FALSE;
@@ -2582,6 +2635,7 @@ gtk_source_buffer_iter_backward_to_context_class_toggle (GtkSourceBuffer *buffer
void
_gtk_source_buffer_save_and_clear_selection (GtkSourceBuffer *buffer)
{
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
GtkTextBuffer *buf;
g_return_if_fail (GTK_SOURCE_IS_BUFFER (buffer));
@@ -2597,13 +2651,13 @@ _gtk_source_buffer_save_and_clear_selection (GtkSourceBuffer *buffer)
GtkTextIter insert_iter;
GtkTextIter selection_bound_iter;
- g_assert (buffer->priv->tmp_insert_mark == NULL);
- g_assert (buffer->priv->tmp_selection_bound_mark == NULL);
+ g_assert (priv->tmp_insert_mark == NULL);
+ g_assert (priv->tmp_selection_bound_mark == NULL);
gtk_text_buffer_get_iter_at_mark (buf, &insert_iter, gtk_text_buffer_get_insert (buf));
gtk_text_buffer_get_iter_at_mark (buf, &selection_bound_iter,
gtk_text_buffer_get_selection_bound (buf));
- buffer->priv->tmp_insert_mark = gtk_text_buffer_create_mark (buf, NULL, &insert_iter, FALSE);
- buffer->priv->tmp_selection_bound_mark = gtk_text_buffer_create_mark (buf, NULL,
&selection_bound_iter, FALSE);
+ priv->tmp_insert_mark = gtk_text_buffer_create_mark (buf, NULL, &insert_iter, FALSE);
+ priv->tmp_selection_bound_mark = gtk_text_buffer_create_mark (buf, NULL,
&selection_bound_iter, FALSE);
gtk_text_buffer_place_cursor (buf, &insert_iter);
}
@@ -2612,10 +2666,12 @@ _gtk_source_buffer_save_and_clear_selection (GtkSourceBuffer *buffer)
void
_gtk_source_buffer_restore_selection (GtkSourceBuffer *buffer)
{
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
+
g_return_if_fail (GTK_SOURCE_IS_BUFFER (buffer));
- if (buffer->priv->tmp_insert_mark != NULL &&
- buffer->priv->tmp_selection_bound_mark != NULL)
+ if (priv->tmp_insert_mark != NULL &&
+ priv->tmp_selection_bound_mark != NULL)
{
GtkTextBuffer *buf;
GtkTextIter insert_iter;
@@ -2623,15 +2679,15 @@ _gtk_source_buffer_restore_selection (GtkSourceBuffer *buffer)
buf = GTK_TEXT_BUFFER (buffer);
- gtk_text_buffer_get_iter_at_mark (buf, &insert_iter, buffer->priv->tmp_insert_mark);
- gtk_text_buffer_get_iter_at_mark (buf, &selection_bound_iter,
buffer->priv->tmp_selection_bound_mark);
+ gtk_text_buffer_get_iter_at_mark (buf, &insert_iter, priv->tmp_insert_mark);
+ gtk_text_buffer_get_iter_at_mark (buf, &selection_bound_iter, priv->tmp_selection_bound_mark);
gtk_text_buffer_select_range (buf, &insert_iter, &selection_bound_iter);
- gtk_text_buffer_delete_mark (buf, buffer->priv->tmp_insert_mark);
- gtk_text_buffer_delete_mark (buf, buffer->priv->tmp_selection_bound_mark);
- buffer->priv->tmp_insert_mark = NULL;
- buffer->priv->tmp_selection_bound_mark = NULL;
+ gtk_text_buffer_delete_mark (buf, priv->tmp_insert_mark);
+ gtk_text_buffer_delete_mark (buf, priv->tmp_selection_bound_mark);
+ priv->tmp_insert_mark = NULL;
+ priv->tmp_selection_bound_mark = NULL;
}
}
@@ -3148,6 +3204,8 @@ void
gtk_source_buffer_set_undo_manager (GtkSourceBuffer *buffer,
GtkSourceUndoManager *manager)
{
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
+
g_return_if_fail (GTK_SOURCE_IS_BUFFER (buffer));
g_return_if_fail (manager == NULL || GTK_SOURCE_IS_UNDO_MANAGER (manager));
@@ -3155,7 +3213,7 @@ gtk_source_buffer_set_undo_manager (GtkSourceBuffer *buffer,
{
manager = g_object_new (GTK_SOURCE_TYPE_UNDO_MANAGER_DEFAULT,
"buffer", buffer,
- "max-undo-levels", buffer->priv->max_undo_levels,
+ "max-undo-levels", priv->max_undo_levels,
NULL);
}
else
@@ -3183,25 +3241,29 @@ gtk_source_buffer_set_undo_manager (GtkSourceBuffer *buffer,
GtkSourceUndoManager *
gtk_source_buffer_get_undo_manager (GtkSourceBuffer *buffer)
{
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
+
g_return_val_if_fail (GTK_SOURCE_IS_BUFFER (buffer), NULL);
- return buffer->priv->undo_manager;
+ return priv->undo_manager;
}
void
_gtk_source_buffer_add_search_context (GtkSourceBuffer *buffer,
GtkSourceSearchContext *search_context)
{
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
+
g_return_if_fail (GTK_SOURCE_IS_BUFFER (buffer));
g_return_if_fail (GTK_SOURCE_IS_SEARCH_CONTEXT (search_context));
g_return_if_fail (gtk_source_search_context_get_buffer (search_context) == buffer);
- if (g_list_find (buffer->priv->search_contexts, search_context) != NULL)
+ if (g_list_find (priv->search_contexts, search_context) != NULL)
{
return;
}
- buffer->priv->search_contexts = g_list_prepend (buffer->priv->search_contexts,
+ priv->search_contexts = g_list_prepend (priv->search_contexts,
search_context);
g_object_weak_ref (G_OBJECT (search_context),
@@ -3214,14 +3276,15 @@ sync_invalid_char_tag (GtkSourceBuffer *buffer,
GParamSpec *pspec,
gpointer data)
{
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
GtkSourceStyle *style = NULL;
- if (buffer->priv->style_scheme != NULL)
+ if (priv->style_scheme != NULL)
{
- style = gtk_source_style_scheme_get_style (buffer->priv->style_scheme, "def:error");
+ style = gtk_source_style_scheme_get_style (priv->style_scheme, "def:error");
}
- gtk_source_style_apply (style, buffer->priv->invalid_char_tag);
+ gtk_source_style_apply (style, priv->invalid_char_tag);
}
static void
@@ -3241,9 +3304,11 @@ _gtk_source_buffer_set_as_invalid_character (GtkSourceBuffer *buffer,
const GtkTextIter *start,
const GtkTextIter *end)
{
- if (buffer->priv->invalid_char_tag == NULL)
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
+
+ if (priv->invalid_char_tag == NULL)
{
- buffer->priv->invalid_char_tag = gtk_text_buffer_create_tag (GTK_TEXT_BUFFER (buffer),
+ priv->invalid_char_tag = gtk_text_buffer_create_tag (GTK_TEXT_BUFFER (buffer),
"invalid-char-style",
NULL);
@@ -3258,11 +3323,11 @@ _gtk_source_buffer_set_as_invalid_character (GtkSourceBuffer *buffer,
/* Make sure the 'error' tag has the priority over
* syntax highlighting tags.
*/
- text_tag_set_highest_priority (buffer->priv->invalid_char_tag,
+ text_tag_set_highest_priority (priv->invalid_char_tag,
GTK_TEXT_BUFFER (buffer));
gtk_text_buffer_apply_tag (GTK_TEXT_BUFFER (buffer),
- buffer->priv->invalid_char_tag,
+ priv->invalid_char_tag,
start,
end);
}
@@ -3270,19 +3335,20 @@ _gtk_source_buffer_set_as_invalid_character (GtkSourceBuffer *buffer,
gboolean
_gtk_source_buffer_has_invalid_chars (GtkSourceBuffer *buffer)
{
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
GtkTextIter start;
g_return_val_if_fail (GTK_SOURCE_IS_BUFFER (buffer), FALSE);
- if (buffer->priv->invalid_char_tag == NULL)
+ if (priv->invalid_char_tag == NULL)
{
return FALSE;
}
gtk_text_buffer_get_start_iter (GTK_TEXT_BUFFER (buffer), &start);
- if (gtk_text_iter_starts_tag (&start, buffer->priv->invalid_char_tag) ||
- gtk_text_iter_forward_to_tag_toggle (&start, buffer->priv->invalid_char_tag))
+ if (gtk_text_iter_starts_tag (&start, priv->invalid_char_tag) ||
+ gtk_text_iter_forward_to_tag_toggle (&start, priv->invalid_char_tag))
{
return TRUE;
}
@@ -3317,13 +3383,15 @@ void
gtk_source_buffer_set_implicit_trailing_newline (GtkSourceBuffer *buffer,
gboolean implicit_trailing_newline)
{
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
+
g_return_if_fail (GTK_SOURCE_IS_BUFFER (buffer));
implicit_trailing_newline = implicit_trailing_newline != FALSE;
- if (buffer->priv->implicit_trailing_newline != implicit_trailing_newline)
+ if (priv->implicit_trailing_newline != implicit_trailing_newline)
{
- buffer->priv->implicit_trailing_newline = implicit_trailing_newline;
+ priv->implicit_trailing_newline = implicit_trailing_newline;
g_object_notify_by_pspec (G_OBJECT (buffer),
buffer_properties[PROP_IMPLICIT_TRAILING_NEWLINE]);
}
}
@@ -3338,9 +3406,11 @@ gtk_source_buffer_set_implicit_trailing_newline (GtkSourceBuffer *buffer,
gboolean
gtk_source_buffer_get_implicit_trailing_newline (GtkSourceBuffer *buffer)
{
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
+
g_return_val_if_fail (GTK_SOURCE_IS_BUFFER (buffer), TRUE);
- return buffer->priv->implicit_trailing_newline;
+ return priv->implicit_trailing_newline;
}
/**
@@ -3405,7 +3475,9 @@ gtk_source_buffer_create_source_tag (GtkSourceBuffer *buffer,
gboolean
_gtk_source_buffer_has_spaces_tag (GtkSourceBuffer *buffer)
{
+ GtkSourceBufferPrivate *priv = gtk_source_buffer_get_instance_private (buffer);
+
g_return_val_if_fail (GTK_SOURCE_IS_BUFFER (buffer), FALSE);
- return buffer->priv->has_draw_spaces_tag;
+ return priv->has_draw_spaces_tag;
}
diff --git a/gtksourceview/gtksourcebuffer.h b/gtksourceview/gtksourcebuffer.h
index 40307380..c6dda139 100644
--- a/gtksourceview/gtksourcebuffer.h
+++ b/gtksourceview/gtksourcebuffer.h
@@ -33,15 +33,10 @@
G_BEGIN_DECLS
-#define GTK_SOURCE_TYPE_BUFFER (gtk_source_buffer_get_type ())
-#define GTK_SOURCE_BUFFER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_SOURCE_TYPE_BUFFER,
GtkSourceBuffer))
-#define GTK_SOURCE_BUFFER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_SOURCE_TYPE_BUFFER,
GtkSourceBufferClass))
-#define GTK_SOURCE_IS_BUFFER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_SOURCE_TYPE_BUFFER))
-#define GTK_SOURCE_IS_BUFFER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_SOURCE_TYPE_BUFFER))
-#define GTK_SOURCE_BUFFER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_SOURCE_TYPE_BUFFER,
GtkSourceBufferClass))
+#define GTK_SOURCE_TYPE_BUFFER (gtk_source_buffer_get_type())
-typedef struct _GtkSourceBufferClass GtkSourceBufferClass;
-typedef struct _GtkSourceBufferPrivate GtkSourceBufferPrivate;
+GTK_SOURCE_AVAILABLE_IN_ALL
+G_DECLARE_DERIVABLE_TYPE (GtkSourceBuffer, gtk_source_buffer, GTK_SOURCE, BUFFER, GtkTextBuffer)
/**
* GtkSourceBracketMatchType:
@@ -93,13 +88,6 @@ typedef enum _GtkSourceSortFlags
GTK_SOURCE_SORT_FLAGS_REMOVE_DUPLICATES = 1 << 2,
} GtkSourceSortFlags;
-struct _GtkSourceBuffer
-{
- GtkTextBuffer parent_instance;
-
- GtkSourceBufferPrivate *priv;
-};
-
struct _GtkSourceBufferClass
{
GtkTextBufferClass parent_class;
@@ -117,160 +105,121 @@ struct _GtkSourceBufferClass
};
GTK_SOURCE_AVAILABLE_IN_ALL
-GType gtk_source_buffer_get_type (void) G_GNUC_CONST;
-
+GtkSourceBuffer *gtk_source_buffer_new (GtkTextTagTable
*table);
GTK_SOURCE_AVAILABLE_IN_ALL
-GtkSourceBuffer *gtk_source_buffer_new (GtkTextTagTable
*table);
-
+GtkSourceBuffer *gtk_source_buffer_new_with_language (GtkSourceLanguage
*language);
GTK_SOURCE_AVAILABLE_IN_ALL
-GtkSourceBuffer *gtk_source_buffer_new_with_language (GtkSourceLanguage
*language);
-
+gboolean gtk_source_buffer_get_highlight_syntax (GtkSourceBuffer
*buffer);
GTK_SOURCE_AVAILABLE_IN_ALL
-gboolean gtk_source_buffer_get_highlight_syntax (GtkSourceBuffer
*buffer);
-
-GTK_SOURCE_AVAILABLE_IN_ALL
-void gtk_source_buffer_set_highlight_syntax (GtkSourceBuffer
*buffer,
- gboolean
highlight);
-
+void gtk_source_buffer_set_highlight_syntax (GtkSourceBuffer
*buffer,
+ gboolean
highlight);
GTK_SOURCE_AVAILABLE_IN_ALL
-gboolean gtk_source_buffer_get_highlight_matching_brackets (GtkSourceBuffer
*buffer);
-
+gboolean gtk_source_buffer_get_highlight_matching_brackets (GtkSourceBuffer
*buffer);
GTK_SOURCE_AVAILABLE_IN_ALL
-void gtk_source_buffer_set_highlight_matching_brackets (GtkSourceBuffer
*buffer,
- gboolean
highlight);
-
+void gtk_source_buffer_set_highlight_matching_brackets (GtkSourceBuffer
*buffer,
+ gboolean
highlight);
GTK_SOURCE_AVAILABLE_IN_ALL
-gint gtk_source_buffer_get_max_undo_levels (GtkSourceBuffer
*buffer);
-
+gint gtk_source_buffer_get_max_undo_levels (GtkSourceBuffer
*buffer);
GTK_SOURCE_AVAILABLE_IN_ALL
-void gtk_source_buffer_set_max_undo_levels (GtkSourceBuffer
*buffer,
- gint
max_undo_levels);
-
+void gtk_source_buffer_set_max_undo_levels (GtkSourceBuffer
*buffer,
+ gint
max_undo_levels);
GTK_SOURCE_AVAILABLE_IN_ALL
-GtkSourceLanguage *gtk_source_buffer_get_language (GtkSourceBuffer
*buffer);
-
+GtkSourceLanguage *gtk_source_buffer_get_language (GtkSourceBuffer
*buffer);
GTK_SOURCE_AVAILABLE_IN_ALL
-void gtk_source_buffer_set_language (GtkSourceBuffer
*buffer,
- GtkSourceLanguage
*language);
-
+void gtk_source_buffer_set_language (GtkSourceBuffer
*buffer,
+ GtkSourceLanguage
*language);
GTK_SOURCE_AVAILABLE_IN_ALL
-gboolean gtk_source_buffer_can_undo (GtkSourceBuffer
*buffer);
-
+gboolean gtk_source_buffer_can_undo (GtkSourceBuffer
*buffer);
GTK_SOURCE_AVAILABLE_IN_ALL
-gboolean gtk_source_buffer_can_redo (GtkSourceBuffer
*buffer);
-
+gboolean gtk_source_buffer_can_redo (GtkSourceBuffer
*buffer);
GTK_SOURCE_AVAILABLE_IN_ALL
-GtkSourceStyleScheme *gtk_source_buffer_get_style_scheme (GtkSourceBuffer
*buffer);
-
+GtkSourceStyleScheme *gtk_source_buffer_get_style_scheme (GtkSourceBuffer
*buffer);
GTK_SOURCE_AVAILABLE_IN_ALL
-void gtk_source_buffer_set_style_scheme (GtkSourceBuffer
*buffer,
- GtkSourceStyleScheme
*scheme);
-
+void gtk_source_buffer_set_style_scheme (GtkSourceBuffer
*buffer,
+ GtkSourceStyleScheme
*scheme);
GTK_SOURCE_AVAILABLE_IN_ALL
-void gtk_source_buffer_ensure_highlight (GtkSourceBuffer
*buffer,
- const GtkTextIter
*start,
- const GtkTextIter *end);
-
+void gtk_source_buffer_ensure_highlight (GtkSourceBuffer
*buffer,
+ const GtkTextIter
*start,
+ const GtkTextIter
*end);
GTK_SOURCE_AVAILABLE_IN_ALL
-void gtk_source_buffer_undo (GtkSourceBuffer
*buffer);
-
+void gtk_source_buffer_undo (GtkSourceBuffer
*buffer);
GTK_SOURCE_AVAILABLE_IN_ALL
-void gtk_source_buffer_redo (GtkSourceBuffer
*buffer);
-
+void gtk_source_buffer_redo (GtkSourceBuffer
*buffer);
GTK_SOURCE_AVAILABLE_IN_ALL
-void gtk_source_buffer_begin_not_undoable_action (GtkSourceBuffer
*buffer);
-
+void gtk_source_buffer_begin_not_undoable_action (GtkSourceBuffer
*buffer);
GTK_SOURCE_AVAILABLE_IN_ALL
-void gtk_source_buffer_end_not_undoable_action (GtkSourceBuffer
*buffer);
-
+void gtk_source_buffer_end_not_undoable_action (GtkSourceBuffer
*buffer);
GTK_SOURCE_AVAILABLE_IN_ALL
-GtkSourceMark *gtk_source_buffer_create_source_mark (GtkSourceBuffer
*buffer,
- const gchar *name,
- const gchar
*category,
- const GtkTextIter
*where);
-
+GtkSourceMark *gtk_source_buffer_create_source_mark (GtkSourceBuffer
*buffer,
+ const gchar
*name,
+ const gchar
*category,
+ const GtkTextIter
*where);
GTK_SOURCE_AVAILABLE_IN_ALL
-gboolean gtk_source_buffer_forward_iter_to_source_mark (GtkSourceBuffer
*buffer,
- GtkTextIter *iter,
- const gchar
*category);
-
+gboolean gtk_source_buffer_forward_iter_to_source_mark (GtkSourceBuffer
*buffer,
+ GtkTextIter
*iter,
+ const gchar
*category);
GTK_SOURCE_AVAILABLE_IN_ALL
-gboolean gtk_source_buffer_backward_iter_to_source_mark (GtkSourceBuffer
*buffer,
- GtkTextIter *iter,
- const gchar
*category);
-
+gboolean gtk_source_buffer_backward_iter_to_source_mark (GtkSourceBuffer
*buffer,
+ GtkTextIter
*iter,
+ const gchar
*category);
GTK_SOURCE_AVAILABLE_IN_ALL
-GSList *gtk_source_buffer_get_source_marks_at_iter (GtkSourceBuffer
*buffer,
- GtkTextIter *iter,
- const gchar
*category);
-
+GSList *gtk_source_buffer_get_source_marks_at_iter (GtkSourceBuffer
*buffer,
+ GtkTextIter
*iter,
+ const gchar
*category);
GTK_SOURCE_AVAILABLE_IN_ALL
-GSList *gtk_source_buffer_get_source_marks_at_line (GtkSourceBuffer
*buffer,
- gint line,
- const gchar
*category);
-
+GSList *gtk_source_buffer_get_source_marks_at_line (GtkSourceBuffer
*buffer,
+ gint
line,
+ const gchar
*category);
GTK_SOURCE_AVAILABLE_IN_ALL
-void gtk_source_buffer_remove_source_marks (GtkSourceBuffer
*buffer,
- const GtkTextIter
*start,
- const GtkTextIter *end,
- const gchar
*category);
-
+void gtk_source_buffer_remove_source_marks (GtkSourceBuffer
*buffer,
+ const GtkTextIter
*start,
+ const GtkTextIter *end,
+ const gchar
*category);
GTK_SOURCE_AVAILABLE_IN_ALL
-gboolean gtk_source_buffer_iter_has_context_class (GtkSourceBuffer
*buffer,
- const GtkTextIter *iter,
- const gchar
*context_class);
-
+gboolean gtk_source_buffer_iter_has_context_class (GtkSourceBuffer
*buffer,
+ const GtkTextIter
*iter,
+ const gchar
*context_class);
GTK_SOURCE_AVAILABLE_IN_ALL
-gchar **gtk_source_buffer_get_context_classes_at_iter (GtkSourceBuffer
*buffer,
- const GtkTextIter
*iter);
-
+gchar **gtk_source_buffer_get_context_classes_at_iter (GtkSourceBuffer
*buffer,
+ const GtkTextIter
*iter);
GTK_SOURCE_AVAILABLE_IN_ALL
-gboolean gtk_source_buffer_iter_forward_to_context_class_toggle (GtkSourceBuffer
*buffer,
- GtkTextIter *iter,
- const gchar
*context_class);
-
+gboolean gtk_source_buffer_iter_forward_to_context_class_toggle (GtkSourceBuffer
*buffer,
+ GtkTextIter
*iter,
+ const gchar
*context_class);
GTK_SOURCE_AVAILABLE_IN_ALL
-gboolean gtk_source_buffer_iter_backward_to_context_class_toggle
- (GtkSourceBuffer
*buffer,
- GtkTextIter *iter,
- const gchar
*context_class);
-
+gboolean gtk_source_buffer_iter_backward_to_context_class_toggle (GtkSourceBuffer
*buffer,
+ GtkTextIter
*iter,
+ const gchar
*context_class);
GTK_SOURCE_AVAILABLE_IN_3_12
-void gtk_source_buffer_change_case (GtkSourceBuffer
*buffer,
- GtkSourceChangeCaseType
case_type,
- GtkTextIter
*start,
- GtkTextIter *end);
-
+void gtk_source_buffer_change_case (GtkSourceBuffer
*buffer,
+ GtkSourceChangeCaseType
case_type,
+ GtkTextIter
*start,
+ GtkTextIter
*end);
GTK_SOURCE_AVAILABLE_IN_3_16
-void gtk_source_buffer_join_lines (GtkSourceBuffer
*buffer,
- GtkTextIter
*start,
- GtkTextIter *end);
-
+void gtk_source_buffer_join_lines (GtkSourceBuffer
*buffer,
+ GtkTextIter
*start,
+ GtkTextIter
*end);
GTK_SOURCE_AVAILABLE_IN_3_18
-void gtk_source_buffer_sort_lines (GtkSourceBuffer
*buffer,
- GtkTextIter
*start,
- GtkTextIter *end,
- GtkSourceSortFlags flags,
- gint
column);
-
+void gtk_source_buffer_sort_lines (GtkSourceBuffer
*buffer,
+ GtkTextIter
*start,
+ GtkTextIter *end,
+ GtkSourceSortFlags
flags,
+ gint
column);
GTK_SOURCE_AVAILABLE_IN_ALL
-GtkSourceUndoManager *gtk_source_buffer_get_undo_manager (GtkSourceBuffer
*buffer);
-
+GtkSourceUndoManager *gtk_source_buffer_get_undo_manager (GtkSourceBuffer
*buffer);
GTK_SOURCE_AVAILABLE_IN_ALL
-void gtk_source_buffer_set_undo_manager (GtkSourceBuffer
*buffer,
- GtkSourceUndoManager
*manager);
-
+void gtk_source_buffer_set_undo_manager (GtkSourceBuffer
*buffer,
+ GtkSourceUndoManager
*manager);
GTK_SOURCE_AVAILABLE_IN_3_14
-void gtk_source_buffer_set_implicit_trailing_newline (GtkSourceBuffer
*buffer,
- gboolean
implicit_trailing_newline);
-
+void gtk_source_buffer_set_implicit_trailing_newline (GtkSourceBuffer
*buffer,
+ gboolean
implicit_trailing_newline);
GTK_SOURCE_AVAILABLE_IN_3_14
-gboolean gtk_source_buffer_get_implicit_trailing_newline (GtkSourceBuffer
*buffer);
-
+gboolean gtk_source_buffer_get_implicit_trailing_newline (GtkSourceBuffer
*buffer);
GTK_SOURCE_AVAILABLE_IN_ALL
-GtkTextTag *gtk_source_buffer_create_source_tag (GtkSourceBuffer
*buffer,
- const gchar
*tag_name,
- const gchar
*first_property_name,
- ...);
+GtkTextTag *gtk_source_buffer_create_source_tag (GtkSourceBuffer
*buffer,
+ const gchar
*tag_name,
+ const gchar
*first_property_name,
+ ...);
+
G_END_DECLS
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]