GutterRenderer


Object Hierarchy:

GtkSource.GutterRenderer GtkSource.GutterRenderer GtkSource.GutterRenderer Gtk.Widget Gtk.Widget Gtk.Widget->GtkSource.GutterRenderer GLib.InitiallyUnowned GLib.InitiallyUnowned GLib.InitiallyUnowned->Gtk.Widget GLib.Object GLib.Object GLib.Object->GLib.InitiallyUnowned Gtk.Accessible Gtk.Accessible Gtk.Accessible->GtkSource.GutterRenderer Gtk.Accessible->Gtk.Widget Gtk.Buildable Gtk.Buildable Gtk.Buildable->GtkSource.GutterRenderer Gtk.Buildable->Gtk.Widget Gtk.ConstraintTarget Gtk.ConstraintTarget Gtk.ConstraintTarget->GtkSource.GutterRenderer Gtk.ConstraintTarget->Gtk.Widget

Description:

[ CCode ( type_id = "gtk_source_gutter_renderer_get_type ()" ) ]
public abstract class GutterRenderer : Widget, Accessible, Buildable, ConstraintTarget

Gutter cell renderer.

A `GtkSourceGutterRenderer` represents a column in a [class@Gutter]. The column contains one cell for each visible line of the [ [email protected]]. Due to text wrapping, a cell can thus span multiple lines of the [[email protected]]. In this case, [ enum@GutterRendererAlignmentMode] controls the alignment of the cell.

The gutter renderer is a [[email protected]] and is measured using the normal widget measurement facilities. The width of the gutter will be determined by the measurements of the gutter renderers.

The width of a gutter renderer generally takes into account the entire text buffer. For instance, to display the line numbers, if the buffer contains 100 lines, the gutter renderer will always set its width such as three digits can be printed, even if only the first 20 lines are shown. Another strategy is to take into account only the visible lines. In this case, only two digits are necessary to display the line numbers of the first 20 lines. To take another example, the gutter renderer for [class@Mark]s doesn't need to take into account the text buffer to announce its width. It only depends on the icons size displayed in the gutter column.

When the available size to render a cell is greater than the required size to render the cell contents, the cell contents can be aligned horizontally and vertically with [[email protected]_alignment_mode].

The cells rendering occurs using [[email protected]]. Implementations should use `gtk_source_gutter_renderer_get_lines()` to retrieve information about the lines to be rendered. To help with aligning content which takes into account the padding and alignment of a cell, implementations may call [[email protected]_cell] for a given line number with the width and height measurement of the content they width to render.

All known sub-classes:

Namespace: GtkSource
Package: gtksourceview-5

Content:

Properties:

Creation methods:

Methods:

Signals:

Inherited Members:

All known members inherited from class Gtk.Widget
All known members inherited from class GLib.Object
All known members inherited from interface Gtk.Accessible
All known members inherited from interface Gtk.Buildable



2022 vala-language.org