[gnome-builder/wip/gtk4-port: 104/736] libide/sourceview: start tearing apart more of IdeSourceView
- From: Christian Hergert <chergert src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-builder/wip/gtk4-port: 104/736] libide/sourceview: start tearing apart more of IdeSourceView
- Date: Tue, 26 Apr 2022 01:46:12 +0000 (UTC)
commit f069f401872d513b7c4171dd65cd9b54fab281cb
Author: Christian Hergert <chergert redhat com>
Date: Sun Mar 27 00:28:08 2022 -0700
libide/sourceview: start tearing apart more of IdeSourceView
We will end up with something much more minimal than we have, and can
probably bring a lot over from EditorSourceView and friends. The amount
we have in this class is just too much.
src/libide/sourceview/ide-source-view.c | 491 +++-----------------------------
src/libide/sourceview/ide-source-view.h | 431 ++++------------------------
2 files changed, 88 insertions(+), 834 deletions(-)
---
diff --git a/src/libide/sourceview/ide-source-view.c b/src/libide/sourceview/ide-source-view.c
index 3254f15eb..c04dbcba5 100644
--- a/src/libide/sourceview/ide-source-view.c
+++ b/src/libide/sourceview/ide-source-view.c
@@ -65,11 +65,9 @@
#define ALL_ACCELS_MASK (GDK_CONTROL_MASK | GDK_SHIFT_MASK | GDK_MOD1_MASK)
-#define _GDK_RECTANGLE_X2(rect) dzl_cairo_rectangle_x2(rect)
-#define _GDK_RECTANGLE_Y2(rect) dzl_cairo_rectangle_y2(rect)
-#define _GDK_RECTANGLE_CONTAINS(rect,other) dzl_cairo_rectangle_contains_rectangle(rect,other)
-#define _GDK_RECTANGLE_CENTER_X(rect) dzl_cairo_rectangle_center(rect)
-#define _GDK_RECTANGLE_CENTER_Y(rect) dzl_cairo_rectangle_middle(rect)
+#define _GDK_RECTANGLE_X2(r) ((r)->x + (r)->width)
+#define _GDK_RECTANGLE_Y2(r) ((r)->y + (r)->height)
+#define _GDK_RECTANGLE_CONTAINS(rect,other) rectangle_contains_rectangle(rect,other)
#define TRACE_RECTANGLE(name, rect) \
IDE_TRACE_MSG ("%s = Rectangle(x=%d, y=%d, width=%d, height=%d)", \
name, (rect)->x, (rect)->y, (rect)->width, (rect)->height)
@@ -99,7 +97,7 @@ typedef struct
IdeHover *hover;
DzlBindingGroup *file_setting_bindings;
- DzlSignalGroup *buffer_signals;
+ IdeSignalGroup *buffer_signals;
guint change_sequence;
@@ -300,6 +298,16 @@ static void ide_source_view_maybe_overwrite (IdeSourceView
const gchar *text,
gint len);
+static inline cairo_bool_t
+rectangle_contains_rectangle (const cairo_rectangle_int_t *a,
+ const cairo_rectangle_int_t *b)
+{
+ return (a->x <= b->x &&
+ a->x + (int) a->width >= b->x + (int) b->width &&
+ a->y <= b->y &&
+ a->y + (int) a->height >= b->y + (int) b->height);
+}
+
static gpointer
get_selection_owner (IdeSourceView *self)
{
@@ -450,7 +458,7 @@ ide_source_view_block_handlers (IdeSourceView *self)
g_assert (IDE_IS_SOURCE_VIEW (self));
- dzl_signal_group_block (priv->buffer_signals);
+ ide_signal_group_block (priv->buffer_signals);
}
static void
@@ -460,7 +468,7 @@ ide_source_view_unblock_handlers (IdeSourceView *self)
g_assert (IDE_IS_SOURCE_VIEW (self));
- dzl_signal_group_unblock (priv->buffer_signals);
+ ide_signal_group_unblock (priv->buffer_signals);
}
static void
@@ -1263,7 +1271,7 @@ ide_source_view__buffer__notify_can_undo (IdeSourceView *self,
static void
ide_source_view_bind_buffer (IdeSourceView *self,
IdeBuffer *buffer,
- DzlSignalGroup *group)
+ IdeSignalGroup *group)
{
IdeSourceViewPrivate *priv = ide_source_view_get_instance_private (self);
g_autoptr(IdeContext) context = NULL;
@@ -1334,7 +1342,7 @@ ide_source_view_bind_buffer (IdeSourceView *self,
static void
ide_source_view_unbind_buffer (IdeSourceView *self,
- DzlSignalGroup *group)
+ IdeSignalGroup *group)
{
IdeSourceViewPrivate *priv = ide_source_view_get_instance_private (self);
@@ -3241,71 +3249,6 @@ ide_source_view_update_display_name (IdeSourceView *self)
}
}
-static void
-ide_source_view_real_set_mode (IdeSourceView *self,
- const gchar *mode,
- IdeSourceViewModeType type)
-{
- IdeSourceViewPrivate *priv = ide_source_view_get_instance_private (self);
- g_autofree gchar *suggested_default = NULL;
- gboolean overwrite;
-
- IDE_ENTRY;
-
- g_assert (IDE_IS_SOURCE_VIEW (self));
-
- if (!priv->buffer)
- IDE_EXIT;
-
-#ifdef IDE_ENABLE_TRACE
- {
- const gchar *old_mode = "null";
-
- if (priv->mode)
- old_mode = ide_source_view_mode_get_name (priv->mode);
- IDE_TRACE_MSG ("transition from mode (%s) to (%s)", old_mode, mode ?: "<default>");
- }
-#endif
-
- ide_source_view_save_column (self);
-
- if (priv->mode)
- {
- IdeSourceViewMode *old_mode = g_object_ref (priv->mode);
- const gchar *str;
-
- /* see if this mode suggested a default next mode */
- str = ide_source_view_mode_get_default_mode (old_mode);
- suggested_default = g_strdup (str);
-
- g_clear_object (&priv->mode);
- g_object_unref (old_mode);
- }
-
- if (mode == NULL)
- {
- mode = suggested_default ?: "default";
- type = IDE_SOURCE_VIEW_MODE_TYPE_PERMANENT;
- }
-
- /* reset the count when switching to permanent mode */
- if (type == IDE_SOURCE_VIEW_MODE_TYPE_PERMANENT)
- priv->count = 0;
-
- priv->mode = _ide_source_view_mode_new (GTK_WIDGET (self), mode, type);
-
- overwrite = ide_source_view_mode_get_block_cursor (priv->mode);
- if (overwrite != gtk_text_view_get_overwrite (GTK_TEXT_VIEW (self)))
- gtk_text_view_set_overwrite (GTK_TEXT_VIEW (self), overwrite);
- g_object_notify (G_OBJECT (self), "overwrite");
-
- ide_source_view_update_auto_indent_override (self);
-
- ide_source_view_update_display_name (self);
-
- IDE_EXIT;
-}
-
static void
ide_source_view_real_set_overwrite (IdeSourceView *self,
gboolean overwrite)
@@ -3331,36 +3274,6 @@ ide_source_view_real_swap_selection_bounds (IdeSourceView *self)
gtk_text_buffer_select_range (buffer, &selection_bound, &insert);
}
-static void
-ide_source_view_real_movement (IdeSourceView *self,
- IdeSourceViewMovement movement,
- gboolean extend_selection,
- gboolean exclusive,
- gboolean apply_count)
-{
- IdeSourceViewPrivate *priv = ide_source_view_get_instance_private (self);
- gint count = -1;
-
- g_assert (IDE_IS_SOURCE_VIEW (self));
-
- if (apply_count)
- count = priv->count;
-
- if (priv->scrolling_to_scroll_mark)
- priv->scrolling_to_scroll_mark = FALSE;
-
- _ide_source_view_apply_movement (self,
- movement,
- extend_selection,
- exclusive,
- count,
- priv->command_str,
- priv->command,
- priv->modifier,
- priv->search_char,
- &priv->target_line_column);
-}
-
static void
ide_source_view_real_move_error (IdeSourceView *self,
GtkDirectionType dir)
@@ -3464,8 +3377,8 @@ is_same_range (GtkTextIter *new_start,
}
static void
-ide_source_view_real_restore_insert_mark_full (IdeSourceView *self,
- gboolean move_mark)
+ide_source_view_restore_insert_mark (IdeSourceView *self,
+ gboolean move_mark)
{
IdeSourceViewPrivate *priv = ide_source_view_get_instance_private (self);
GtkTextBuffer *buffer;
@@ -3508,12 +3421,6 @@ ide_source_view_real_restore_insert_mark_full (IdeSourceView *self,
}
}
-static void
-ide_source_view_real_restore_insert_mark (IdeSourceView *self)
-{
- ide_source_view_real_restore_insert_mark_full (self, TRUE);
-}
-
void
_ide_source_view_clear_saved_mark (IdeSourceView *self)
{
@@ -4099,7 +4006,7 @@ ide_source_view_focus_in_event (GtkWidget *widget,
priv->saved_selection_line_column = priv->saved_line_column;
}
- ide_source_view_real_restore_insert_mark_full (self, FALSE);
+ ide_source_view_restore_insert_mark (self, FALSE);
/* restore line highlight if enabled */
if (priv->highlight_current_line)
@@ -5552,7 +5459,7 @@ ide_source_view_destroy (GtkWidget *widget)
/* Ensure we release the buffer immediately */
if (priv->buffer_signals != NULL)
- dzl_signal_group_set_target (priv->buffer_signals, NULL);
+ ide_signal_group_set_target (priv->buffer_signals, NULL);
GTK_WIDGET_CLASS (ide_source_view_parent_class)->destroy (widget);
}
@@ -5740,10 +5647,6 @@ ide_source_view_set_property (GObject *object,
ide_source_view_set_font_desc (self, g_value_get_boxed (value));
break;
- case PROP_HIGHLIGHT_CURRENT_LINE:
- ide_source_view_set_highlight_current_line (self, g_value_get_boolean (value));
- break;
-
case PROP_INDENT_STYLE:
ide_source_view_set_indent_style (self, g_value_get_enum (value));
break;
@@ -6805,79 +6708,79 @@ ide_source_view_init (IdeSourceView *self)
dzl_binding_group_bind (priv->file_setting_bindings, "overwrite-braces",
self, "overwrite-braces", G_BINDING_SYNC_CREATE);
- priv->buffer_signals = dzl_signal_group_new (IDE_TYPE_BUFFER);
+ priv->buffer_signals = ide_signal_group_new (IDE_TYPE_BUFFER);
- dzl_signal_group_connect_object (priv->buffer_signals,
+ ide_signal_group_connect_object (priv->buffer_signals,
"changed",
G_CALLBACK (ide_source_view__buffer_changed_cb),
self,
G_CONNECT_SWAPPED);
- dzl_signal_group_connect_object (priv->buffer_signals,
+ ide_signal_group_connect_object (priv->buffer_signals,
"request-scroll-to-insert",
G_CALLBACK (ide_source_view__buffer_request_scroll_to_insert_cb),
self,
G_CONNECT_SWAPPED);
- dzl_signal_group_connect_object (priv->buffer_signals,
+ ide_signal_group_connect_object (priv->buffer_signals,
"line-flags-changed",
G_CALLBACK (ide_source_view__buffer_line_flags_changed_cb),
self,
G_CONNECT_SWAPPED);
- dzl_signal_group_connect_object (priv->buffer_signals,
+ ide_signal_group_connect_object (priv->buffer_signals,
"notify::can-redo",
G_CALLBACK (ide_source_view__buffer__notify_can_redo),
self,
G_CONNECT_SWAPPED);
- dzl_signal_group_connect_object (priv->buffer_signals,
+ ide_signal_group_connect_object (priv->buffer_signals,
"notify::can-undo",
G_CALLBACK (ide_source_view__buffer__notify_can_undo),
self,
G_CONNECT_SWAPPED);
- dzl_signal_group_connect_object (priv->buffer_signals,
+ ide_signal_group_connect_object (priv->buffer_signals,
"notify::file-settings",
G_CALLBACK (ide_source_view__buffer_notify_file_settings_cb),
self,
G_CONNECT_SWAPPED);
- dzl_signal_group_connect_object (priv->buffer_signals,
+ ide_signal_group_connect_object (priv->buffer_signals,
"notify::language",
G_CALLBACK (ide_source_view__buffer_notify_language_cb),
self,
G_CONNECT_SWAPPED);
- dzl_signal_group_connect_object (priv->buffer_signals,
+ ide_signal_group_connect_object (priv->buffer_signals,
"notify::style-scheme",
G_CALLBACK (ide_source_view__buffer_notify_style_scheme_cb),
self,
G_CONNECT_SWAPPED);
- dzl_signal_group_connect_object (priv->buffer_signals,
+ ide_signal_group_connect_object (priv->buffer_signals,
"insert-text",
G_CALLBACK (ide_source_view__buffer_insert_text_cb),
self,
G_CONNECT_SWAPPED);
- dzl_signal_group_connect_object (priv->buffer_signals,
+ ide_signal_group_connect_object (priv->buffer_signals,
"insert-text",
G_CALLBACK (ide_source_view__buffer_insert_text_after_cb),
self,
G_CONNECT_SWAPPED | G_CONNECT_AFTER);
- dzl_signal_group_connect_object (priv->buffer_signals,
+ ide_signal_group_connect_object (priv->buffer_signals,
"delete-range",
G_CALLBACK (ide_source_view__buffer_delete_range_cb),
self,
G_CONNECT_SWAPPED);
- dzl_signal_group_connect_object (priv->buffer_signals,
+ ide_signal_group_connect_object (priv->buffer_signals,
"delete-range",
G_CALLBACK (ide_source_view__buffer_delete_range_after_cb),
self,
G_CONNECT_SWAPPED | G_CONNECT_AFTER);
- dzl_signal_group_connect_object (priv->buffer_signals,
+ ide_signal_group_connect_object (priv->buffer_signals,
"mark-set",
G_CALLBACK (ide_source_view__buffer_mark_set_cb),
self,
G_CONNECT_SWAPPED);
- dzl_signal_group_connect_object (priv->buffer_signals,
+ ide_signal_group_connect_object (priv->buffer_signals,
"loaded",
G_CALLBACK (ide_source_view__buffer_loaded_cb),
self,
G_CONNECT_SWAPPED);
- dzl_signal_group_connect_object (priv->buffer_signals,
+ ide_signal_group_connect_object (priv->buffer_signals,
"notify::has-selection",
G_CALLBACK (ide_source_view__buffer_notify_has_selection_cb),
self,
@@ -7106,29 +7009,6 @@ ide_source_view_get_iter_at_visual_column (IdeSourceView *self,
}
}
-const gchar *
-ide_source_view_get_mode_name (IdeSourceView *self)
-{
- IdeSourceViewPrivate *priv = ide_source_view_get_instance_private (self);
-
- g_return_val_if_fail (IDE_IS_SOURCE_VIEW (self), NULL);
-
- if (priv->mode)
- return ide_source_view_mode_get_name (priv->mode);
-
- return NULL;
-}
-
-const gchar *
-ide_source_view_get_mode_display_name (IdeSourceView *self)
-{
- IdeSourceViewPrivate *priv = ide_source_view_get_instance_private (self);
-
- g_return_val_if_fail (IDE_IS_SOURCE_VIEW (self), NULL);
-
- return priv->display_name;
-}
-
gboolean
ide_source_view_get_overwrite_braces (IdeSourceView *self)
{
@@ -7173,184 +7053,6 @@ ide_source_view_set_overwrite_braces (IdeSourceView *self,
}
}
-void
-ide_source_view_pop_snippet (IdeSourceView *self)
-{
- IdeSourceViewPrivate *priv = ide_source_view_get_instance_private (self);
- IdeSnippet *snippet;
-
- g_return_if_fail (IDE_IS_SOURCE_VIEW (self));
-
- if ((snippet = g_queue_pop_head (priv->snippets)))
- {
- g_autofree gchar *new_text = NULL;
-
- new_text = ide_snippet_get_full_text (snippet);
-
- ide_snippet_finish (snippet);
- g_signal_emit (self, signals [POP_SNIPPET], 0, snippet);
- g_object_unref (snippet);
-
- if ((snippet = g_queue_peek_head (priv->snippets)))
- {
- ide_snippet_replace_current_chunk_text (snippet, new_text);
- ide_snippet_unpause (snippet);
- ide_snippet_move_next (snippet);
- }
- }
-
- ide_source_view_invalidate_window (self);
-}
-
-void
-ide_source_view_clear_snippets (IdeSourceView *self)
-{
- IdeSourceViewPrivate *priv = ide_source_view_get_instance_private (self);
-
- g_return_if_fail (IDE_IS_SOURCE_VIEW (self));
-
- while (priv->snippets->length)
- ide_source_view_pop_snippet (self);
-}
-
-/**
- * ide_source_view_push_snippet:
- * @self: An #IdeSourceView
- * @snippet: An #IdeSnippet.
- * @location: (allow-none): A location for the snippet or %NULL.
- *
- * Pushes a new snippet onto the source view.
- *
- * Since: 3.32
- */
-void
-ide_source_view_push_snippet (IdeSourceView *self,
- IdeSnippet *snippet,
- const GtkTextIter *location)
-{
- IdeSourceViewPrivate *priv = ide_source_view_get_instance_private (self);
- IdeSnippetContext *context;
- IdeSnippet *previous;
- GtkTextBuffer *buffer;
- GtkTextIter iter;
- gboolean has_more_tab_stops;
- gboolean insert_spaces;
- gchar *line_prefix;
- guint tab_width;
-
- g_return_if_fail (IDE_IS_SOURCE_VIEW (self));
- g_return_if_fail (IDE_IS_SNIPPET (snippet));
- g_return_if_fail (!location ||
- (gtk_text_iter_get_buffer (location) == (void*)priv->buffer));
-
- if ((previous = g_queue_peek_head (priv->snippets)))
- ide_snippet_pause (previous);
-
- g_queue_push_head (priv->snippets, g_object_ref (snippet));
-
- buffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (self));
-
- if (location != NULL)
- iter = *location;
- else
- gtk_text_buffer_get_iter_at_mark (buffer, &iter, gtk_text_buffer_get_insert (buffer));
-
- context = ide_snippet_get_context (snippet);
-
- insert_spaces = gtk_source_view_get_insert_spaces_instead_of_tabs (GTK_SOURCE_VIEW (self));
- ide_snippet_context_set_use_spaces (context, insert_spaces);
-
- tab_width = gtk_source_view_get_tab_width (GTK_SOURCE_VIEW (self));
- ide_snippet_context_set_tab_width (context, tab_width);
-
- line_prefix = text_iter_get_line_prefix (&iter);
- ide_snippet_context_set_line_prefix (context, line_prefix);
- g_free (line_prefix);
-
- g_signal_emit (self, signals [PUSH_SNIPPET], 0, snippet, &iter);
-
- gtk_text_buffer_begin_user_action (buffer);
- ide_source_view_block_handlers (self);
- has_more_tab_stops = ide_snippet_begin (snippet, buffer, &iter);
- ide_source_view_scroll_to_insert (self);
- ide_source_view_unblock_handlers (self);
- gtk_text_buffer_end_user_action (buffer);
-
- if (!ide_source_view_can_animate (self))
- {
- GtkTextMark *mark_begin;
- GtkTextMark *mark_end;
-
- mark_begin = ide_snippet_get_mark_begin (snippet);
- mark_end = ide_snippet_get_mark_end (snippet);
-
- if (mark_begin != NULL && mark_end != NULL)
- {
- GtkTextIter begin;
- GtkTextIter end;
-
- gtk_text_buffer_get_iter_at_mark (buffer, &begin, mark_begin);
- gtk_text_buffer_get_iter_at_mark (buffer, &end, mark_end);
-
- /*
- * HACK:
- *
- * We need to let the GtkTextView catch up with us so that we can get
- * a realistic area back for the location of the end iter. Without
- * pumping the main loop, GtkTextView will clamp the result to the
- * height of the insert line.
- */
- while (gtk_events_pending ())
- gtk_main_iteration ();
-
- animate_expand (self, &begin, &end);
- }
- }
-
- if (!has_more_tab_stops)
- ide_source_view_pop_snippet (self);
-
- ide_source_view_invalidate_window (self);
-}
-
-void
-ide_source_view_jump (IdeSourceView *self,
- const GtkTextIter *from,
- const GtkTextIter *to)
-{
- IdeSourceViewPrivate *priv = ide_source_view_get_instance_private (self);
-
- IDE_ENTRY;
-
- g_return_if_fail (IDE_IS_SOURCE_VIEW (self));
-
- if (priv->buffer != NULL &&
- !ide_buffer_get_loading (priv->buffer))
- {
- GtkTextIter dummy_from;
- GtkTextIter dummy_to;
-
- if (from == NULL)
- {
- GtkTextMark *mark;
-
- mark = gtk_text_buffer_get_insert (GTK_TEXT_BUFFER (priv->buffer));
- gtk_text_buffer_get_iter_at_mark (GTK_TEXT_BUFFER (priv->buffer), &dummy_from, mark);
- from = &dummy_from;
- }
-
- if (to == NULL)
- {
- dummy_to = *from;
- to = &dummy_to;
- }
-
- g_signal_emit (self, signals [JUMP], 0, from, to);
- }
-
- IDE_EXIT;
-}
-
/**
* ide_source_view_get_scroll_offset:
*
@@ -7954,63 +7656,6 @@ ide_source_view_get_visual_position (IdeSourceView *self,
*line_column = gtk_source_view_get_visual_column (GTK_SOURCE_VIEW (self), &iter);
}
-gint
-ide_source_view_get_count (IdeSourceView *self)
-{
- IdeSourceViewPrivate *priv = ide_source_view_get_instance_private (self);
-
- g_return_val_if_fail (IDE_IS_SOURCE_VIEW (self), 0);
-
- return priv->count;
-}
-
-void
-ide_source_view_set_count (IdeSourceView *self,
- gint count)
-{
- IdeSourceViewPrivate *priv = ide_source_view_get_instance_private (self);
-
- g_return_if_fail (IDE_IS_SOURCE_VIEW (self));
-
- if (count < 0)
- count = 0;
-
- if (count != priv->count)
- {
- priv->count = count;
- g_object_notify_by_pspec (G_OBJECT (self), properties [PROP_COUNT]);
- }
-}
-
-GtkTextMark *
-_ide_source_view_get_scroll_mark (IdeSourceView *self)
-{
- IdeSourceViewPrivate *priv = ide_source_view_get_instance_private (self);
-
- g_return_val_if_fail (IDE_IS_SOURCE_VIEW (self), NULL);
-
- return priv->scroll_mark;
-}
-
-/**
- * ide_source_view_get_current_snippet:
- *
- * Gets the current snippet if there is one, otherwise %NULL.
- *
- * Returns: (transfer none) (nullable): An #IdeSnippet or %NULL.
- *
- * Since: 3.32
- */
-IdeSnippet *
-ide_source_view_get_current_snippet (IdeSourceView *self)
-{
- IdeSourceViewPrivate *priv = ide_source_view_get_instance_private (self);
-
- g_return_val_if_fail (IDE_IS_SOURCE_VIEW (self), NULL);
-
- return g_queue_peek_head (priv->snippets);
-}
-
gboolean
ide_source_view_get_show_line_numbers (IdeSourceView *self)
{
@@ -8065,56 +7710,6 @@ ide_source_view_set_show_relative_line_numbers (IdeSourceView *self,
}
}
-gboolean
-ide_source_view_is_processing_key (IdeSourceView *self)
-{
- IdeSourceViewPrivate *priv = ide_source_view_get_instance_private (self);
-
- g_return_val_if_fail (IDE_IS_SOURCE_VIEW (self), FALSE);
-
- return priv->in_key_press > 0;
-}
-
-/**
- * ide_source_view_get_completion:
- * @self: a #IdeSourceView
- *
- * Get the completion for the #IdeSourceView
- *
- * Returns: (transfer none): an #IdeCompletion
- *
- * Since: 3.32
- */
-IdeCompletion *
-ide_source_view_get_completion (IdeSourceView *self)
-{
- IdeSourceViewPrivate *priv = ide_source_view_get_instance_private (self);
-
- g_return_val_if_fail (IDE_IS_SOURCE_VIEW (self), NULL);
-
- return priv->completion;
-}
-
-/**
- * ide_source_view_has_snippet:
- * @self: a #IdeSourceView
- *
- * Checks if there is an active snippet.
- *
- * Returns: %TRUE if there is an active snippet.
- *
- * Since: 3.32
- */
-gboolean
-ide_source_view_has_snippet (IdeSourceView *self)
-{
- IdeSourceViewPrivate *priv = ide_source_view_get_instance_private (self);
-
- g_return_val_if_fail (IDE_IS_SOURCE_VIEW (self), FALSE);
-
- return priv->snippets->length > 0;
-}
-
/**
* ide_source_view_set_gutter:
* @self: a #IdeSourceView
@@ -8169,13 +7764,3 @@ ide_source_view_set_gutter (IdeSourceView *self,
g_object_notify (G_OBJECT (self), "show-line-numbers");
g_object_notify (G_OBJECT (self), "show-relative-line-numbers");
}
-
-gboolean
-_ide_source_view_has_cursors (IdeSourceView *self)
-{
- IdeSourceViewPrivate *priv = ide_source_view_get_instance_private (self);
-
- g_return_val_if_fail (IDE_IS_SOURCE_VIEW (self), FALSE);
-
- return priv->cursor != NULL && ide_cursor_is_enabled (priv->cursor);
-}
diff --git a/src/libide/sourceview/ide-source-view.h b/src/libide/sourceview/ide-source-view.h
index 5df1a0a7d..fda3ac3bf 100644
--- a/src/libide/sourceview/ide-source-view.h
+++ b/src/libide/sourceview/ide-source-view.h
@@ -27,15 +27,13 @@
#include <gtksourceview/gtksource.h>
#include <libide-code.h>
-#include "ide-completion-types.h"
#include "ide-gutter.h"
-#include "ide-snippet-types.h"
G_BEGIN_DECLS
#define IDE_TYPE_SOURCE_VIEW (ide_source_view_get_type())
-IDE_AVAILABLE_IN_3_32
+IDE_AVAILABLE_ALL
G_DECLARE_DERIVABLE_TYPE (IdeSourceView, ide_source_view, IDE, SOURCE_VIEW, GtkSourceView)
typedef enum
@@ -45,212 +43,6 @@ typedef enum
IDE_CURSOR_MATCH
} IdeCursorType;
-/**
- * IdeSourceViewModeType:
- * @IDE_SOURCE_VIEW_MODE_TRANSIENT: Transient
- * @IDE_SOURCE_VIEW_MODE_PERMANENT: Permanent
- * @IDE_SOURCE_VIEW_MODE_MODAL: Modal
- *
- * The type of keyboard mode.
- *
- * Since: 3.32
- */
-typedef enum
-{
- IDE_SOURCE_VIEW_MODE_TYPE_TRANSIENT,
- IDE_SOURCE_VIEW_MODE_TYPE_PERMANENT,
- IDE_SOURCE_VIEW_MODE_TYPE_MODAL
-} IdeSourceViewModeType;
-
-/**
- * IdeSourceViewTheatric:
- * @IDE_SOURCE_VIEW_THEATRIC_EXPAND: expand from selection location.
- * @IDE_SOURCE_VIEW_THEATRIC_SHRINK: shrink from selection location.
- *
- * The style of theatric.
- *
- * Since: 3.32
- */
-
-typedef enum
-{
- IDE_SOURCE_VIEW_THEATRIC_EXPAND,
- IDE_SOURCE_VIEW_THEATRIC_SHRINK,
-} IdeSourceViewTheatric;
-
-/**
- * IdeSourceViewMovement:
- * @IDE_SOURCE_VIEW_MOVEMENT_NEXT_OFFSET: move to next character in the file.
- * This includes line breaks.
- * @IDE_SOURCE_VIEW_MOVEMENT_PREVIOUS_OFFSET: move to previous character in the file.
- * This includes line breaks.
- * @IDE_SOURCE_VIEW_MOVEMENT_NTH_CHAR: move to nth character in line. Use a repeat to
- * specify the target character within the line.
- * @IDE_SOURCE_VIEW_MOVEMENT_PREVIOUS_CHAR: move to previous character in line.
- * @IDE_SOURCE_VIEW_MOVEMENT_NEXT_CHAR: move to next character in line.
- * @IDE_SOURCE_VIEW_MOVEMENT_FIRST_CHAR: move to line offset of zero.
- * @IDE_SOURCE_VIEW_MOVEMENT_FIRST_NONSPACE_CHAR: move to first non-whitespace character in line.
- * @IDE_SOURCE_VIEW_MOVEMENT_MIDDLE_CHAR: move to the middle character in the line.
- * @IDE_SOURCE_VIEW_MOVEMENT_LAST_CHAR: move to the last character in the line. this can be
- * inclusve or exclusive. inclusive is equivalent to %IDE_SOURCE_VIEW_MOVEMENT_LINE_END.
- * @IDE_SOURCE_VIEW_MOVEMENT_NEXT_SUB_WORD_START: move to the next sub-word start, similar
- * to the default in GtkTextView. This includes the underline character as a word break,
- * as is common in Emacs.
- * @IDE_SOURCE_VIEW_MOVEMENT_PREVIOUS_SUB_WORD_START: move to the previous sub-wird start,
- * similar to the default in GtkTextView. This includes the underline character as a
- * word break, as is common in Emacs.
- * @IDE_SOURCE_VIEW_MOVEMENT_PREVIOUS_WORD_START: move to beginning of previous word.
- * @IDE_SOURCE_VIEW_MOVEMENT_NEXT_WORD_START: move to beginning of next word.
- * @IDE_SOURCE_VIEW_MOVEMENT_PREVIOUS_WORD_END: move to end of previous word.
- * @IDE_SOURCE_VIEW_MOVEMENT_NEXT_WORD_END: move to end of next word.
- * @IDE_SOURCE_VIEW_MOVEMENT_SENTENCE_START: move to beginning of sentance.
- * @IDE_SOURCE_VIEW_MOVEMENT_SENTENCE_END: move to end of sentance.
- * @IDE_SOURCE_VIEW_MOVEMENT_PARAGRAPH_START: move to start of paragraph.
- * @IDE_SOURCE_VIEW_MOVEMENT_PARAGRAPH_END: move to end of paragraph.
- * @IDE_SOURCE_VIEW_MOVEMENT_PREVIOUS_LINE: move to previous line, keeping line offset if possible.
- * @IDE_SOURCE_VIEW_MOVEMENT_NEXT_LINE: move to next line, keeping line offset if possible.
- * @IDE_SOURCE_VIEW_MOVEMENT_FIRST_LINE: move to first line in file, line offset of zero.
- * @IDE_SOURCE_VIEW_MOVEMENT_NTH_LINE: move to nth line, line offset of zero. use repeat to
- * select the given line number.
- * @IDE_SOURCE_VIEW_MOVEMENT_LAST_LINE: move to last line in file, with line offset of zero.
- * @IDE_SOURCE_VIEW_MOVEMENT_LINE_PERCENTAGE: move to line based on percentage. Use repeat to
- * specify the percentage, 0 to 100.
- * @IDE_SOURCE_VIEW_MOVEMENT_LINE_CHARS: special selection to select all line characters up to the
- * cursor position. special care will be taken if the line is blank to select only the blank
- * space if any. otherwise, the line break will be selected.
- * @IDE_SOURCE_VIEW_MOVEMENT_LINE_END: This will move you to the location of the newline at the
- * end of the current line. It does not support exclusive will not select the newline, while
- * inclusive will select the newline.
- * @IDE_SOURCE_VIEW_MOVEMENT_HALF_PAGE_UP: move half a page up.
- * @IDE_SOURCE_VIEW_MOVEMENT_HALF_PAGE_DOWN: move half a page down.
- * @IDE_SOURCE_VIEW_MOVEMENT_HALF_PAGE_LEFT: move half a page left.
- * @IDE_SOURCE_VIEW_MOVEMENT_HALF_PAGE_RIGHT: move half a page right.
- * @IDE_SOURCE_VIEW_MOVEMENT_PAGE_UP: move a full page up.
- * @IDE_SOURCE_VIEW_MOVEMENT_PAGE_UP_LINES: move a full page up, but extend to whole line.
- * @IDE_SOURCE_VIEW_MOVEMENT_PAGE_DOWN: move a full page down.
- * @IDE_SOURCE_VIEW_MOVEMENT_PAGE_DOWN_LINES: move a full page down, but extend to whole line.
- * @IDE_SOURCE_VIEW_MOVEMENT_SCREEN_UP: move to viewport up by visible line, adjusting cursor
- * to stay on screen if necessary.
- * @IDE_SOURCE_VIEW_MOVEMENT_SCREEN_DOWN: move to viewport down by visible line, adjusting cursor
- * to stay on screen if necessary.
- * @IDE_SOURCE_VIEW_MOVEMENT_SCREEN_LEFT: move to viewport left by visible char, adjusting cursor
- * to stay on screen if necessary.
- * @IDE_SOURCE_VIEW_MOVEMENT_SCREEN_RIGHT: move to viewport right by visible char, adjusting cursor
- * to stay on screen if necessary.
- * @IDE_SOURCE_VIEW_MOVEMENT_SCREEN_TOP: move to the top of the screen.
- * @IDE_SOURCE_VIEW_MOVEMENT_SCREEN_MIDDLE: move to the middle of the screen.
- * @IDE_SOURCE_VIEW_MOVEMENT_SCREEN_BOTTOM: move to the bottom of the screen.
- * @IDE_SOURCE_VIEW_MOVEMENT_MATCH_SPECIAL: move to match of brace, bracket, comment.
- * @IDE_SOURCE_VIEW_MOVEMENT_SCROLL_SCREEN_TOP: scroll until insert cursor or [count]th line is at screen
top.
- * @IDE_SOURCE_VIEW_MOVEMENT_SCROLL_SCREEN_CENTER: scroll until insert cursor or [count]th line is at screen
center.
- * @IDE_SOURCE_VIEW_MOVEMENT_SCROLL_SCREEN_BOTTOM: scroll until insert cursor or [count]th line is at screen
bottom.
- * @IDE_SOURCE_VIEW_MOVEMENT_SCROLL_SCREEN_LEFT: scroll until insert cursor or [count]th char is at screen
left.
- * @IDE_SOURCE_VIEW_MOVEMENT_SCROLL_SCREEN_RIGHT: scroll until insert cursor or [count]th char is at screen
right.
- * @IDE_SOURCE_VIEW_MOVEMENT_NEXT_MATCH_SEARCH_CHAR: move to the next matching char according to f and t in
vim.
- * @IDE_SOURCE_VIEW_MOVEMENT_PREVIOUS_MATCH_SEARCH_CHAR: move to the previous matching char according to F
and T in vim.
- * @IDE_SOURCE_VIEW_MOVEMENT_SMART_HOME: Moves to the first non-whitespace character unless
- * already positioned there. Otherwise, it moves to the first character.
- *
- * The type of movement.
- *
- * Some of these movements may be modified by using the modify-repeat action.
- * First adjust the repeat and then perform the "movement" action.
- *
- * Since: 3.32
- */
-typedef enum
-{
- IDE_SOURCE_VIEW_MOVEMENT_PREVIOUS_OFFSET,
- IDE_SOURCE_VIEW_MOVEMENT_NEXT_OFFSET,
-
- IDE_SOURCE_VIEW_MOVEMENT_NTH_CHAR,
- IDE_SOURCE_VIEW_MOVEMENT_PREVIOUS_CHAR,
- IDE_SOURCE_VIEW_MOVEMENT_NEXT_CHAR,
- IDE_SOURCE_VIEW_MOVEMENT_FIRST_CHAR,
- IDE_SOURCE_VIEW_MOVEMENT_FIRST_NONSPACE_CHAR,
- IDE_SOURCE_VIEW_MOVEMENT_MIDDLE_CHAR,
- IDE_SOURCE_VIEW_MOVEMENT_LAST_CHAR,
-
- IDE_SOURCE_VIEW_MOVEMENT_NEXT_WORD_START,
- IDE_SOURCE_VIEW_MOVEMENT_NEXT_FULL_WORD_START,
- IDE_SOURCE_VIEW_MOVEMENT_NEXT_SUB_WORD_START,
- IDE_SOURCE_VIEW_MOVEMENT_PREVIOUS_SUB_WORD_START,
- IDE_SOURCE_VIEW_MOVEMENT_PREVIOUS_WORD_START,
- IDE_SOURCE_VIEW_MOVEMENT_PREVIOUS_FULL_WORD_START,
-
- IDE_SOURCE_VIEW_MOVEMENT_PREVIOUS_WORD_END,
- IDE_SOURCE_VIEW_MOVEMENT_PREVIOUS_FULL_WORD_END,
- IDE_SOURCE_VIEW_MOVEMENT_NEXT_WORD_END,
- IDE_SOURCE_VIEW_MOVEMENT_NEXT_FULL_WORD_END,
-
- IDE_SOURCE_VIEW_MOVEMENT_NEXT_WORD_START_NEWLINE_STOP,
- IDE_SOURCE_VIEW_MOVEMENT_NEXT_FULL_WORD_START_NEWLINE_STOP,
- IDE_SOURCE_VIEW_MOVEMENT_PREVIOUS_WORD_START_NEWLINE_STOP,
- IDE_SOURCE_VIEW_MOVEMENT_PREVIOUS_FULL_WORD_START_NEWLINE_STOP,
-
- IDE_SOURCE_VIEW_MOVEMENT_PREVIOUS_WORD_END_NEWLINE_STOP,
- IDE_SOURCE_VIEW_MOVEMENT_PREVIOUS_FULL_WORD_END_NEWLINE_STOP,
- IDE_SOURCE_VIEW_MOVEMENT_NEXT_WORD_END_NEWLINE_STOP,
- IDE_SOURCE_VIEW_MOVEMENT_NEXT_FULL_WORD_END_NEWLINE_STOP,
-
- IDE_SOURCE_VIEW_MOVEMENT_SENTENCE_START,
- IDE_SOURCE_VIEW_MOVEMENT_SENTENCE_END,
-
- IDE_SOURCE_VIEW_MOVEMENT_PARAGRAPH_START,
- IDE_SOURCE_VIEW_MOVEMENT_PARAGRAPH_END,
-
- IDE_SOURCE_VIEW_MOVEMENT_PREVIOUS_LINE,
- IDE_SOURCE_VIEW_MOVEMENT_NEXT_LINE,
-
- IDE_SOURCE_VIEW_MOVEMENT_FIRST_LINE,
- IDE_SOURCE_VIEW_MOVEMENT_NTH_LINE,
- IDE_SOURCE_VIEW_MOVEMENT_LAST_LINE,
- IDE_SOURCE_VIEW_MOVEMENT_LINE_PERCENTAGE,
-
- IDE_SOURCE_VIEW_MOVEMENT_LINE_CHARS,
- IDE_SOURCE_VIEW_MOVEMENT_LINE_END,
-
- IDE_SOURCE_VIEW_MOVEMENT_HALF_PAGE_UP,
- IDE_SOURCE_VIEW_MOVEMENT_HALF_PAGE_DOWN,
- IDE_SOURCE_VIEW_MOVEMENT_HALF_PAGE_LEFT,
- IDE_SOURCE_VIEW_MOVEMENT_HALF_PAGE_RIGHT,
-
- IDE_SOURCE_VIEW_MOVEMENT_PAGE_UP,
- IDE_SOURCE_VIEW_MOVEMENT_PAGE_UP_LINES,
- IDE_SOURCE_VIEW_MOVEMENT_PAGE_DOWN,
- IDE_SOURCE_VIEW_MOVEMENT_PAGE_DOWN_LINES,
-
- IDE_SOURCE_VIEW_MOVEMENT_SCREEN_UP,
- IDE_SOURCE_VIEW_MOVEMENT_SCREEN_DOWN,
- IDE_SOURCE_VIEW_MOVEMENT_SCREEN_LEFT,
- IDE_SOURCE_VIEW_MOVEMENT_SCREEN_RIGHT,
- IDE_SOURCE_VIEW_MOVEMENT_SCREEN_TOP,
- IDE_SOURCE_VIEW_MOVEMENT_SCREEN_MIDDLE,
- IDE_SOURCE_VIEW_MOVEMENT_SCREEN_BOTTOM,
-
- IDE_SOURCE_VIEW_MOVEMENT_MATCH_SPECIAL,
-
- IDE_SOURCE_VIEW_MOVEMENT_SCROLL_SCREEN_TOP,
- IDE_SOURCE_VIEW_MOVEMENT_SCROLL_SCREEN_CENTER,
- IDE_SOURCE_VIEW_MOVEMENT_SCROLL_SCREEN_BOTTOM,
- IDE_SOURCE_VIEW_MOVEMENT_SCROLL_SCREEN_LEFT,
- IDE_SOURCE_VIEW_MOVEMENT_SCROLL_SCREEN_RIGHT,
-
- IDE_SOURCE_VIEW_MOVEMENT_PREVIOUS_UNMATCHED_BRACE,
- IDE_SOURCE_VIEW_MOVEMENT_NEXT_UNMATCHED_BRACE,
-
- IDE_SOURCE_VIEW_MOVEMENT_PREVIOUS_UNMATCHED_PAREN,
- IDE_SOURCE_VIEW_MOVEMENT_NEXT_UNMATCHED_PAREN,
-
- IDE_SOURCE_VIEW_MOVEMENT_NEXT_MATCH_MODIFIER,
- IDE_SOURCE_VIEW_MOVEMENT_PREVIOUS_MATCH_MODIFIER,
-
- IDE_SOURCE_VIEW_MOVEMENT_NEXT_MATCH_SEARCH_CHAR,
- IDE_SOURCE_VIEW_MOVEMENT_PREVIOUS_MATCH_SEARCH_CHAR,
-
- IDE_SOURCE_VIEW_MOVEMENT_SMART_HOME,
-} IdeSourceViewMovement;
-
typedef enum
{
IDE_SOURCE_SCROLL_NONE = 0,
@@ -263,226 +55,107 @@ struct _IdeSourceViewClass
{
GtkSourceViewClass parent_class;
- void (*append_to_count) (IdeSourceView *self,
- gint digit);
- void (*auto_indent) (IdeSourceView *self);
- void (*begin_macro) (IdeSourceView *self);
- void (*capture_modifier) (IdeSourceView *self);
- void (*clear_count) (IdeSourceView *self);
- void (*clear_modifier) (IdeSourceView *self);
- void (*clear_search) (IdeSourceView *self);
- void (*clear_selection) (IdeSourceView *self);
- void (*clear_snippets) (IdeSourceView *self);
- void (*cycle_completion) (IdeSourceView *self,
- GtkDirectionType direction);
- void (*delete_selection) (IdeSourceView *self);
- void (*end_macro) (IdeSourceView *self);
- void (*focus_location) (IdeSourceView *self,
- IdeLocation *location);
- void (*goto_definition) (IdeSourceView *self);
- void (*hide_completion) (IdeSourceView *self);
- void (*indent_selection) (IdeSourceView *self,
- gint level);
- void (*insert_at_cursor_and_indent) (IdeSourceView *self,
- const gchar *str);
- void (*insert_modifier) (IdeSourceView *self,
- gboolean use_count);
- void (*jump) (IdeSourceView *self,
- const GtkTextIter *from,
- const GtkTextIter *to);
- void (*movement) (IdeSourceView *self,
- IdeSourceViewMovement movement,
- gboolean extend_selection,
- gboolean exclusive,
- gboolean apply_count);
- void (*move_error) (IdeSourceView *self,
- GtkDirectionType dir);
- void (*move_search) (IdeSourceView *self,
- GtkDirectionType dir,
- gboolean extend_selection,
- gboolean select_match,
- gboolean exclusive,
- gboolean apply_count,
- gboolean at_word_boundaries);
- void (*paste_clipboard_extended) (IdeSourceView *self,
- gboolean smart_lines,
- gboolean after_cursor,
- gboolean place_cursor_at_original);
- void (*push_selection) (IdeSourceView *self);
- void (*pop_selection) (IdeSourceView *self);
- void (*rebuild_highlight) (IdeSourceView *self);
- void (*replay_macro) (IdeSourceView *self,
- gboolean use_count);
- void (*request_documentation) (IdeSourceView *self);
- void (*restore_insert_mark) (IdeSourceView *self);
- void (*save_command) (IdeSourceView *self);
- void (*save_search_char) (IdeSourceView *self);
- void (*save_insert_mark) (IdeSourceView *self);
- void (*select_inner) (IdeSourceView *self,
- const gchar *inner_left,
- const gchar *inner_right,
- gboolean exclusive,
- gboolean string_mode);
- void (*select_tag) (IdeSourceView *self,
- gboolean exclusive);
- void (*selection_theatric) (IdeSourceView *self,
- IdeSourceViewTheatric theatric);
- void (*set_mode) (IdeSourceView *self,
- const gchar *mode,
- IdeSourceViewModeType type);
- void (*set_overwrite) (IdeSourceView *self,
- gboolean overwrite);
- void (*set_search_text) (IdeSourceView *self,
- const gchar *search_text,
- gboolean from_selection);
- void (*sort) (IdeSourceView *self,
- gboolean ignore_case,
- gboolean reverse);
- void (*swap_selection_bounds) (IdeSourceView *self);
- void (*increase_font_size) (IdeSourceView *self);
- void (*decrease_font_size) (IdeSourceView *self);
- void (*reset_font_size) (IdeSourceView *self);
- void (*begin_rename) (IdeSourceView *self);
- void (*add_cursor) (IdeSourceView *self,
- guint type);
- void (*remove_cursors) (IdeSourceView *self);
- void (*copy_clipboard_extended) (IdeSourceView *self);
-
- /*< private >*/
- gpointer _reserved[32];
+ void (*focus_location) (IdeSourceView *self,
+ IdeLocation *location);
+ void (*goto_definition) (IdeSourceView *self);
+ void (*move_error) (IdeSourceView *self,
+ GtkDirectionType dir);
+ void (*rebuild_highlight) (IdeSourceView *self);
+ void (*request_documentation) (IdeSourceView *self);
+ void (*sort) (IdeSourceView *self,
+ gboolean ignore_case,
+ gboolean reverse);
+ void (*begin_rename) (IdeSourceView *self);
+ void (*add_cursor) (IdeSourceView *self,
+ guint type);
+ void (*remove_cursors) (IdeSourceView *self);
};
-IDE_AVAILABLE_IN_3_32
-gboolean ide_source_view_has_snippet (IdeSourceView
*self);
-IDE_AVAILABLE_IN_3_32
-void ide_source_view_clear_snippets (IdeSourceView
*self);
-IDE_AVAILABLE_IN_3_32
-IdeSnippet *ide_source_view_get_current_snippet (IdeSourceView
*self);
-IDE_AVAILABLE_IN_3_32
+IDE_AVAILABLE_ALL
guint ide_source_view_get_visual_column (IdeSourceView *self,
const GtkTextIter
*location);
-IDE_AVAILABLE_IN_3_32
+IDE_AVAILABLE_ALL
void ide_source_view_get_visual_position (IdeSourceView *self,
guint *line,
guint
*line_column);
-IDE_AVAILABLE_IN_3_32
-gint ide_source_view_get_count (IdeSourceView
*self);
-IDE_AVAILABLE_IN_3_32
+IDE_AVAILABLE_ALL
IdeFileSettings *ide_source_view_get_file_settings (IdeSourceView
*self);
-IDE_AVAILABLE_IN_3_32
+IDE_AVAILABLE_ALL
const PangoFontDescription *ide_source_view_get_font_desc (IdeSourceView
*self);
-IDE_AVAILABLE_IN_3_32
+IDE_AVAILABLE_ALL
PangoFontDescription *ide_source_view_get_scaled_font_desc (IdeSourceView
*self);
-IDE_AVAILABLE_IN_3_32
+IDE_AVAILABLE_ALL
gboolean ide_source_view_get_highlight_current_line (IdeSourceView
*self);
-IDE_AVAILABLE_IN_3_32
+IDE_AVAILABLE_ALL
gboolean ide_source_view_get_insert_matching_brace (IdeSourceView
*self);
-IDE_AVAILABLE_IN_3_32
+IDE_AVAILABLE_ALL
void ide_source_view_get_iter_at_visual_column (IdeSourceView *self,
guint
column,
GtkTextIter
*location);
-IDE_AVAILABLE_IN_3_32
-const gchar *ide_source_view_get_mode_display_name (IdeSourceView
*self);
-IDE_AVAILABLE_IN_3_32
-const gchar *ide_source_view_get_mode_name (IdeSourceView
*self);
-IDE_AVAILABLE_IN_3_32
+IDE_AVAILABLE_ALL
gboolean ide_source_view_get_overwrite_braces (IdeSourceView
*self);
-IDE_AVAILABLE_IN_3_32
+IDE_AVAILABLE_ALL
gboolean ide_source_view_get_overwrite (IdeSourceView
*self);
-IDE_AVAILABLE_IN_3_32
+IDE_AVAILABLE_ALL
guint ide_source_view_get_scroll_offset (IdeSourceView
*self);
-IDE_AVAILABLE_IN_3_32
+IDE_AVAILABLE_ALL
gboolean ide_source_view_get_show_grid_lines (IdeSourceView
*self);
-IDE_AVAILABLE_IN_3_32
+IDE_AVAILABLE_ALL
gboolean ide_source_view_get_show_line_changes (IdeSourceView
*self);
-IDE_AVAILABLE_IN_3_32
+IDE_AVAILABLE_ALL
gboolean ide_source_view_get_show_line_diagnostics (IdeSourceView
*self);
-IDE_AVAILABLE_IN_3_32
+IDE_AVAILABLE_ALL
gboolean ide_source_view_get_show_line_numbers (IdeSourceView
*self);
-IDE_AVAILABLE_IN_3_36
+IDE_AVAILABLE_ALL
gboolean ide_source_view_get_show_relative_line_numbers (IdeSourceView
*self);
-IDE_AVAILABLE_IN_3_32
-gboolean ide_source_view_get_snippet_completion (IdeSourceView
*self);
-IDE_AVAILABLE_IN_3_32
-gboolean ide_source_view_get_spell_checking (IdeSourceView
*self);
-IDE_AVAILABLE_IN_3_32
+IDE_AVAILABLE_ALL
void ide_source_view_get_visible_rect (IdeSourceView *self,
GdkRectangle
*visible_rect);
-IDE_AVAILABLE_IN_3_32
-void ide_source_view_jump (IdeSourceView *self,
- const GtkTextIter *from,
- const GtkTextIter *to);
-IDE_AVAILABLE_IN_3_32
-void ide_source_view_pop_snippet (IdeSourceView
*self);
-IDE_AVAILABLE_IN_3_32
-void ide_source_view_push_snippet (IdeSourceView *self,
- IdeSnippet
*snippet,
- const GtkTextIter
*location);
-IDE_AVAILABLE_IN_3_32
-void ide_source_view_rollback_search (IdeSourceView
*self);
-IDE_AVAILABLE_IN_3_32
-void ide_source_view_save_search (IdeSourceView *self,
- const gchar
*search_text);
-IDE_AVAILABLE_IN_3_32
-void ide_source_view_set_count (IdeSourceView *self,
- gint
count);
-IDE_AVAILABLE_IN_3_32
+IDE_AVAILABLE_ALL
void ide_source_view_set_font_desc (IdeSourceView *self,
const PangoFontDescription
*font_desc);
-IDE_AVAILABLE_IN_3_32
+IDE_AVAILABLE_ALL
void ide_source_view_set_font_name (IdeSourceView *self,
const gchar
*font_name);
-IDE_AVAILABLE_IN_3_32
+IDE_AVAILABLE_ALL
void ide_source_view_set_highlight_current_line (IdeSourceView *self,
gboolean
highlight_current_line);
-IDE_AVAILABLE_IN_3_32
+IDE_AVAILABLE_ALL
void ide_source_view_set_insert_matching_brace (IdeSourceView *self,
gboolean
insert_matching_brace);
-IDE_AVAILABLE_IN_3_32
-void ide_source_view_set_misspelled_word (IdeSourceView *self,
- GtkTextIter
*start,
- GtkTextIter *end);
-IDE_AVAILABLE_IN_3_32
+IDE_AVAILABLE_ALL
void ide_source_view_set_overwrite_braces (IdeSourceView *self,
gboolean
overwrite_braces);
-IDE_AVAILABLE_IN_3_32
+IDE_AVAILABLE_ALL
void ide_source_view_set_scroll_offset (IdeSourceView *self,
guint
scroll_offset);
-IDE_AVAILABLE_IN_3_32
+IDE_AVAILABLE_ALL
void ide_source_view_set_show_grid_lines (IdeSourceView *self,
gboolean
show_grid_lines);
-IDE_AVAILABLE_IN_3_32
+IDE_AVAILABLE_ALL
void ide_source_view_set_show_line_changes (IdeSourceView *self,
gboolean
show_line_changes);
-IDE_AVAILABLE_IN_3_32
+IDE_AVAILABLE_ALL
void ide_source_view_set_show_line_diagnostics (IdeSourceView *self,
gboolean
show_line_diagnostics);
-IDE_AVAILABLE_IN_3_32
+IDE_AVAILABLE_ALL
void ide_source_view_set_show_line_numbers (IdeSourceView *self,
gboolean
show_line_numbers);
-IDE_AVAILABLE_IN_3_36
+IDE_AVAILABLE_ALL
void ide_source_view_set_show_relative_line_numbers (IdeSourceView *self,
gboolean
show_relative_line_numbers);
-IDE_AVAILABLE_IN_3_32
-void ide_source_view_set_snippet_completion (IdeSourceView *self,
- gboolean
snippet_completion);
-IDE_AVAILABLE_IN_3_32
-void ide_source_view_set_spell_checking (IdeSourceView *self,
- gboolean
enable);
-IDE_AVAILABLE_IN_3_32
+IDE_AVAILABLE_ALL
gboolean ide_source_view_move_mark_onscreen (IdeSourceView *self,
GtkTextMark
*mark);
-IDE_AVAILABLE_IN_3_32
+IDE_AVAILABLE_ALL
gboolean ide_source_view_place_cursor_onscreen (IdeSourceView
*self);
-IDE_AVAILABLE_IN_3_32
-void ide_source_view_clear_search (IdeSourceView
*self);
-IDE_AVAILABLE_IN_3_32
+IDE_AVAILABLE_ALL
void ide_source_view_scroll_mark_onscreen (IdeSourceView *self,
GtkTextMark *mark,
IdeSourceScrollAlign
use_align,
gdouble
alignx,
gdouble
aligny);
-IDE_AVAILABLE_IN_3_32
+IDE_AVAILABLE_ALL
void ide_source_view_scroll_to_mark (IdeSourceView *self,
GtkTextMark *mark,
gdouble
within_margin,
@@ -490,7 +163,7 @@ void ide_source_view_scroll_to_mark (IdeS
gdouble
xalign,
gdouble
yalign,
gboolean
animate_scroll);
-IDE_AVAILABLE_IN_3_32
+IDE_AVAILABLE_ALL
void ide_source_view_scroll_to_iter (IdeSourceView *self,
const GtkTextIter *iter,
gdouble
within_margin,
@@ -498,13 +171,9 @@ void ide_source_view_scroll_to_iter (IdeS
gdouble
xalign,
gdouble
yalign,
gboolean
animate_scroll);
-IDE_AVAILABLE_IN_3_32
+IDE_AVAILABLE_ALL
void ide_source_view_scroll_to_insert (IdeSourceView
*self);
-IDE_AVAILABLE_IN_3_32
-IdeCompletion *ide_source_view_get_completion (IdeSourceView
*self);
-IDE_AVAILABLE_IN_3_32
-gboolean ide_source_view_is_processing_key (IdeSourceView
*self);
-IDE_AVAILABLE_IN_3_32
+IDE_AVAILABLE_ALL
void ide_source_view_set_gutter (IdeSourceView *self,
IdeGutter
*gutter);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]