GtkSourceGutter

GtkSourceGutter — Gutter object for GtkSourceView

Synopsis

#include <gtksourceview/gtksourcegutter.h>

struct              GtkSourceGutter;
GdkWindow *         gtk_source_gutter_get_window        (GtkSourceGutter *gutter);
GtkSourceGutterRenderer * gtk_source_gutter_insert      (GtkSourceGutter *gutter,
                                                         GType gtype,
                                                         gint position,
                                                         ...);
void                gtk_source_gutter_reorder           (GtkSourceGutter *gutter,
                                                         GtkSourceGutterRenderer *renderer,
                                                         gint position);
void                gtk_source_gutter_remove            (GtkSourceGutter *gutter,
                                                         GtkSourceGutterRenderer *renderer);
void                gtk_source_gutter_queue_draw        (GtkSourceGutter *gutter);

Object Hierarchy

  GObject
   +----GtkSourceGutter

Properties

  "view"                     GtkSourceView*        : Read / Write / Construct Only
  "window-type"              GtkTextWindowType     : Read / Write / Construct Only
  "xpad"                     gint                  : Read / Write / Construct
  "ypad"                     gint                  : Read / Write / Construct

Description

The GtkSourceGutter object represents the left and right gutters of the text view. It is used by GtkSourceView to draw the line numbers and category marks that might be present on a line. By packing additional GtkSourceGutterRenderer objects in the gutter, you can extend the gutter with your own custom drawings.

The gutter works very much the same way as cells rendered in a GtkTreeView. The concept is similar, with the exception that the gutter does not have an underlying GtkTreeModel. The builtin line number renderer is at position GTK_SOURCE_VIEW_GUTTER_POSITION_LINES (-30) and the marks renderer is at GTK_SOURCE_VIEW_GUTTER_POSITION_MARKS (-20). You can use these values to position custom renderers accordingly.

Details

struct GtkSourceGutter

struct GtkSourceGutter;

gtk_source_gutter_get_window ()

GdkWindow *         gtk_source_gutter_get_window        (GtkSourceGutter *gutter);

Get the GdkWindow of the gutter. The window will only be available when the gutter has at least one, non-zero width, cell renderer packed.

gutter :

a GtkSourceGutter.

Returns :

the GdkWindow of the gutter, or NULL if the gutter has no window. [transfer none]

Since 2.8


gtk_source_gutter_insert ()

GtkSourceGutterRenderer * gtk_source_gutter_insert      (GtkSourceGutter *gutter,
                                                         GType gtype,
                                                         gint position,
                                                         ...);

Inserts renderer into gutter at position.

gutter :

a GtkSourceGutter.

gtype :

the type of the gutter renderer (must inherit from GtkSourceGutterRenderer).

position :

the renderers position.

Returns :

a GtkSourceGutterRenderer. [transfer none]

Since 3.0


gtk_source_gutter_reorder ()

void                gtk_source_gutter_reorder           (GtkSourceGutter *gutter,
                                                         GtkSourceGutterRenderer *renderer,
                                                         gint position);

Reorders renderer in gutter to new position.

gutter :

a GtkSourceGutterRenderer.

renderer :

a GtkCellRenderer.

position :

the new renderer position.

Since 2.8


gtk_source_gutter_remove ()

void                gtk_source_gutter_remove            (GtkSourceGutter *gutter,
                                                         GtkSourceGutterRenderer *renderer);

Removes renderer from gutter.

gutter :

a GtkSourceGutter.

renderer :

a GtkSourceGutterRenderer.

Since 2.8


gtk_source_gutter_queue_draw ()

void                gtk_source_gutter_queue_draw        (GtkSourceGutter *gutter);

Invalidates the drawable area of the gutter. You can use this to force a redraw of the gutter if something has changed and needs to be redrawn.

gutter :

a GtkSourceGutter.

Since 2.8

Property Details

The "view" property

  "view"                     GtkSourceView*        : Read / Write / Construct Only

The GtkSourceView of the gutter


The "window-type" property

  "window-type"              GtkTextWindowType     : Read / Write / Construct Only

The text window type on which the window is placed

Default value: GTK_TEXT_WINDOW_PRIVATE


The "xpad" property

  "xpad"                     gint                  : Read / Write / Construct

The x-padding.

Allowed values: >= G_MAXULONG

Default value: 0


The "ypad" property

  "ypad"                     gint                  : Read / Write / Construct

The y-padding.

Allowed values: >= G_MAXULONG

Default value: 0

See Also

GtkSourceView