IdeSourceView: gnome-builder Reference Manual

## IdeSourceView IdeSourceView |

## Functions

#define | IDE_TYPE_SOURCE_VIEW
void | ide_source_view_clear_snippets ()
IdeBackForwardList * | ide_source_view_get_back_forward_list ()
void | ide_source_view_get_visual_position ()
guint | ide_source_view_get_count ()
gboolean | ide_source_view_get_enable_word_completion ()
IdeFileSettings * | ide_source_view_get_file_settings ()
const PangoFontDescription * | ide_source_view_get_font_desc ()
gboolean | ide_source_view_get_highlight_current_line ()
gboolean | ide_source_view_get_insert_matching_brace ()
const gchar * | ide_source_view_get_mode_display_name ()
gboolean | ide_source_view_get_overwrite_braces ()
gboolean | ide_source_view_get_rubberband_search ()
guint | ide_source_view_get_scroll_offset ()
GtkSourceSearchContext * | ide_source_view_get_search_context ()
gboolean | ide_source_view_get_show_grid_lines ()
gboolean | ide_source_view_get_show_line_changes ()
gboolean | ide_source_view_get_show_line_diagnostics ()
gboolean | ide_source_view_get_show_search_bubbles ()
gboolean | ide_source_view_get_show_search_shadow ()
gboolean | ide_source_view_get_snippet_completion ()
void | ide_source_view_get_visible_rect ()
void | ide_source_view_jump ()
void | ide_source_view_pop_snippet ()
void | ide_source_view_push_snippet ()
void | ide_source_view_rollback_search ()
void | ide_source_view_set_count ()
void | ide_source_view_set_enable_word_completion ()
void | ide_source_view_set_font_desc ()
void | ide_source_view_set_font_name ()
void | ide_source_view_set_highlight_current_line ()
void | ide_source_view_set_insert_matching_brace ()
void | ide_source_view_set_overwrite_braces ()
void | ide_source_view_set_rubberband_search ()
void | ide_source_view_set_scroll_offset ()
void | ide_source_view_set_show_grid_lines ()
void | ide_source_view_set_show_line_changes ()
void | ide_source_view_set_show_line_diagnostics ()
void | ide_source_view_set_show_search_bubbles ()
void | ide_source_view_set_show_search_shadow ()
void | ide_source_view_set_snippet_completion ()
void | ide_source_view_set_back_forward_list ()
gboolean | ide_source_view_move_mark_onscreen ()
gboolean | ide_source_view_place_cursor_onscreen ()
void | ide_source_view_clear_search ()
void | ide_source_view_scroll_mark_onscreen ()
void | ide_source_view_scroll_to_mark ()
void | ide_source_view_scroll_to_iter ()

## Properties

IdeBackForwardList * | back-forward-list | Read / Write
guint | count | Read / Write
gboolean | enable-word-completion | Read / Write
IdeFileSettings * | file-settings | Read
PangoFontDescription * | font-desc | Read / Write
gchar * | font-name | Write / Construct
IdeIndentStyle | indent-style | Write
IdeIndenter * | indenter | Read
gboolean | insert-matching-brace | Read / Write
gchar * | mode-display-name | Read
gboolean | overwrite-braces | Read / Write
gboolean | rubberband-search | Read / Write
guint | scroll-offset | Read / Write
GtkSourceSearchContext * | search-context | Read
gboolean | show-grid-lines | Read / Write
gboolean | show-line-changes | Read / Write
gboolean | show-line-diagnostics | Read / Write
gboolean | show-search-bubbles | Read / Write
gboolean | show-search-shadow | Read / Write
gboolean | snippet-completion | Read / Write

## Signals

void | action | Action
void | append-to-count | Action
void | auto-indent | Action
void | begin-macro | Action
void | begin-user-action | Action
void | capture-modifier | Action
void | clear-count | Action
void | clear-modifier | Action
void | clear-search | Action
void | clear-selection | Action
void | clear-snippets | Action
void | cycle-completion | Action
void | decrease-font-size | Action
void | delete-selection | Action
void | end-macro | Action
void | end-user-action | Action
void | focus-location | Run Last
void | goto-definition | Action
void | hide-completion | Action
void | increase-font-size | Action
void | indent-selection | Action
void | insert-at-cursor-and-indent | Action
void | insert-modifier | Action
void | jump | Run Last
void | move-error | Action
void | move-search | Action
void | movement | Action
void | paste-clipboard-extended | Action
void | pop-selection | Action
void | pop-snippet | Run Last
void | push-selection | Action
void | push-snippet | Run Last
void | rebuild-highlight | Action
void | replay-macro | Action
void | request-documentation | Action
void | reset-font-size | Action
void | restore-insert-mark | Action
void | save-insert-mark | Action
void | selection-theatric | Action
void | set-mode | Action
void | set-overwrite | Action
void | set-search-text | Action
void | sort | Action
void | swap-selection-bounds | Action

## Types and Values

enum | IdeSourceViewModeType
enum | IdeSourceViewTheatric
enum | IdeSourceViewMovement
struct | IdeSourceViewClass
| IdeSourceView

## Object Hierarchy

        GEnum
        ├── IdeSourceViewModeType
        ├── IdeSourceViewMovement
        ╰── IdeSourceViewTheatric
        GObject
        ╰── GInitiallyUnowned
            ╰── GtkWidget
                ╰── GtkContainer
                    ╰── GtkTextView
                        ╰── GtkSourceView
                            ╰── IdeSourceView

## Implemented Interfaces

IdeSourceView implements AtkImplementorIface, GtkBuildable and GtkScrollable.

## Description

## Functions

### IDE_TYPE_SOURCE_VIEW

    #define IDE_TYPE_SOURCE_VIEW  (ide_source_view_get_type())

### ide_source_view_clear_snippets ()

    void
    ide_source_view_clear_snippets (IdeSourceView *self);

### ide_source_view_get_back_forward_list ()

    IdeBackForwardList *
    ide_source_view_get_back_forward_list (IdeSourceView *self);

Gets the “back-forward-list” property. This is the list that is used to manage navigation history between multiple IdeSourceView.

#### Returns

An IdeBackForwardList or `NULL`.

[transfer none][nullable]

### ide_source_view_get_visual_position ()

    void
    ide_source_view_get_visual_position (IdeSourceView *self,
                                         guint *line,
                                         guint *line_offset);

### ide_source_view_get_count ()

    guint
    ide_source_view_get_count (IdeSourceView *self);

### ide_source_view_get_enable_word_completion ()

    gboolean
    ide_source_view_get_enable_word_completion
                                   (IdeSourceView *self);

### ide_source_view_get_file_settings ()

    IdeFileSettings *
    ide_source_view_get_file_settings (IdeSourceView *self);

Gets the “file-settings” property. This contains various settings for how the file should be rendered in the view, and preferences such as spaces vs tabs.

#### Parameters

self | A IdeSourceView. |

#### Returns

An IdeFileSettings or `NULL`.

[transfer none][nullable]

### ide_source_view_get_font_desc ()

    const PangoFontDescription *
    ide_source_view_get_font_desc (IdeSourceView *self);

### ide_source_view_get_highlight_current_line ()

    gboolean
    ide_source_view_get_highlight_current_line
                                   (IdeSourceView *self);

### ide_source_view_get_insert_matching_brace ()

    gboolean
    ide_source_view_get_insert_matching_brace
                                   (IdeSourceView *self);

### ide_source_view_get_mode_display_name ()

    const gchar *
    ide_source_view_get_mode_display_name (IdeSourceView *self);

### ide_source_view_get_overwrite_braces ()

    gboolean
    ide_source_view_get_overwrite_braces (IdeSourceView *self);

### ide_source_view_get_rubberband_search ()

    gboolean
    ide_source_view_get_rubberband_search (IdeSourceView *self);

### ide_source_view_get_scroll_offset ()

    guint
    ide_source_view_get_scroll_offset (IdeSourceView *self);

Gets the “scroll-offset” property. This property contains the number of lines that should be kept above or below the line containing the insertion cursor relative to the top and bottom of the visible text window.

### ide_source_view_get_search_context ()

    GtkSourceSearchContext *
    ide_source_view_get_search_context (IdeSourceView *self);

Returns the GtkSourceSearchContext for the source view if there is one.

#### Parameters

self | An IdeSourceView. |

#### Returns

A GtkSourceSearchContext or `NULL`.

[transfer none][nullable]

### ide_source_view_get_show_grid_lines ()

    gboolean
    ide_source_view_get_show_grid_lines (IdeSourceView *self);

### ide_source_view_get_show_line_changes ()

    gboolean
    ide_source_view_get_show_line_changes (IdeSourceView *self);

### ide_source_view_get_show_line_diagnostics ()

    gboolean
    ide_source_view_get_show_line_diagnostics
                                   (IdeSourceView *self);

### ide_source_view_get_show_search_bubbles ()

    gboolean
    ide_source_view_get_show_search_bubbles
                                   (IdeSourceView *self);

Gets the “show-search-bubbles” property.

If this is set to `TRUE`, a bubble will be drawn around search results to make them stand out.

The default is `FALSE`.

#### Parameters

self | An IdeSourceView. |

### ide_source_view_get_show_search_shadow ()

    gboolean
    ide_source_view_get_show_search_shadow
                                   (IdeSourceView *self);

Gets the “show-search-shadow” property.

If this property is `TRUE`, then when searching, a shadow will be drawn over the portion of the visible region that does not contain a match. This can be used to help bring focus to the matches.

The default is `FALSE`.

#### Parameters

self | An IdeSourceView. |

### ide_source_view_get_snippet_completion ()

    gboolean
    ide_source_view_get_snippet_completion
                                   (IdeSourceView *self);

Gets the “snippet-completion” property.

If enabled, snippet expansion can be performed via the auto completion drop down.

### ide_source_view_get_visible_rect ()

    void
    ide_source_view_get_visible_rect (IdeSourceView *self,
                                      GdkRectangle *visible_rect);

Gets the visible region in buffer coordinates that is the visible area of the buffer. This is similar to `gtk_text_view_get_visible_area()` except that it takes into account the “scroll-offset” property to ensure there is space above and below the visible_rect.

#### Parameters

self | An IdeSourceView. |
visible_rect | A GdkRectangle. | [out]

### ide_source_view_jump ()

    void
    ide_source_view_jump (IdeSourceView *self,
                          const GtkTextIter *location);

### ide_source_view_pop_snippet ()

    void
    ide_source_view_pop_snippet (IdeSourceView *self);

### ide_source_view_push_snippet ()

    void
    ide_source_view_push_snippet (IdeSourceView *self,
                                  IdeSourceSnippet *snippet);

### ide_source_view_rollback_search ()

    void
    ide_source_view_rollback_search (IdeSourceView *self);

### ide_source_view_set_count ()

    void
    ide_source_view_set_count (IdeSourceView *self,
                               guint count);

### ide_source_view_set_enable_word_completion ()

    void
    ide_source_view_set_enable_word_completion
                                   (IdeSourceView *self,
                                    gboolean enable_word_copletion);

### ide_source_view_set_font_desc ()

    void
    ide_source_view_set_font_desc (IdeSourceView *self,
                                   const PangoFontDescription *font_desc);

### ide_source_view_set_font_name ()

    void
    ide_source_view_set_font_name (IdeSourceView *self,
                                   const gchar *font_name);

### ide_source_view_set_highlight_current_line ()

    void
    ide_source_view_set_highlight_current_line
                                   (IdeSourceView *self,
                                    gboolean highlight_current_line);

### ide_source_view_set_insert_matching_brace ()

    void
    ide_source_view_set_insert_matching_brace
                                   (IdeSourceView *self,
                                    gboolean insert_matching_brace);

### ide_source_view_set_overwrite_braces ()

    void
    ide_source_view_set_overwrite_braces (IdeSourceView *self,
                                          gboolean overwrite_braces);

### ide_source_view_set_rubberband_search ()

    void
    ide_source_view_set_rubberband_search (IdeSourceView *self,
                                           gboolean rubberband_search);

### ide_source_view_set_scroll_offset ()

    void
    ide_source_view_set_scroll_offset (IdeSourceView *self,
                                       guint scroll_offset);

Sets the “scroll-offset” property. See `ide_source_view_get_scroll_offset()` for more information. Set to 0 to unset this property.

### ide_source_view_set_show_grid_lines ()

    void
    ide_source_view_set_show_grid_lines (IdeSourceView *self,
                                         gboolean show_grid_lines);

### ide_source_view_set_show_line_changes ()

    void
    ide_source_view_set_show_line_changes (IdeSourceView *self,
                                           gboolean show_line_changes);

### ide_source_view_set_show_line_diagnostics ()

    void
    ide_source_view_set_show_line_diagnostics
                                   (IdeSourceView *self,
                                    gboolean show_line_changes);

### ide_source_view_set_show_search_bubbles ()

    void
    ide_source_view_set_show_search_bubbles
                                   (IdeSourceView *self,
                                    gboolean show_search_bubbles);

### ide_source_view_set_show_search_shadow ()

    void
    ide_source_view_set_show_search_shadow
                                   (IdeSourceView *self,
                                    gboolean show_search_bubbles);

### ide_source_view_set_snippet_completion ()

    void
    ide_source_view_set_snippet_completion
                                   (IdeSourceView *self,
                                    gboolean snippet_completion);

Sets the “snippet-completion” property. By setting this property to `TRUE`, snippets will be loaded for the currently activated source code language. See IdeSourceSnippet for more information on what can be provided via a snippet.

See also: `ide_source_view_get_snippet_completion()`

### ide_source_view_set_back_forward_list ()

    void
    ide_source_view_set_back_forward_list (IdeSourceView *self,
                                           IdeBackForwardList *back_forward_list);

### ide_source_view_move_mark_onscreen ()

    gboolean
    ide_source_view_move_mark_onscreen (IdeSourceView *self,
                                        GtkTextMark *mark);

### ide_source_view_place_cursor_onscreen ()

    gboolean
    ide_source_view_place_cursor_onscreen (IdeSourceView *self);

### ide_source_view_clear_search ()

    void
    ide_source_view_clear_search (IdeSourceView *self);

### ide_source_view_scroll_mark_onscreen ()

    void
    ide_source_view_scroll_mark_onscreen (IdeSourceView *self,
                                          GtkTextMark *mark,
                                          gboolean use_align,
                                          gdouble alignx,
                                          gdouble aligny);

### ide_source_view_scroll_to_mark ()

    void
    ide_source_view_scroll_to_mark (IdeSourceView *self,
                                    GtkTextMark *mark,
                                    gdouble within_margin,
                                    gboolean use_align,
                                    gdouble xalign,
                                    gdouble yalign,
                                    gboolean animate_scroll);

### ide_source_view_scroll_to_iter ()

    void
    ide_source_view_scroll_to_iter (IdeSourceView *self,
                                    const GtkTextIter *iter,
                                    gdouble within_margin,
                                    gboolean use_align,
                                    gdouble xalign,
                                    gdouble yalign,
                                    gboolean animate_scroll);

## Types and Values

### enum IdeSourceViewModeType

The type of keyboard mode.

#### Members

IDE_SOURCE_VIEW_MODE_TYPE_TRANSIENT |  |
IDE_SOURCE_VIEW_MODE_TYPE_PERMANENT |  |
IDE_SOURCE_VIEW_MODE_TYPE_MODAL |  |

### enum IdeSourceViewTheatric

The style of theatric.

#### Members

IDE_SOURCE_VIEW_THEATRIC_EXPAND | expand from selection location. |
IDE_SOURCE_VIEW_THEATRIC_SHRINK | shrink from selection location. |

### enum IdeSourceViewMovement

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.

#### Members

IDE_SOURCE_VIEW_MOVEMENT_PREVIOUS_OFFSET | move to previous character in the file. This includes line breaks. |
IDE_SOURCE_VIEW_MOVEMENT_NEXT_OFFSET | move to next 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_WORD_START | move to beginning of next word. |
IDE_SOURCE_VIEW_MOVEMENT_NEXT_FULL_WORD_START |  |
IDE_SOURCE_VIEW_MOVEMENT_PREVIOUS_WORD_START | move to beginning of previous word. |
IDE_SOURCE_VIEW_MOVEMENT_PREVIOUS_FULL_WORD_START |  |
IDE_SOURCE_VIEW_MOVEMENT_PREVIOUS_WORD_END | move to end of previous word. |
IDE_SOURCE_VIEW_MOVEMENT_PREVIOUS_FULL_WORD_END |  |
IDE_SOURCE_VIEW_MOVEMENT_NEXT_WORD_END | move to end of next word. |
IDE_SOURCE_VIEW_MOVEMENT_NEXT_FULL_WORD_END |  |
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_PAGE_UP | move a full page up. |
IDE_SOURCE_VIEW_MOVEMENT_PAGE_DOWN | move a full page down. |
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_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 is at screen top. |
IDE_SOURCE_VIEW_MOVEMENT_SCROLL_SCREEN_CENTER | scroll until insert cursor is at screen center. |
IDE_SOURCE_VIEW_MOVEMENT_SCROLL_SCREEN_BOTTOM | scroll until insert cursor is at screen bottom. |
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 |  |

### struct IdeSourceViewClass

    struct IdeSourceViewClass {
      GtkSourceViewClass parent_class;

      void (*action)                      (IdeSourceView           *self,
                                           const gchar             *prefix,
                                           const gchar             *action_name,
                                           const gchar             *param);
      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);
      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       *location);
      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 (*pop_snippet)                 (IdeSourceView           *self,
                                           IdeSourceSnippet        *snippet);
      void (*push_snippet)                (IdeSourceView           *self,
                                           IdeSourceSnippet        *snippet,
                                           IdeSourceSnippetContext *context,
                                           const GtkTextIter       *location);
      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_insert_mark)            (IdeSourceView           *self);
      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);
    };

### IdeSourceView

    typedef struct _IdeSourceView IdeSourceView;

## Property Details

### The `“back-forward-list”` property

      “back-forward-list”        IdeBackForwardList *

The back-forward list to track jumps.

Flags: Read / Write

### The `“count”` property

      “count”                    guint

The count for movements.

Flags: Read / Write

Allowed values: <= G_MAXINT

Default value: 0

### The `“enable-word-completion”` property

      “enable-word-completion”   gboolean

If words from all buffers can be used to autocomplete.

Flags: Read / Write

Default value: FALSE

### The `“file-settings”` property

      “file-settings”            IdeFileSettings *

The file settings that have been loaded for the file.

Flags: Read

### The `“font-desc”` property

      “font-desc”                PangoFontDescription *

The Pango font description to use for rendering source.

Flags: Read / Write

### The `“font-name”` property

      “font-name”                gchar *

The Pango font name to use for rendering source.

Flags: Write / Construct

Default value: "Monospace"

### The `“indent-style”` property

      “indent-style”             IdeIndentStyle

Indent Style.

Flags: Write

Default value: IDE_INDENT_STYLE_TABS

### The `“indenter”` property

      “indenter”                 IdeIndenter *

Indenter.

Flags: Read

### The `“insert-matching-brace”` property

      “insert-matching-brace”    gboolean

Insert a matching brace/bracket/quotation/parenthesis.

Flags: Read / Write

Default value: FALSE

### The `“mode-display-name”` property

      “mode-display-name”        gchar *

The display name of the keybinding mode.

Flags: Read

Default value: NULL

### The `“overwrite-braces”` property

      “overwrite-braces”         gboolean

Overwrite a matching brace/bracket/quotation/parenthesis.

Flags: Read / Write

Default value: FALSE

### The `“rubberband-search”` property

      “rubberband-search”        gboolean

Auto scroll to next search result without moving insertion caret.

Flags: Read / Write

Default value: FALSE

### The `“scroll-offset”` property

      “scroll-offset”            guint

The number of lines between the insertion cursor and screen boundary.

Flags: Read / Write

Default value: 0

### The `“search-context”` property

      “search-context”           GtkSourceSearchContext *

The search context for the view.

Flags: Read

### The `“show-grid-lines”` property

      “show-grid-lines”          gboolean

If the background grid should be shown.

Flags: Read / Write

Default value: FALSE

### The `“show-line-changes”` property

      “show-line-changes”        gboolean

If line changes should be shown in the left gutter.

Flags: Read / Write

Default value: FALSE

### The `“show-line-diagnostics”` property

      “show-line-diagnostics”    gboolean

If the diagnostics gutter should be visible.

This also requires that IdeBuffer:highlight-diagnostics is set to `TRUE` to generate diagnostics.

Flags: Read / Write

Default value: TRUE

### The `“show-search-bubbles”` property

      “show-search-bubbles”      gboolean

If search bubbles should be rendered.

Flags: Read / Write

Default value: FALSE

### The `“show-search-shadow”` property

      “show-search-shadow”       gboolean

If the shadow should be drawn when performing searches.

Flags: Read / Write

Default value: FALSE

### The `“snippet-completion”` property

      “snippet-completion”       gboolean

If snippet expansion should be enabled via the completion window.

Flags: Read / Write

Default value: FALSE

## Signal Details

### The `“action”` signal

    void
    user_function (IdeSourceView *idesourceview,
                   gchar         *arg1,
                   gchar         *arg2,
                   gchar         *arg3,
                   gpointer       user_data)

Flags: Action

### The `“append-to-count”` signal

    void
    user_function (IdeSourceView *idesourceview,
                   gint           arg1,
                   gpointer       user_data)

Flags: Action

### The `“auto-indent”` signal

    void
    user_function (IdeSourceView *arg0,
                   gpointer       user_data)

Requests that the auto-indenter perform an indent request using the last inserted character. For example, if on the first character of a line, the last inserted character would be a newline and therefore "\n".

If on the first character of the buffer, this signal will do nothing.

#### Parameters

user_data | user data set when the signal handler was connected. |

Flags: Action

### The `“begin-macro”` signal

    void
    user_function (IdeSourceView *arg0,
                   gpointer       user_data)

This signal will begin recording input to the IdeSourceView. This includes the current IdeSourceViewMode, “count” and “modifier” which will be used to replay the sequence starting from the correct state.

Pair this with an emission of “end-macro” to complete the sequence.

#### Parameters

user_data | user data set when the signal handler was connected. |

Flags: Action

### The `“begin-user-action”` signal

    void
    user_function (IdeSourceView *idesourceview,
                   gpointer       user_data)

Flags: Action

### The `“capture-modifier”` signal

    void
    user_function (IdeSourceView *arg0,
                   gpointer       user_data)

This signal will block the main loop in a similar fashion to how `gtk_dialog_run()` performs until a key-press has occurred that can be captured for use in movements.

Pressing Escape or unfocusing the widget will break from this loop.

Use of this signal is not recommended except in very specific cases.

#### Parameters

user_data | user data set when the signal handler was connected. |

Flags: Action

### The `“clear-count”` signal

    void
    user_function (IdeSourceView *idesourceview,
                   gpointer       user_data)

Flags: Action

### The `“clear-modifier”` signal

    void
    user_function (IdeSourceView *idesourceview,
                   gpointer       user_data)

Flags: Action

### The `“clear-search”` signal

    void
    user_function (IdeSourceView *idesourceview,
                   gpointer       user_data)

Flags: Action

### The `“clear-selection”` signal

    void
    user_function (IdeSourceView *idesourceview,
                   gpointer       user_data)

Flags: Action

### The `“clear-snippets”` signal

    void
    user_function (IdeSourceView *idesourceview,
                   gpointer       user_data)

Flags: Action

### The `“cycle-completion”` signal

    void
    user_function (IdeSourceView   *idesourceview,
                   GtkDirectionType arg1,
                   gpointer         user_data)

Flags: Action

### The `“decrease-font-size”` signal

    void
    user_function (IdeSourceView *idesourceview,
                   gpointer       user_data)

Flags: Action

### The `“delete-selection”` signal

    void
    user_function (IdeSourceView *idesourceview,
                   gpointer       user_data)

Flags: Action

### The `“end-macro”` signal

    void
    user_function (IdeSourceView *arg0,
                   gpointer       user_data)

You should call “begin-macro” before emitting this signal.

Complete a macro recording sequence. This may be called more times than is necessary, since IdeSourceView will only keep the most recent macro recording. This can be helpful when implementing recording sequences such as in Vim.

#### Parameters

user_data | user data set when the signal handler was connected. |

Flags: Action

### The `“end-user-action”` signal

    void
    user_function (IdeSourceView *idesourceview,
                   gpointer       user_data)

Flags: Action

### The `“focus-location”` signal

    void
    user_function (IdeSourceView     *idesourceview,
                   IdeSourceLocation *arg1,
                   gpointer           user_data)

Flags: Run Last

### The `“goto-definition”` signal

    void
    user_function (IdeSourceView *idesourceview,
                   gpointer       user_data)

Flags: Action

### The `“hide-completion”` signal

    void
    user_function (IdeSourceView *idesourceview,
                   gpointer       user_data)

Flags: Action

### The `“increase-font-size”` signal

    void
    user_function (IdeSourceView *idesourceview,
                   gpointer       user_data)

Flags: Action

### The `“indent-selection”` signal

    void
    user_function (IdeSourceView *idesourceview,
                   gint           arg1,
                   gpointer       user_data)

Flags: Action

### The `“insert-at-cursor-and-indent”` signal

    void
    user_function (IdeSourceView *idesourceview,
                   gchar         *arg1,
                   gpointer       user_data)

Flags: Action

### The `“insert-modifier”` signal

    void
    user_function (IdeSourceView *self,
                   gboolean       use_count,
                   gpointer       user_data)

Inserts the current modifier character at the insert mark in the buffer. If `use_count` is `TRUE`, then the character will be inserted “count” times.

#### Parameters

self | An IdeSourceView |
use_count | If the count property should be used to repeat. |
user_data | user data set when the signal handler was connected. |

Flags: Action

### The `“jump”` signal

    void
    user_function (IdeSourceView *idesourceview,
                   GtkTextIter   *arg1,
                   gpointer       user_data)

Flags: Run Last

### The `“move-error”` signal

    void
    user_function (IdeSourceView   *self,
                   GtkDirectionType dir,
                   gpointer         user_data)

Moves to the next search result either forwards or backwards.

#### Parameters

self | An IdeSourceView. |
dir | The direction to move. |
user_data | user data set when the signal handler was connected. |

Flags: Action

### The `“move-search”` signal

    void
    user_function (IdeSourceView   *idesourceview,
                   GtkDirectionType arg1,
                   gboolean         arg2,
                   gboolean         arg3,
                   gboolean         arg4,
                   gboolean         arg5,
                   gboolean         arg6,
                   gpointer         user_data)

Flags: Action

### The `“movement”` signal

    void
    user_function (IdeSourceView        *idesourceview,
                   IdeSourceViewMovement arg1,
                   gboolean              arg2,
                   gboolean              arg3,
                   gboolean              arg4,
                   gpointer              user_data)

Flags: Action

### The `“paste-clipboard-extended”` signal

    void
    user_function (IdeSourceView *idesourceview,
                   gboolean       arg1,
                   gboolean       arg2,
                   gboolean       arg3,
                   gpointer       user_data)

Flags: Action

### The `“pop-selection”` signal

    void
    user_function (IdeSourceView *arg0,
                   gpointer       user_data)

Reselects a previousl selected range of text that was saved using IdeSourceView::push-selection.

#### Parameters

user_data | user data set when the signal handler was connected. |

Flags: Action

### The `“pop-snippet”` signal

    void
    user_function (IdeSourceView    *idesourceview,
                   IdeSourceSnippet *arg1,
                   gpointer          user_data)

Flags: Run Last

### The `“push-selection”` signal

    void
    user_function (IdeSourceView *arg0,
                   gpointer       user_data)

Saves the current selection away to be restored by a call to IdeSourceView::pop-selection. You must pop the selection to keep the selection stack in consistent order.

#### Parameters

user_data | user data set when the signal handler was connected. |

Flags: Action

### The `“push-snippet”` signal

    void
    user_function (IdeSourceView           *idesourceview,
                   IdeSourceSnippet        *arg1,
                   IdeSourceSnippetContext *arg2,
                   GtkTextIter             *arg3,
                   gpointer                 user_data)

Flags: Run Last

### The `“rebuild-highlight”` signal

    void
    user_function (IdeSourceView *idesourceview,
                   gpointer       user_data)

Flags: Action

### The `“replay-macro”` signal

    void
    user_function (IdeSourceView *idesourceview,
                   gboolean       arg1,
                   gpointer       user_data)

Flags: Action

### The `“request-documentation”` signal

    void
    user_function (IdeSourceView *idesourceview,
                   gpointer       user_data)

Flags: Action

### The `“reset-font-size”` signal

    void
    user_function (IdeSourceView *idesourceview,
                   gpointer       user_data)

Flags: Action

### The `“restore-insert-mark”` signal

    void
    user_function (IdeSourceView *idesourceview,
                   gpointer       user_data)

Flags: Action

### The `“save-insert-mark”` signal

    void
    user_function (IdeSourceView *idesourceview,
                   gpointer       user_data)

Flags: Action

### The `“selection-theatric”` signal

    void
    user_function (IdeSourceView        *idesourceview,
                   IdeSourceViewTheatric arg1,
                   gpointer              user_data)

Flags: Action

### The `“set-mode”` signal

    void
    user_function (IdeSourceView        *idesourceview,
                   gchar                *arg1,
                   IdeSourceViewModeType arg2,
                   gpointer              user_data)

Flags: Action

### The `“set-overwrite”` signal

    void
    user_function (IdeSourceView *idesourceview,
                   gboolean       arg1,
                   gpointer       user_data)

Flags: Action

### The `“set-search-text”` signal

    void
    user_function (IdeSourceView *idesourceview,
                   gchar         *arg1,
                   gboolean       arg2,
                   gpointer       user_data)

Flags: Action

### The `“sort”` signal

    void
    user_function (IdeSourceView *self,
                   gboolean       ignore_case,
                   gboolean       reverse,
                   gpointer       user_data)

This signal is meant to be activated from keybindings to sort the currently selected lines. The lines are sorted using `qsort()` and either `strcmp()` or `strcasecmp()`.

#### Parameters

self | an IdeSourceView. |
ignore_case | If character case should be ignored. |
reverse | If the lines should be sorted in reverse order |
user_data | user data set when the signal handler was connected. |

Flags: Action

### The `“swap-selection-bounds”` signal

    void
    user_function (IdeSourceView *idesourceview,
                   gpointer       user_data)

Flags: Action