### Class

# Ide Buffer

#### Description

    final class Ide.Buffer : GtkSource.Buffer {
      /* No available fields */
    }

No description available.

#### Ancestors

- GtkSourceBuffer
- GtkTextBuffer
- GObject

#### Instance methods

###### ide_buffer_addin_find_by_module_name

Locates an addin attached to the `IdeBuffer` by the name of the module that provides the addin.

Available since: 3.32

###### ide_buffer_code_action_query_async

Queries for code actions in the current buffer.

Available since: 42.0

###### ide_buffer_code_action_query_finish

Completes an asynchronous request to ide_buffer_query_code_action_async().

Available since: 42.0

###### ide_buffer_dup_content

Gets the contents of the buffer as GBytes.

Available since: 3.32

###### ide_buffer_dup_title

Gets a string to represent the title of the buffer. An attempt is made to make this relative to the project workdir if possible.

Available since: 3.32

###### ide_buffer_dup_uri

Gets the URI for the underlying file and returns a copy of it.

Available since: 3.32

###### ide_buffer_format_selection_async

Formats the selection using an available `IdeFormatter` for the buffer.

Available since: 3.32

###### ide_buffer_format_selection_finish

Completes an asynchronous request to ide_buffer_format_selection_async().

Available since: 3.32

###### ide_buffer_get_change_count

Gets the monotonic change count for the buffer.

Available since: 3.32

###### ide_buffer_get_change_monitor

Gets the `IdeBuffer:change-monitor` for the buffer.

Available since: 3.32

###### ide_buffer_get_changed_on_volume

Returns `TRUE` if the `IdeBuffer` is known to have been modified on storage externally from this `IdeBuffer`.

Available since: 3.32

###### ide_buffer_get_diagnostics

Gets the `IdeDiagnostics` for the buffer if any have been registered.

Available since: 3.32

###### ide_buffer_get_failed

Gets the `IdeBuffer:failed` property, denoting if the buffer has failed in some aspect such as loading or saving.

Available since: 3.32

###### ide_buffer_get_failure

Gets a `GError` representing a failure that has occurred for the buffer.

Available since: 3.32

###### ide_buffer_get_file

Gets the `IdeBuffer:file` property.

Available since: 3.32

###### ide_buffer_get_file_settings

Gets the `IdeBuffer:file-settings` property.

Available since: 3.32

###### ide_buffer_get_formatter

Gets an `IdeFormatter` for the buffer, if any.

Available since: 3.32

###### ide_buffer_get_highlight_diagnostics

Checks if diagnostics should be highlighted.

Available since: 3.32

###### ide_buffer_get_insert_location

Gets the location of the insert mark as an `IdeLocation`.

Available since: 3.32

###### ide_buffer_get_is_temporary

Checks if the buffer represents a temporary file.

Available since: 3.32

###### ide_buffer_get_iter_at_location

Set `iter` to the position designated by `location`.

Available since: 3.32

###### ide_buffer_get_iter_location

Gets an `IdeLocation` for the position represented by `iter`.

Available since: 3.32

###### ide_buffer_get_language_id

A helper to get the language identifier of the buffers current language.

Available since: 3.32

###### ide_buffer_get_line_text

Gets the contents of a single line within the buffer.

Available since: 3.32

###### ide_buffer_get_loading

This checks to see if the buffer is currently loading. This is equivalent to calling `ide_buffer_get_state()` and checking for `IDE_BUFFER_STATE_LOADING`.

Available since: 3.32

###### ide_buffer_get_read_only

This function returns `TRUE` if the underlying file has been discovered to be read-only. This may be used by the interface to display information to the user about saving the file.

Available since: 3.32

###### ide_buffer_get_rename_provider

Gets the `IdeRenameProvider` for this buffer, or `NULL`.

Available since: 3.32

###### ide_buffer_get_selection_bounds

This function acts like `gtk_text_buffer_get_selection_bounds()` except that it always places the location of the insert mark at `insert` and the location of the selection mark at `selection`.

Available since: 3.32

###### ide_buffer_get_selection_range

Gets an `IdeRange` to represent the current buffer selection.

Available since: 3.32

###### ide_buffer_get_state

Gets the `IdeBuffer:state` property.

Available since: 3.32

###### ide_buffer_get_style_scheme_name

Gets the name of the `GtkSourceStyleScheme` from the `IdeBuffer:style-scheme` property.

Available since: 3.32

###### ide_buffer_get_symbol_at_location_async

Asynchronously get a possible symbol at `location`.

Available since: 3.32

###### ide_buffer_get_symbol_at_location_finish

Completes an asynchronous request to locate a symbol at a location.

Available since: 3.32

###### ide_buffer_get_symbol_resolvers

Gets the symbol resolvers for the buffer based on the current language. The resolvers in the resulting array are sorted by priority.

Available since: 3.32

###### ide_buffer_get_word_at_iter

Gets the word found under the position denoted by `iter`.

Available since: 3.32

###### ide_buffer_has_diagnostics

Returns `TRUE` if any diagnostics have been registered for the buffer.

Available since: 3.32

###### ide_buffer_has_symbol_resolvers

Checks if any symbol resolvers are available.

Available since: 3.32

###### ide_buffer_hold

Increases the “hold count” of the `IdeBuffer` by one.

Available since: 3.32

###### ide_buffer_ref_context

Locates the `IdeContext` for the buffer and returns it.

Available since: 3.32

###### ide_buffer_rehighlight

Force `self` to rebuild the highlighted words.

Available since: 3.32

###### ide_buffer_release

Releases the “hold count” on a buffer.

Available since: 3.32

###### ide_buffer_save_file_async

Asynchronously saves the buffer contents to `file`.

Available since: 3.32

###### ide_buffer_save_file_finish

Completes an asynchronous request to save the buffer via ide_buffer_save_file_async().

Available since: 3.32

###### ide_buffer_set_change_monitor

Sets an `IdeBufferChangeMonitor` to use for the buffer.

Available since: 3.32

###### ide_buffer_set_diagnostics

Sets the `IdeDiagnostics` for the buffer. These will be used to highlight the buffer for errors and warnings if `IdeBuffer:highlight-diagnostics` is `TRUE`.

Available since: 3.32

###### ide_buffer_set_highlight_diagnostics

Sets the `IdeBuffer:highlight-diagnostics` property.

Available since: 3.32

###### ide_buffer_set_language_id

No description available.

###### ide_buffer_set_style_scheme_name

Sets the `IdeBuffer:style-scheme` property by locating the style scheme matching `style_scheme_name`.

Available since: 3.32

##### Methods inherited from GtkSourceBuffer (35)

Please see GtkSourceBuffer for a full list of methods.

##### Methods inherited from GtkTextBuffer (73)

Please see GtkTextBuffer for a full list of methods.

##### Methods inherited from GObject (43)

Please see GObject for a full list of methods.

#### Properties

###### Ide.Buffer:buffer-manager

Sets the “buffer-manager” property, which is used by the buffer to clean-up state when the buffer is no longer in use.

Available since: 3.32

###### Ide.Buffer:change-monitor

The “change-monitor” property is an `IdeBufferChangeMonitor` that will be used to track changes in the `IdeBuffer`. This can be used to show line changes in the editor gutter.

Available since: 3.32

###### Ide.Buffer:changed-on-volume

The “changed-on-volume” property is set to `TRUE` when it has been discovered that the file represented by the `IdeBuffer` has changed externally to Builder.

Available since: 3.32

###### Ide.Buffer:diagnostics

The “diagnostics” property contains an `IdeDiagnostics` that represent the diagnostics found in the buffer.

Available since: 3.32

###### Ide.Buffer:enable-addins

The “enable-addins” property determines whether addins will be aware of this buffer. When set to `FALSE` no ide_buffer_addin_*() functions will be called on this buffer.

Available since: 41.0

###### Ide.Buffer:failed

The “failed” property is `TRUE` when the buffer has entered a failed state such as when loading or saving the buffer to disk.

Available since: 3.32

###### Ide.Buffer:file

The “file” property is the underlying file represented by the buffer.

Available since: 3.32

###### Ide.Buffer:file-settings

The “file-settings” property are the settings to be used by the buffer and source-view for the underlying file.

Available since: 3.32

###### Ide.Buffer:has-diagnostics

The “has-diagnostics” property denotes that there are a non-zero number of diangostics registered for the buffer.

Available since: 3.32

###### Ide.Buffer:has-symbol-resolvers

The “has-symbol-resolvers” property is `TRUE` if there are any symbol resolvers loaded.

Available since: 3.32

###### Ide.Buffer:highlight-diagnostics

The “highlight-diagnostics” property indicates that diagnostics which are discovered should be styled.

Available since: 3.32

###### Ide.Buffer:is-temporary

The “is-temporary” property denotes the `IdeBuffer:file` property points to a temporary file. When saving the the buffer, various UI components know to check this property and provide a file chooser to allow the user to select the destination file.

Available since: 3.32

###### Ide.Buffer:language-id

The “language-id” property is a convenience property to set the `GtkSourceBuffer:langauge` property using a string name.

Available since: 3.32

###### Ide.Buffer:read-only

The “read-only” property is set to `TRUE` when it has been discovered that the file represented by the `IdeBuffer` is read-only on the underlying storage.

Available since: 3.32

###### Ide.Buffer:state

The “state” property can be used to determine if the buffer is currently performing any specific background work, such as loading from or saving a buffer to storage.

Available since: 3.32

###### Ide.Buffer:style-scheme-name

The “style-scheme-name” is the name of the style scheme that is used. It is a convenience property so that you do not need to use the `GtkSourceStyleSchemeManager` to lookup style schemes.

Available since: 3.32

###### Ide.Buffer:title

The “title” for the buffer which includes some variant of the path to the underlying file.

Available since: 3.32

##### Properties inherited from GtkSourceBuffer (9)

###### GtkSource.Buffer:can-redo

No description available.

###### GtkSource.Buffer:can-undo

No description available.

###### GtkSource.Buffer:highlight-matching-brackets

Whether to highlight matching brackets in the buffer.

###### GtkSource.Buffer:highlight-syntax

Whether to highlight syntax in the buffer.

###### GtkSource.Buffer:implicit-trailing-newline

Whether the buffer has an implicit trailing newline. See gtk_source_buffer_set_implicit_trailing_newline().

Available since: 3.14

###### GtkSource.Buffer:language

No description available.

###### GtkSource.Buffer:max-undo-levels

Number of undo levels for the buffer. -1 means no limit. This property will only affect the default undo manager.

###### GtkSource.Buffer:style-scheme

Style scheme. It contains styles for syntax highlighting, optionally foreground, background, cursor color, current line color, and matching brackets style.

###### GtkSource.Buffer:undo-manager

No description available.

##### Properties inherited from GtkTextBuffer (6)

###### Gtk.TextBuffer:copy-target-list

The list of targets this buffer supports for clipboard copying and as DND source.

Available since: 2.10

###### Gtk.TextBuffer:cursor-position

The position of the insert mark (as offset from the beginning of the buffer). It is useful for getting notified when the cursor moves.

Available since: 2.10

###### Gtk.TextBuffer:has-selection

Whether the buffer has some text currently selected.

Available since: 2.10

###### Gtk.TextBuffer:paste-target-list

The list of targets this buffer supports for clipboard pasting and as DND destination.

Available since: 2.10

###### Gtk.TextBuffer:tag-table

No description available.

###### Gtk.TextBuffer:text

The text content of the buffer. Without child widgets and images, see `gtk_text_buffer_get_text()` for more information.

Available since: 2.8

#### Signals

###### Ide.Buffer::change-settled

The “change-settled” signal is emitted when the buffer has stopped being edited for a short period of time. This is useful to connect to when you want to perform work as the user is editing, but you don’t want to get in the way of their editing.

Available since: 3.32

###### Ide.Buffer::cursor-moved

This signal is emitted when the insertion location has moved. You might want to attach to this signal to update the location of the insert mark in the display.

Available since: 3.32

###### Ide.Buffer::line-flags-changed

The “line-flags-changed” signal is emitted when the buffer has detected ancillary information has changed for lines in the buffer. Such information might include diagnostics or version control information.

Available since: 3.32

###### Ide.Buffer::loaded

The “loaded” signal is emitted after the buffer is loaded.

Available since: 3.32

###### Ide.Buffer::request-scroll-to-insert

Requests that attached views scroll to insert location.

Available since: 3.32

##### Signals inherited from GtkSourceBuffer (5)

###### GtkSource.Buffer::bracket-matched

`iter` is set to a valid iterator pointing to the matching bracket if `state` is `GTK_SOURCE_BRACKET_MATCH_FOUND`. Otherwise `iter` is meaningless.

Available since: 2.12

###### GtkSource.Buffer::highlight-updated

The ::highlight-updated signal is emitted when the syntax highlighting and [context classes][context-classes] are updated in a certain region of the `buffer`.

###### GtkSource.Buffer::redo

The ::redo signal is emitted to redo the last undo operation.

###### GtkSource.Buffer::source-mark-updated

The ::source-mark-updated signal is emitted each time a mark is added to, moved or removed from the `buffer`.

###### GtkSource.Buffer::undo

The ::undo signal is emitted to undo the last user action which modified the buffer.

##### Signals inherited from GtkTextBuffer (13)

###### Gtk.TextBuffer::apply-tag

The ::apply-tag signal is emitted to apply a tag to a range of text in a `GtkTextBuffer`. Applying actually occurs in the default handler.

###### Gtk.TextBuffer::begin-user-action

The ::begin-user-action signal is emitted at the beginning of a single user-visible operation on a `GtkTextBuffer`.

###### Gtk.TextBuffer::changed

The ::changed signal is emitted when the content of a `GtkTextBuffer` has changed.

###### Gtk.TextBuffer::delete-range

The ::delete-range signal is emitted to delete a range from a `GtkTextBuffer`.

###### Gtk.TextBuffer::end-user-action

The ::end-user-action signal is emitted at the end of a single user-visible operation on the `GtkTextBuffer`.

###### Gtk.TextBuffer::insert-child-anchor

The ::insert-child-anchor signal is emitted to insert a `GtkTextChildAnchor` in a `GtkTextBuffer`. Insertion actually occurs in the default handler.

###### Gtk.TextBuffer::insert-pixbuf

The ::insert-pixbuf signal is emitted to insert a `GdkPixbuf` in a `GtkTextBuffer`. Insertion actually occurs in the default handler.

###### Gtk.TextBuffer::insert-text

The ::insert-text signal is emitted to insert text in a `GtkTextBuffer`. Insertion actually occurs in the default handler.

###### Gtk.TextBuffer::mark-deleted

The ::mark-deleted signal is emitted as notification after a `GtkTextMark` is deleted.

###### Gtk.TextBuffer::mark-set

The ::mark-set signal is emitted as notification after a `GtkTextMark` is set.

###### Gtk.TextBuffer::modified-changed

The ::modified-changed signal is emitted when the modified bit of a `GtkTextBuffer` flips.

###### Gtk.TextBuffer::paste-done

The paste-done signal is emitted after paste operation has been completed. This is useful to properly scroll the view to the end of the pasted text. See `gtk_text_buffer_paste_clipboard()` for more details.

Available since: 2.16

###### Gtk.TextBuffer::remove-tag

The ::remove-tag signal is emitted to remove all occurrences of `tag` from a range of text in a `GtkTextBuffer`. Removal actually occurs in the default handler.

##### Signals inherited from GObject (1)

###### GObject.Object::notify

The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.

#### Class structure

    struct IdeBufferClass {
      GtkSourceBufferClass parent_class;

    }

###### Class members

`parent_class` |
    GtkSourceBufferClass
| No description available.