<?xml version="1.0"?>
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
               "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
<!ENTITY % local.common.attrib "xmlns:xi  CDATA  #FIXED 'http://www.w3.org/2003/XInclude'">
<!ENTITY version SYSTEM "version.xml">
<!ENTITY pi "&#960;">
<!ENTITY solidus "&#8260;">
]>
<refentry id="GtkCssProvider">
<refmeta>
<refentrytitle role="top_of_page" id="GtkCssProvider.top_of_page">GtkCssProvider</refentrytitle>
<manvolnum>3</manvolnum>
<refmiscinfo>GTK4 Library</refmiscinfo>
</refmeta>
<refnamediv>
<refname>GtkCssProvider</refname>
<refpurpose>CSS-like styling for widgets</refpurpose>
</refnamediv>

<refsect1 id="GtkCssProvider.functions" role="functions_proto">
<title role="functions_proto.title">Functions</title>
<informaltable pgwide="1" frame="none">
<tgroup cols="2">
<colspec colname="functions_proto_type" colwidth="150px"/>
<colspec colname="functions_proto_name"/>
<tbody>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-css-provider-load-named">gtk_css_provider_load_named</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-css-provider-load-from-data">gtk_css_provider_load_from_data</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-css-provider-load-from-file">gtk_css_provider_load_from_file</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-css-provider-load-from-path">gtk_css_provider_load_from_path</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-css-provider-load-from-resource">gtk_css_provider_load_from_resource</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="GtkCssProvider"><returnvalue>GtkCssProvider</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-css-provider-new">gtk_css_provider_new</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="char"><returnvalue>char</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-css-provider-to-string">gtk_css_provider_to_string</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>

<row><entry role="function_type"><link linkend="GtkCssSection"><returnvalue>GtkCssSection</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-css-section-new">gtk_css_section_new</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="GtkCssSection"><returnvalue>GtkCssSection</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-css-section-ref">gtk_css_section_ref</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-css-section-unref">gtk_css_section_unref</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-css-section-print">gtk_css_section_print</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="char"><returnvalue>char</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-css-section-to-string">gtk_css_section_to_string</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="GFile"><returnvalue>GFile</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-css-section-get-file">gtk_css_section_get_file</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="GtkCssSection"><returnvalue>GtkCssSection</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-css-section-get-parent">gtk_css_section_get_parent</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type">const <link linkend="GtkCssLocation"><returnvalue>GtkCssLocation</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-css-section-get-start-location">gtk_css_section_get_start_location</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type">const <link linkend="GtkCssLocation"><returnvalue>GtkCssLocation</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-css-section-get-end-location">gtk_css_section_get_end_location</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>

</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 id="GtkCssProvider.signals" role="signal_proto">
<title role="signal_proto.title">Signals</title>
<informaltable frame="none">
<tgroup cols="3">
<colspec colname="signal_proto_type" colwidth="150px"/>
<colspec colname="signal_proto_name" colwidth="300px"/>
<colspec colname="signal_proto_flags" colwidth="200px"/>
<tbody>
<row><entry role="signal_type"><link linkend="void"><returnvalue>void</returnvalue></link></entry><entry role="signal_name"><link linkend="GtkCssProvider-parsing-error">parsing-error</link></entry><entry role="signal_flags"><link linkend="G-SIGNAL-RUN-LAST:CAPS">Run Last</link></entry></row>

</tbody>
</tgroup>
</informaltable>
</refsect1>
<anchor id="GtkCssSection"/><refsect1 id="GtkCssProvider.other" role="other_proto">
<title role="other_proto.title">Types and Values</title>
<informaltable pgwide="1" frame="none">
<tgroup cols="2">
<colspec colname="other_proto_type" colwidth="150px"/>
<colspec colname="other_proto_name"/>
<tbody>
<row><entry role="datatype_keyword">struct</entry><entry role="function_name"><link linkend="GtkCssProvider-struct">GtkCssProvider</link></entry></row>
<row><entry role="define_keyword">#define</entry><entry role="function_name"><link linkend="GTK-CSS-PARSER-ERROR:CAPS">GTK_CSS_PARSER_ERROR</link></entry></row>
<row><entry role="datatype_keyword">enum</entry><entry role="function_name"><link linkend="GtkCssParserError">GtkCssParserError</link></entry></row>
<row><entry role="datatype_keyword">enum</entry><entry role="function_name"><link linkend="GtkCssParserWarning">GtkCssParserWarning</link></entry></row>

<row><entry role="datatype_keyword">struct</entry><entry role="function_name"><link linkend="GtkCssLocation">GtkCssLocation</link></entry></row>
<row><entry role="datatype_keyword"></entry><entry role="function_name"><link linkend="GtkCssSection-struct">GtkCssSection</link></entry></row>

</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 id="GtkCssProvider.object-hierarchy" role="object_hierarchy">
<title role="object_hierarchy.title">Object Hierarchy</title>
<screen>    <link linkend="GBoxed">GBoxed</link>
    <phrase role="lineart">&#9584;&#9472;&#9472;</phrase> GtkCssSection
    <link linkend="GObject">GObject</link>
    <phrase role="lineart">&#9584;&#9472;&#9472;</phrase> GtkCssProvider
</screen>
</refsect1>
<refsect1 id="GtkCssProvider.implemented-interfaces" role="impl_interfaces">
<title role="impl_interfaces.title">Implemented Interfaces</title>
<para>
GtkCssProvider implements
 <link linkend="GtkStyleProvider">GtkStyleProvider</link>.</para>

</refsect1>

<refsect1 id="GtkCssProvider.includes"><title>Includes</title><synopsis>#include &lt;gtk/gtk.h&gt;
</synopsis></refsect1>

<refsect1 id="GtkCssProvider.description" role="desc">
<title role="desc.title">Description</title>
<para>GtkCssProvider is an object implementing the <link linkend="GtkStyleProvider"><type>GtkStyleProvider</type></link> interface.
It is able to parse <link linkend="css-overview">CSS-like</link> input in order to style widgets.</para>
<para>An application can make GTK parse a specific CSS style sheet by calling
<link linkend="gtk-css-provider-load-from-file"><function>gtk_css_provider_load_from_file()</function></link> or <link linkend="gtk-css-provider-load-from-resource"><function>gtk_css_provider_load_from_resource()</function></link>
and adding the provider with <link linkend="gtk-style-context-add-provider"><function>gtk_style_context_add_provider()</function></link> or
<link linkend="gtk-style-context-add-provider-for-display"><function>gtk_style_context_add_provider_for_display()</function></link>.</para>
<para>In addition, certain files will be read when GTK is initialized. First, the
file <literal>$XDG_CONFIG_HOME/gtk-4.0/gtk.css</literal> is loaded if it exists. Then, GTK
loads the first existing file among
<literal>XDG_DATA_HOME/themes/THEME/gtk-VERSION/gtk-VARIANT.css</literal>,
<literal>$HOME/.themes/THEME/gtk-VERSION/gtk-VARIANT.css</literal>,
<literal>$XDG_DATA_DIRS/themes/THEME/gtk-VERSION/gtk-VARIANT.css</literal> and
<literal>DATADIR/share/themes/THEME/gtk-VERSION/gtk-VARIANT.css</literal>,
where <literal>THEME</literal> is the name of the current theme (see the <link linkend="GtkSettings--gtk-theme-name"><type>“gtk-theme-name”</type></link>
setting), VARIANT is the variant to load (see the
<link linkend="GtkSettings--gtk-application-prefer-dark-theme"><type>“gtk-application-prefer-dark-theme”</type></link> setting), <literal>DATADIR</literal>
is the prefix configured when GTK was compiled (unless overridden by the
<literal>GTK_DATA_PREFIX</literal> environment variable), and <literal>VERSION</literal> is the GTK version number.
If no file is found for the current version, GTK tries older versions all the
way back to 4.0.</para>

</refsect1>
<refsect1 id="GtkCssProvider.functions_details" role="details">
<title role="details.title">Functions</title>
<refsect2 id="gtk-css-provider-load-named" role="function">
<title>gtk_css_provider_load_named&#160;()</title>
<indexterm zone="gtk-css-provider-load-named"><primary>gtk_css_provider_load_named</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_css_provider_load_named (<parameter><link linkend="GtkCssProvider"><type>GtkCssProvider</type></link> *provider</parameter>,
                             <parameter>const <link linkend="char"><type>char</type></link> *name</parameter>,
                             <parameter>const <link linkend="char"><type>char</type></link> *variant</parameter>);</programlisting>
<para>Loads a theme from the usual theme paths. The actual process of
finding the theme might change between releases, but it is
guaranteed that this function uses the same mechanism to load the
theme that GTK uses for loading its own theme.</para>
<refsect3 id="gtk-css-provider-load-named.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>provider</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkCssProvider"><type>GtkCssProvider</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>name</para></entry>
<entry role="parameter_description"><para>A theme name</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>variant</para></entry>
<entry role="parameter_description"><para>variant to load, for example, "dark", or
<link linkend="NULL:CAPS"><literal>NULL</literal></link> for the default. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>allow-none</acronym>]</emphasis></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-css-provider-load-from-data" role="function">
<title>gtk_css_provider_load_from_data&#160;()</title>
<indexterm zone="gtk-css-provider-load-from-data"><primary>gtk_css_provider_load_from_data</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_css_provider_load_from_data (<parameter><link linkend="GtkCssProvider"><type>GtkCssProvider</type></link> *css_provider</parameter>,
                                 <parameter>const <link linkend="gchar"><type>gchar</type></link> *data</parameter>,
                                 <parameter><link linkend="gssize"><type>gssize</type></link> length</parameter>);</programlisting>
<para>Loads <parameter>data</parameter>
 into <parameter>css_provider</parameter>
, and by doing so clears any previously loaded
information.</para>
<refsect3 id="gtk-css-provider-load-from-data.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>css_provider</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkCssProvider"><type>GtkCssProvider</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>data</para></entry>
<entry role="parameter_description"><para>CSS data loaded in memory. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>array</acronym> length=length][<acronym>element-type</acronym> guint8]</emphasis></entry></row>
<row><entry role="parameter_name"><para>length</para></entry>
<entry role="parameter_description"><para>the length of <parameter>data</parameter>
in bytes, or -1 for NUL terminated strings. If
<parameter>length</parameter>
is not -1, the code will assume it is not NUL terminated and will
potentially do a copy.</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-css-provider-load-from-file" role="function">
<title>gtk_css_provider_load_from_file&#160;()</title>
<indexterm zone="gtk-css-provider-load-from-file"><primary>gtk_css_provider_load_from_file</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_css_provider_load_from_file (<parameter><link linkend="GtkCssProvider"><type>GtkCssProvider</type></link> *css_provider</parameter>,
                                 <parameter><link linkend="GFile"><type>GFile</type></link> *file</parameter>);</programlisting>
<para>Loads the data contained in <parameter>file</parameter>
 into <parameter>css_provider</parameter>
, making it
clear any previously loaded information.</para>
<refsect3 id="gtk-css-provider-load-from-file.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>css_provider</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkCssProvider"><type>GtkCssProvider</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>file</para></entry>
<entry role="parameter_description"><para><link linkend="GFile"><type>GFile</type></link> pointing to a file to load</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-css-provider-load-from-path" role="function">
<title>gtk_css_provider_load_from_path&#160;()</title>
<indexterm zone="gtk-css-provider-load-from-path"><primary>gtk_css_provider_load_from_path</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_css_provider_load_from_path (<parameter><link linkend="GtkCssProvider"><type>GtkCssProvider</type></link> *css_provider</parameter>,
                                 <parameter>const <link linkend="gchar"><type>gchar</type></link> *path</parameter>);</programlisting>
<para>Loads the data contained in <parameter>path</parameter>
 into <parameter>css_provider</parameter>
, making it clear
any previously loaded information.</para>
<refsect3 id="gtk-css-provider-load-from-path.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>css_provider</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkCssProvider"><type>GtkCssProvider</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>path</para></entry>
<entry role="parameter_description"><para>the path of a filename to load, in the GLib filename encoding</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-css-provider-load-from-resource" role="function">
<title>gtk_css_provider_load_from_resource&#160;()</title>
<indexterm zone="gtk-css-provider-load-from-resource"><primary>gtk_css_provider_load_from_resource</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_css_provider_load_from_resource (<parameter><link linkend="GtkCssProvider"><type>GtkCssProvider</type></link> *css_provider</parameter>,
                                     <parameter>const <link linkend="gchar"><type>gchar</type></link> *resource_path</parameter>);</programlisting>
<para>Loads the data contained in the resource at <parameter>resource_path</parameter>
 into
the <link linkend="GtkCssProvider"><type>GtkCssProvider</type></link>, clearing any previously loaded information.</para>
<para>To track errors while loading CSS, connect to the
<link linkend="GtkCssProvider-parsing-error"><type>“parsing-error”</type></link> signal.</para>
<refsect3 id="gtk-css-provider-load-from-resource.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>css_provider</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkCssProvider"><type>GtkCssProvider</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>resource_path</para></entry>
<entry role="parameter_description"><para>a <link linkend="GResource"><type>GResource</type></link> resource path</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-css-provider-new" role="function">
<title>gtk_css_provider_new&#160;()</title>
<indexterm zone="gtk-css-provider-new"><primary>gtk_css_provider_new</primary></indexterm>
<programlisting language="C"><link linkend="GtkCssProvider"><returnvalue>GtkCssProvider</returnvalue></link>&#160;*
gtk_css_provider_new (<parameter><type>void</type></parameter>);</programlisting>
<para>Returns a newly created <link linkend="GtkCssProvider"><type>GtkCssProvider</type></link>.</para>
<refsect3 id="gtk-css-provider-new.returns" role="returns">
<title>Returns</title>
<para> A new <link linkend="GtkCssProvider"><type>GtkCssProvider</type></link></para>
</refsect3></refsect2>
<refsect2 id="gtk-css-provider-to-string" role="function">
<title>gtk_css_provider_to_string&#160;()</title>
<indexterm zone="gtk-css-provider-to-string"><primary>gtk_css_provider_to_string</primary></indexterm>
<programlisting language="C"><link linkend="char"><returnvalue>char</returnvalue></link>&#160;*
gtk_css_provider_to_string (<parameter><link linkend="GtkCssProvider"><type>GtkCssProvider</type></link> *provider</parameter>);</programlisting>
<para>Converts the <parameter>provider</parameter>
 into a string representation in CSS
format.</para>
<para>Using <link linkend="gtk-css-provider-load-from-data"><function>gtk_css_provider_load_from_data()</function></link> with the return value
from this function on a new provider created with
<link linkend="gtk-css-provider-new"><function>gtk_css_provider_new()</function></link> will basically create a duplicate of
this <parameter>provider</parameter>
.</para>
<refsect3 id="gtk-css-provider-to-string.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>provider</para></entry>
<entry role="parameter_description"><para>the provider to write to a string</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-css-provider-to-string.returns" role="returns">
<title>Returns</title>
<para> a new string representing the <parameter>provider</parameter>
.</para>
</refsect3></refsect2>
<refsect2 id="gtk-css-section-new" role="function">
<title>gtk_css_section_new&#160;()</title>
<indexterm zone="gtk-css-section-new"><primary>gtk_css_section_new</primary></indexterm>
<programlisting language="C"><link linkend="GtkCssSection"><returnvalue>GtkCssSection</returnvalue></link>&#160;*
gtk_css_section_new (<parameter><link linkend="GFile"><type>GFile</type></link> *file</parameter>,
                     <parameter>const <link linkend="GtkCssLocation"><type>GtkCssLocation</type></link> *start</parameter>,
                     <parameter>const <link linkend="GtkCssLocation"><type>GtkCssLocation</type></link> *end</parameter>);</programlisting>
<para>Creates a new <link linkend="GtkCssSection"><type>GtkCssSection</type></link> referring to the section
in the given <parameter>file</parameter>
 from the <parameter>start</parameter>
 location to the
<parameter>end</parameter>
 location.</para>

<para><emphasis role="annotation">[<acronym>constructor</acronym>]</emphasis></para><refsect3 id="gtk-css-section-new.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>file</para></entry>
<entry role="parameter_description"><para>The file this section refers to. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>nullable</acronym>][<acronym>transfer none</acronym>]</emphasis></entry></row>
<row><entry role="parameter_name"><para>start</para></entry>
<entry role="parameter_description"><para>The start location</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>end</para></entry>
<entry role="parameter_description"><para>The end location</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-css-section-new.returns" role="returns">
<title>Returns</title>
<para> a new <link linkend="GtkCssSection"><type>GtkCssSection</type></link></para>
</refsect3></refsect2>
<refsect2 id="gtk-css-section-ref" role="function">
<title>gtk_css_section_ref&#160;()</title>
<indexterm zone="gtk-css-section-ref"><primary>gtk_css_section_ref</primary></indexterm>
<programlisting language="C"><link linkend="GtkCssSection"><returnvalue>GtkCssSection</returnvalue></link>&#160;*
gtk_css_section_ref (<parameter><link linkend="GtkCssSection"><type>GtkCssSection</type></link> *section</parameter>);</programlisting>
<para>Increments the reference count on <parameter>section</parameter>
.</para>
<refsect3 id="gtk-css-section-ref.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>section</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkCssSection"><type>GtkCssSection</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-css-section-ref.returns" role="returns">
<title>Returns</title>
<para> <parameter>section</parameter>
itself.</para>
</refsect3></refsect2>
<refsect2 id="gtk-css-section-unref" role="function">
<title>gtk_css_section_unref&#160;()</title>
<indexterm zone="gtk-css-section-unref"><primary>gtk_css_section_unref</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_css_section_unref (<parameter><link linkend="GtkCssSection"><type>GtkCssSection</type></link> *section</parameter>);</programlisting>
<para>Decrements the reference count on <parameter>section</parameter>
, freeing the
structure if the reference count reaches 0.</para>
<refsect3 id="gtk-css-section-unref.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>section</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkCssSection"><type>GtkCssSection</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-css-section-print" role="function">
<title>gtk_css_section_print&#160;()</title>
<indexterm zone="gtk-css-section-print"><primary>gtk_css_section_print</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_css_section_print (<parameter>const <link linkend="GtkCssSection"><type>GtkCssSection</type></link> *section</parameter>,
                       <parameter><link linkend="GString"><type>GString</type></link> *string</parameter>);</programlisting>
<para>Prints the <parameter>section</parameter>
 into <parameter>string</parameter>
 in a human-readable form. This
is a form like <literal>gtk.css:32:1-23</literal> to denote line 32, characters
1 to 23 in the file gtk.css.</para>
<refsect3 id="gtk-css-section-print.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>section</para></entry>
<entry role="parameter_description"><para>a section</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>string</para></entry>
<entry role="parameter_description"><para>a <link linkend="GString"><type>GString</type></link> to print to</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-css-section-to-string" role="function">
<title>gtk_css_section_to_string&#160;()</title>
<indexterm zone="gtk-css-section-to-string"><primary>gtk_css_section_to_string</primary></indexterm>
<programlisting language="C"><link linkend="char"><returnvalue>char</returnvalue></link>&#160;*
gtk_css_section_to_string (<parameter>const <link linkend="GtkCssSection"><type>GtkCssSection</type></link> *section</parameter>);</programlisting>
<para>Prints the section into a human-readable text form using
<link linkend="gtk-css-section-print"><function>gtk_css_section_print()</function></link>.</para>
<refsect3 id="gtk-css-section-to-string.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>section</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkCssSection"><type>GtkCssSection</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-css-section-to-string.returns" role="returns">
<title>Returns</title>
<para>A new string. </para>
<para><emphasis role="annotation">[<acronym>transfer full</acronym>]</emphasis></para>
</refsect3></refsect2>
<refsect2 id="gtk-css-section-get-file" role="function">
<title>gtk_css_section_get_file&#160;()</title>
<indexterm zone="gtk-css-section-get-file"><primary>gtk_css_section_get_file</primary></indexterm>
<programlisting language="C"><link linkend="GFile"><returnvalue>GFile</returnvalue></link>&#160;*
gtk_css_section_get_file (<parameter>const <link linkend="GtkCssSection"><type>GtkCssSection</type></link> *section</parameter>);</programlisting>
<para>Gets the file that <parameter>section</parameter>
 was parsed from. If no such file exists,
for example because the CSS was loaded via
<parameter><link linkend="gtk-css-provider-load-from-data"><function>gtk_css_provider_load_from_data()</function></link></parameter>
, then <link linkend="NULL:CAPS"><literal>NULL</literal></link> is returned.</para>
<refsect3 id="gtk-css-section-get-file.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>section</para></entry>
<entry role="parameter_description"><para>the section</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-css-section-get-file.returns" role="returns">
<title>Returns</title>
<para>the <link linkend="GFile"><type>GFile</type></link> that <parameter>section</parameter>
was parsed from
or <link linkend="NULL:CAPS"><literal>NULL</literal></link> if <parameter>section</parameter>
was parsed from other data. </para>
<para><emphasis role="annotation">[<acronym>transfer none</acronym>]</emphasis></para>
</refsect3></refsect2>
<refsect2 id="gtk-css-section-get-parent" role="function">
<title>gtk_css_section_get_parent&#160;()</title>
<indexterm zone="gtk-css-section-get-parent"><primary>gtk_css_section_get_parent</primary></indexterm>
<programlisting language="C"><link linkend="GtkCssSection"><returnvalue>GtkCssSection</returnvalue></link>&#160;*
gtk_css_section_get_parent (<parameter>const <link linkend="GtkCssSection"><type>GtkCssSection</type></link> *section</parameter>);</programlisting>
<para>Gets the parent section for the given <parameter>section</parameter>
. The parent section is
the section that contains this <parameter>section</parameter>
. A special case are sections of
type <link linkend="GTK-CSS-SECTION-DOCUMENT:CAPS"><type>GTK_CSS_SECTION_DOCUMENT</type></link>. Their parent will either be <link linkend="NULL:CAPS"><literal>NULL</literal></link>
if they are the original CSS document that was loaded by
<link linkend="gtk-css-provider-load-from-file"><function>gtk_css_provider_load_from_file()</function></link> or a section of type
<link linkend="GTK-CSS-SECTION-IMPORT:CAPS"><type>GTK_CSS_SECTION_IMPORT</type></link> if it was loaded with an import rule from
a different file.</para>
<refsect3 id="gtk-css-section-get-parent.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>section</para></entry>
<entry role="parameter_description"><para>the section</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-css-section-get-parent.returns" role="returns">
<title>Returns</title>
<para>the parent section or <link linkend="NULL:CAPS"><literal>NULL</literal></link> if none. </para>
<para><emphasis role="annotation">[<acronym>nullable</acronym>][<acronym>transfer none</acronym>]</emphasis></para>
</refsect3></refsect2>
<refsect2 id="gtk-css-section-get-start-location" role="function">
<title>gtk_css_section_get_start_location&#160;()</title>
<indexterm zone="gtk-css-section-get-start-location"><primary>gtk_css_section_get_start_location</primary></indexterm>
<programlisting language="C">const <link linkend="GtkCssLocation"><returnvalue>GtkCssLocation</returnvalue></link>&#160;*
gtk_css_section_get_start_location (<parameter>const <link linkend="GtkCssSection"><type>GtkCssSection</type></link> *section</parameter>);</programlisting>
<para>Returns the location in the CSS document where this section starts.</para>
<refsect3 id="gtk-css-section-get-start-location.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>section</para></entry>
<entry role="parameter_description"><para>the section</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-css-section-get-start-location.returns" role="returns">
<title>Returns</title>
<para>The start location of
this section. </para>
<para><emphasis role="annotation">[<acronym>transfer none</acronym>][<acronym>not nullable</acronym>]</emphasis></para>
</refsect3></refsect2>
<refsect2 id="gtk-css-section-get-end-location" role="function">
<title>gtk_css_section_get_end_location&#160;()</title>
<indexterm zone="gtk-css-section-get-end-location"><primary>gtk_css_section_get_end_location</primary></indexterm>
<programlisting language="C">const <link linkend="GtkCssLocation"><returnvalue>GtkCssLocation</returnvalue></link>&#160;*
gtk_css_section_get_end_location (<parameter>const <link linkend="GtkCssSection"><type>GtkCssSection</type></link> *section</parameter>);</programlisting>
<para>Returns the location in the CSS document where this section ends.</para>
<refsect3 id="gtk-css-section-get-end-location.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>section</para></entry>
<entry role="parameter_description"><para>the section</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-css-section-get-end-location.returns" role="returns">
<title>Returns</title>
<para>The end location of
this section. </para>
<para><emphasis role="annotation">[<acronym>transfer none</acronym>][<acronym>not nullable</acronym>]</emphasis></para>
</refsect3></refsect2>

</refsect1>
<refsect1 id="GtkCssProvider.other_details" role="details">
<title role="details.title">Types and Values</title>
<refsect2 id="GtkCssProvider-struct" role="struct">
<title>struct GtkCssProvider</title>
<indexterm zone="GtkCssProvider-struct"><primary>GtkCssProvider</primary></indexterm>
<programlisting language="C">struct GtkCssProvider;</programlisting>
</refsect2>
<refsect2 id="GTK-CSS-PARSER-ERROR:CAPS" role="macro">
<title>GTK_CSS_PARSER_ERROR</title>
<indexterm zone="GTK-CSS-PARSER-ERROR:CAPS"><primary>GTK_CSS_PARSER_ERROR</primary></indexterm>
<programlisting language="C">#define GTK_CSS_PARSER_ERROR (gtk_css_parser_error_quark ())
</programlisting>
<para>Domain for <link linkend="GtkCssParser"><type>GtkCssParser</type></link> errors.</para>
</refsect2>
<refsect2 id="GtkCssParserError" role="enum">
<title>enum GtkCssParserError</title>
<indexterm zone="GtkCssParserError"><primary>GtkCssParserError</primary></indexterm>
<para>Errors that can occur while parsing CSS.</para>
<para>These errors are unexpected and will cause parts of the given CSS
to be ignored.</para>
<refsect3 id="GtkCssParserError.members" role="enum_members">
<title>Members</title>
<informaltable role="enum_members_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="enum_members_name" colwidth="300px"/>
<colspec colname="enum_members_description"/>
<colspec colname="enum_members_annotations" colwidth="200px"/>
<tbody>
<row role="constant"><entry role="enum_member_name"><para id="GTK-CSS-PARSER-ERROR-FAILED:CAPS">GTK_CSS_PARSER_ERROR_FAILED</para></entry>
<entry role="enum_member_description"><para>Unknown failure.</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-CSS-PARSER-ERROR-SYNTAX:CAPS">GTK_CSS_PARSER_ERROR_SYNTAX</para></entry>
<entry role="enum_member_description"><para>The given text does not form valid
syntax</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-CSS-PARSER-ERROR-IMPORT:CAPS">GTK_CSS_PARSER_ERROR_IMPORT</para></entry>
<entry role="enum_member_description"><para>Failed to import a resource</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-CSS-PARSER-ERROR-NAME:CAPS">GTK_CSS_PARSER_ERROR_NAME</para></entry>
<entry role="enum_member_description"><para>The given name has not been defined</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-CSS-PARSER-ERROR-UNKNOWN-VALUE:CAPS">GTK_CSS_PARSER_ERROR_UNKNOWN_VALUE</para></entry>
<entry role="enum_member_description"><para>The given value is not
correct</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="GtkCssParserWarning" role="enum">
<title>enum GtkCssParserWarning</title>
<indexterm zone="GtkCssParserWarning"><primary>GtkCssParserWarning</primary></indexterm>
<para>Warnings that can occur while parsing CSS.</para>
<para>Unlike <link linkend="GtkCssParserErrors"><type>GtkCssParserErrors</type></link>, warnings do not cause the parser to
skip any input, but they indicate issues that should be fixed.</para>
<refsect3 id="GtkCssParserWarning.members" role="enum_members">
<title>Members</title>
<informaltable role="enum_members_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="enum_members_name" colwidth="300px"/>
<colspec colname="enum_members_description"/>
<colspec colname="enum_members_annotations" colwidth="200px"/>
<tbody>
<row role="constant"><entry role="enum_member_name"><para id="GTK-CSS-PARSER-WARNING-DEPRECATED:CAPS">GTK_CSS_PARSER_WARNING_DEPRECATED</para></entry>
<entry role="enum_member_description"><para>The given construct is
deprecated and will be removed in a future version</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-CSS-PARSER-WARNING-SYNTAX:CAPS">GTK_CSS_PARSER_WARNING_SYNTAX</para></entry>
<entry role="enum_member_description"><para>A syntax construct was used
that should be avoided</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-CSS-PARSER-WARNING-UNIMPLEMENTED:CAPS">GTK_CSS_PARSER_WARNING_UNIMPLEMENTED</para></entry>
<entry role="enum_member_description"><para>A feature is not
implemented</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="GtkCssLocation" role="struct">
<title>struct GtkCssLocation</title>
<indexterm zone="GtkCssLocation"><primary>GtkCssLocation</primary></indexterm>
<programlisting language="C">struct GtkCssLocation {
  gsize                  bytes;
  gsize                  chars;
  gsize                  lines;
  gsize                  line_bytes;
  gsize                  line_chars;
};
</programlisting>
<para><parameter>GtkCssLocation</parameter>
 is used to present a location in a file - or other
source of data parsed by the CSS engine.</para>
<para>The <parameter>bytes</parameter>
 and <parameter>line_bytes</parameter>
 offsets are meant to be used to
programmatically match data. The <parameter>lines</parameter>
 and <parameter>line_chars</parameter>
 offsets
can be used for printing the location in a file.</para>
<para>Note that the <parameter>lines</parameter>
 parameter starts from 0 and is increased
whenever a CSS line break is encountered. (CSS defines the C character
sequences "\r\n", "\r", "\n" and "\f" as newlines.)
If your document uses different rules for line breaking, you might want
run into problems here.</para>
<refsect3 id="GtkCssLocation.members" role="struct_members">
<title>Members</title>
<informaltable role="struct_members_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="struct_members_name" colwidth="300px"/>
<colspec colname="struct_members_description"/>
<colspec colname="struct_members_annotations" colwidth="200px"/>
<tbody>
<row role="member"><entry role="struct_member_name"><para><link linkend="gsize"><type>gsize</type></link>&#160;<structfield id="GtkCssLocation.bytes">bytes</structfield>;</para></entry>
<entry role="struct_member_description"><para>number of bytes parsed since the beginning</para></entry>
<entry role="struct_member_annotations"></entry>
</row>
<row role="member"><entry role="struct_member_name"><para><link linkend="gsize"><type>gsize</type></link>&#160;<structfield id="GtkCssLocation.chars">chars</structfield>;</para></entry>
<entry role="struct_member_description"><para>number of characters parsed since the beginning</para></entry>
<entry role="struct_member_annotations"></entry>
</row>
<row role="member"><entry role="struct_member_name"><para><link linkend="gsize"><type>gsize</type></link>&#160;<structfield id="GtkCssLocation.lines">lines</structfield>;</para></entry>
<entry role="struct_member_description"><para>number of full lines that have been parsed
If you want to display this as a line number, you
need to add 1 to this.</para></entry>
<entry role="struct_member_annotations"></entry>
</row>
<row role="member"><entry role="struct_member_name"><para><link linkend="gsize"><type>gsize</type></link>&#160;<structfield id="GtkCssLocation.line-bytes">line_bytes</structfield>;</para></entry>
<entry role="struct_member_description"><para>Number of bytes parsed since the last line break</para></entry>
<entry role="struct_member_annotations"></entry>
</row>
<row role="member"><entry role="struct_member_name"><para><link linkend="gsize"><type>gsize</type></link>&#160;<structfield id="GtkCssLocation.line-chars">line_chars</structfield>;</para></entry>
<entry role="struct_member_description"><para>Number of characters parsed since the last line
break</para></entry>
<entry role="struct_member_annotations"></entry>
</row>
</tbody></tgroup></informaltable>
</refsect3>
</refsect2>
<refsect2 id="GtkCssSection-struct" role="struct">
<title>GtkCssSection</title>
<indexterm zone="GtkCssSection-struct"><primary>GtkCssSection</primary></indexterm>
<programlisting language="C">typedef struct _GtkCssSection GtkCssSection;</programlisting>
<para>Defines a part of a CSS document. Because sections are nested into
one another, you can use <link linkend="gtk-css-section-get-parent"><function>gtk_css_section_get_parent()</function></link> to get the
containing region.</para>
</refsect2>

</refsect1>
<refsect1 id="GtkCssProvider.signal-details" role="signals">
<title role="signals.title">Signal Details</title>
<refsect2 id="GtkCssProvider-parsing-error" role="signal"><title>The <literal>“parsing-error”</literal> signal</title>
<indexterm zone="GtkCssProvider-parsing-error"><primary>GtkCssProvider::parsing-error</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
user_function (<link linkend="GtkCssProvider"><type>GtkCssProvider</type></link> *provider,
               <link linkend="GtkCssSection"><type>GtkCssSection</type></link>  *section,
               <link linkend="GError"><type>GError</type></link>         *error,
               <link linkend="gpointer"><type>gpointer</type></link>        user_data)</programlisting>
<para>Signals that a parsing error occurred. the <parameter>path</parameter>
, <parameter>line</parameter>
 and <parameter>position</parameter>

describe the actual location of the error as accurately as possible.</para>
<para>Parsing errors are never fatal, so the parsing will resume after
the error. Errors may however cause parts of the given
data or even all of it to not be parsed at all. So it is a useful idea
to check that the parsing succeeds by connecting to this signal.</para>
<para>Note that this signal may be emitted at any time as the css provider
may opt to defer parsing parts or all of the input to a later time
than when a loading function was called.</para>
<refsect3 id="GtkCssProvider-parsing-error.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>provider</para></entry>
<entry role="parameter_description"><para>the provider that had a parsing error</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>section</para></entry>
<entry role="parameter_description"><para>section the error happened in</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>error</para></entry>
<entry role="parameter_description"><para>The parsing error</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><simpara>user_data</simpara></entry>
<entry role="parameter_description"><simpara>user data set when the signal handler was connected.</simpara></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><para>Flags: <link linkend="G-SIGNAL-RUN-LAST:CAPS">Run Last</link></para>
</refsect2>
</refsect1>
<refsect1 id="GtkCssProvider.see-also">
<title>See Also</title>
<para><link linkend="GtkStyleContext"><type>GtkStyleContext</type></link>, <link linkend="GtkStyleProvider"><type>GtkStyleProvider</type></link></para>

</refsect1>

</refentry>
