Class
GtkSourceGutterRenderer
Description [src]
abstract class GtkSource.GutterRenderer : Gtk.Widget {
parent_instance: GtkWidget
}
Gutter cell renderer.
A GtkSourceGutterRenderer
represents a column in a GtkSourceGutter
. The
column contains one cell for each visible line of the GtkTextBuffer
. Due to
text wrapping, a cell can thus span multiple lines of the GtkTextView
. In
this case, GtkSourceGutterRendererAlignmentMode
controls the alignment of
the cell.
The gutter renderer is a GtkWidget
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 GtkSourceMark
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 gtk_source_gutter_renderer_set_alignment_mode()
.
The cells rendering occurs using Gtk.WidgetClass.snapshot
. 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
gtk_source_gutter_renderer_align_cell()
for a given line number with the
width and height measurement of the content they width to render.
Instance methods
gtk_source_gutter_renderer_activate
Emits the GtkSourceGutterRenderer::activate
signal of the renderer. This is
called from GtkSourceGutter
and should never have to be called manually.
gtk_source_gutter_renderer_align_cell
Locates where to render content that is width
x height
based on
the renderers alignment and padding.
gtk_source_gutter_renderer_get_alignment_mode
Get the alignment mode.
gtk_source_gutter_renderer_get_buffer
Gets the GtkSourceBuffer
for which the gutter renderer is drawing.
gtk_source_gutter_renderer_get_view
Get the view associated to the gutter renderer.
gtk_source_gutter_renderer_get_xalign
Gets the xalign
property.
gtk_source_gutter_renderer_get_xpad
Gets the xpad
property.
gtk_source_gutter_renderer_get_yalign
Gets the yalign
property.
gtk_source_gutter_renderer_get_ypad
Gets the ypad
property.
gtk_source_gutter_renderer_query_activatable
Get whether the renderer is activatable at the location provided. This is
called from GtkSourceGutter
to determine whether a renderer is activatable
using the mouse pointer.
gtk_source_gutter_renderer_set_alignment_mode
Set the alignment mode. The alignment mode describes the manner in which the
renderer is aligned (see GtkSourceGutterRenderer:xalign
and
GtkSourceGutterRenderer:yalign
).
gtk_source_gutter_renderer_set_xalign
Adjusts the xalign
property.
gtk_source_gutter_renderer_set_xpad
Adjusts the xpad
property.
gtk_source_gutter_renderer_set_yalign
Adjusts the yalign
property.
gtk_source_gutter_renderer_set_ypad
Adjusts the ypad
property.
Properties
GtkSource.GutterRenderer:alignment-mode
The alignment mode of the renderer.
GtkSource.GutterRenderer:lines
Contains information about the lines to be rendered.
GtkSource.GutterRenderer:view
The view on which the renderer is placed.
GtkSource.GutterRenderer:xalign
The horizontal alignment of the renderer.
GtkSource.GutterRenderer:xpad
The left and right padding of the renderer.
GtkSource.GutterRenderer:yalign
The vertical alignment of the renderer.
GtkSource.GutterRenderer:ypad
The top and bottom padding of the renderer.
Signals
GtkSource.GutterRenderer::activate
The signal is emitted when the renderer is activated.
GtkSource.GutterRenderer::query-activatable
The signal is emitted when the renderer can possibly be activated.
GtkSource.GutterRenderer::query-data
Class structure
struct GtkSourceGutterRendererClass {
GtkWidgetClass parent_class;
void (* query_data) (
GtkSourceGutterRenderer* renderer,
GtkSourceGutterLines* lines,
guint line
);
void (* begin) (
GtkSourceGutterRenderer* renderer,
GtkSourceGutterLines* lines
);
void (* snapshot_line) (
GtkSourceGutterRenderer* renderer,
GtkSnapshot* snapshot,
GtkSourceGutterLines* lines,
guint line
);
void (* end) (
GtkSourceGutterRenderer* renderer
);
void (* change_view) (
GtkSourceGutterRenderer* renderer,
GtkSourceView* old_view
);
void (* change_buffer) (
GtkSourceGutterRenderer* renderer,
GtkSourceBuffer* old_buffer
);
gboolean (* query_activatable) (
GtkSourceGutterRenderer* renderer,
GtkTextIter* iter,
GdkRectangle* area
);
void (* activate) (
GtkSourceGutterRenderer* renderer,
GtkTextIter* iter,
GdkRectangle* area,
guint button,
GdkModifierType state,
gint n_presses
);
}
Class members
parent_class |
|
No description available. | |
query_data |
|
No description available. | |
begin |
|
No description available. | |
snapshot_line |
|
No description available. | |
end |
|
No description available. | |
change_view |
|
No description available. | |
change_buffer |
|
No description available. | |
query_activatable |
|
No description available. | |
activate |
|
No description available. |
Virtual methods
GtkSource.GutterRendererClass.activate
Emits the GtkSourceGutterRenderer::activate
signal of the renderer. This is
called from GtkSourceGutter
and should never have to be called manually.
GtkSource.GutterRendererClass.begin
GtkSource.GutterRendererClass.change_buffer
This is called when the text buffer changes for renderer
.
GtkSource.GutterRendererClass.change_view
This is called when the text view changes for renderer
.
GtkSource.GutterRendererClass.end
GtkSource.GutterRendererClass.query_activatable
Get whether the renderer is activatable at the location provided. This is
called from GtkSourceGutter
to determine whether a renderer is activatable
using the mouse pointer.