## GtkSourceStyleScheme

GtkSourceStyleScheme — Controls the appearance of GtkSourceView

## Functions

const gchar * | gtk_source_style_scheme_get_id ()
const gchar * | gtk_source_style_scheme_get_name ()
const gchar * | gtk_source_style_scheme_get_description ()
GtkSourceStyleSchemeKind | gtk_source_style_scheme_get_kind ()
const gchar * | gtk_source_style_scheme_get_filename ()
GtkSourceStyle * | gtk_source_style_scheme_get_style ()

## Types and Values

struct | GtkSourceStyleScheme
enum | GtkSourceStyleSchemeKind

## Object Hierarchy

        GEnum
        ╰── GtkSourceStyleSchemeKind
        GObject
        ╰── GtkSourceStyleScheme

## Includes

    #include <gtksourceview/gtksource.h>

## Description

GtkSourceStyleScheme contains all the text styles to be used in GtkSourceView and GtkSourceBuffer. For instance, it contains text styles for syntax highlighting, it may contain foreground and background color for non-highlighted text, color for the line numbers, current line highlighting, bracket matching, etc.

Style schemes are stored in XML files. The format of a scheme file is documented in the style scheme reference.

The two style schemes with IDs "classic" and "tango" follow more closely the GTK theme (for example for the background color).

## Functions

### gtk_source_style_scheme_get_id ()

    const gchar *
    gtk_source_style_scheme_get_id (GtkSourceStyleScheme *scheme);

#### Parameters

scheme | a GtkSourceStyleScheme. |

#### Returns

the `scheme` ID, a unique string used to identify the style scheme in a GtkSourceStyleSchemeManager.

Since: 2.0

### gtk_source_style_scheme_get_name ()

    const gchar *
    gtk_source_style_scheme_get_name (GtkSourceStyleScheme *scheme);

#### Parameters

scheme | a GtkSourceStyleScheme. |

#### Returns

the `scheme` name, a human-readable (translated) string to present to the user.

Since: 2.0

### gtk_source_style_scheme_get_description ()

    const gchar *
    gtk_source_style_scheme_get_description
                                   (GtkSourceStyleScheme *scheme);

#### Parameters

scheme | a GtkSourceStyleScheme. |

#### Returns

the `scheme` description, a human-readable (translated) string to present to the user.

[nullable]

Since: 2.0

### gtk_source_style_scheme_get_kind ()

    GtkSourceStyleSchemeKind
    gtk_source_style_scheme_get_kind (GtkSourceStyleScheme *scheme);

#### Parameters

scheme | a GtkSourceStyleScheme. |

#### Returns

the kind of `scheme` .

Since: 299.2

### gtk_source_style_scheme_get_filename ()

    const gchar *
    gtk_source_style_scheme_get_filename (GtkSourceStyleScheme *scheme);

#### Parameters

scheme | a GtkSourceStyleScheme. |

#### Returns

`scheme` file name if the scheme was created parsing a style scheme file, or `NULL` in the other cases.

[nullable]

Since: 2.0

### gtk_source_style_scheme_get_style ()

    GtkSourceStyle *
    gtk_source_style_scheme_get_style (GtkSourceStyleScheme *scheme,
                                       const gchar *style_id);

#### Parameters

scheme | a GtkSourceStyleScheme. |
style_id | ID of the style to retrieve. |

#### Returns

the GtkSourceStyle which corresponds to `style_id` in the `scheme` , or `NULL` if not found.

[nullable][transfer none]

Since: 2.0

## Types and Values

### struct GtkSourceStyleScheme

    struct GtkSourceStyleScheme;

### enum GtkSourceStyleSchemeKind

The kind (or category) of a GtkSourceStyleScheme.

#### Members

GTK_SOURCE_STYLE_SCHEME_KIND_LIGHT | Light style. |
GTK_SOURCE_STYLE_SCHEME_KIND_DARK | Dark style. |
GTK_SOURCE_STYLE_SCHEME_KIND_LIGHT_ONLY | Light style. Supports only a light GTK theme. |
GTK_SOURCE_STYLE_SCHEME_KIND_DARK_ONLY | Dark style. Supports only a dark GTK theme. |

Since: 299.2