<?xml version="1.0"?>
<!-- This file was automatically generated from C sources - DO NOT EDIT!
To affect the contents of this file, edit the original C definitions,
and/or use gtk-doc annotations.  -->
<repository version="1.2"
            xmlns="http://www.gtk.org/introspection/core/1.0"
            xmlns:c="http://www.gtk.org/introspection/c/1.0"
            xmlns:doc="http://www.gtk.org/introspection/doc/1.0"
            xmlns:glib="http://www.gtk.org/introspection/glib/1.0">
  <include name="Clutter" version="0"/>
  <include name="ClutterX11" version="0"/>
  <include name="Gtk" version="3.0"/>
  <include name="Meta" version="0"/>
  <package name="st"/>
  <doc:format name="unknown"/>
  <namespace name="St"
             version="1.0"
             shared-library="libst.so"
             c:identifier-prefixes="St"
             c:symbol-prefixes="st">
    <class name="Adjustment"
           c:symbol-prefix="adjustment"
           c:type="StAdjustment"
           parent="GObject.Object"
           glib:type-name="StAdjustment"
           glib:get-type="st_adjustment_get_type"
           glib:type-struct="AdjustmentClass">
      <source-position filename="src/st/st-adjustment.h" line="49"/>
      <implements name="Clutter.Animatable"/>
      <constructor name="new" c:identifier="st_adjustment_new">
        <source-position filename="src/st/st-adjustment.h" line="51"/>
        <return-value transfer-ownership="full">
          <type name="Adjustment" c:type="StAdjustment*"/>
        </return-value>
        <parameters>
          <parameter name="value" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="lower" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="upper" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="step_increment" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="page_increment" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="page_size" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </constructor>
      <virtual-method name="changed">
        <doc xml:space="preserve"
             filename="src/st/st-adjustment.h"
             line="38">Class handler for the ::changed signal.</doc>
        <source-position filename="src/st/st-adjustment.h" line="48"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adjustment" transfer-ownership="none">
            <type name="Adjustment" c:type="StAdjustment*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <method name="add_transition"
              c:identifier="st_adjustment_add_transition">
        <source-position filename="src/st/st-adjustment.h" line="83"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adjustment" transfer-ownership="none">
            <type name="Adjustment" c:type="StAdjustment*"/>
          </instance-parameter>
          <parameter name="name" transfer-ownership="none">
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="transition" transfer-ownership="none">
            <type name="Clutter.Transition" c:type="ClutterTransition*"/>
          </parameter>
        </parameters>
      </method>
      <method name="adjust_for_scroll_event"
              c:identifier="st_adjustment_adjust_for_scroll_event">
        <doc xml:space="preserve"
             filename="src/st/st-adjustment.c"
             line="585">Adjusts the adjustment using delta values from a scroll event.
You should use this instead of using st_adjustment_set_value()
as this method will tweak the values directly using the same
math as GTK+, to ensure that scrolling is consistent across
the environment.</doc>
        <source-position filename="src/st/st-adjustment.h" line="78"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adjustment" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-adjustment.c"
                 line="587">An #StAdjustment</doc>
            <type name="Adjustment" c:type="StAdjustment*"/>
          </instance-parameter>
          <parameter name="delta" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-adjustment.c"
                 line="588">A delta, retrieved directly from clutter_event_get_scroll_delta()
  or similar.</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <method name="clamp_page" c:identifier="st_adjustment_clamp_page">
        <source-position filename="src/st/st-adjustment.h" line="60"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adjustment" transfer-ownership="none">
            <type name="Adjustment" c:type="StAdjustment*"/>
          </instance-parameter>
          <parameter name="lower" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="upper" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_transition"
              c:identifier="st_adjustment_get_transition">
        <source-position filename="src/st/st-adjustment.h" line="81"/>
        <return-value transfer-ownership="none" nullable="1">
          <type name="Clutter.Transition" c:type="ClutterTransition*"/>
        </return-value>
        <parameters>
          <instance-parameter name="adjustment" transfer-ownership="none">
            <type name="Adjustment" c:type="StAdjustment*"/>
          </instance-parameter>
          <parameter name="name" transfer-ownership="none">
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_value"
              c:identifier="st_adjustment_get_value"
              glib:get-property="value">
        <source-position filename="src/st/st-adjustment.h" line="57"/>
        <return-value transfer-ownership="none">
          <type name="gdouble" c:type="gdouble"/>
        </return-value>
        <parameters>
          <instance-parameter name="adjustment" transfer-ownership="none">
            <type name="Adjustment" c:type="StAdjustment*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_values" c:identifier="st_adjustment_get_values">
        <doc xml:space="preserve"
             filename="src/st/st-adjustment.c"
             line="539">Gets all of @adjustment's values at once.</doc>
        <source-position filename="src/st/st-adjustment.h" line="70"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adjustment" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-adjustment.c"
                 line="541">an #StAdjustment</doc>
            <type name="Adjustment" c:type="StAdjustment*"/>
          </instance-parameter>
          <parameter name="value"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="src/st/st-adjustment.c"
                 line="542">the current value</doc>
            <type name="gdouble" c:type="gdouble*"/>
          </parameter>
          <parameter name="lower"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="src/st/st-adjustment.c"
                 line="543">the lower bound</doc>
            <type name="gdouble" c:type="gdouble*"/>
          </parameter>
          <parameter name="upper"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="src/st/st-adjustment.c"
                 line="544">the upper bound</doc>
            <type name="gdouble" c:type="gdouble*"/>
          </parameter>
          <parameter name="step_increment"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="src/st/st-adjustment.c"
                 line="545">the step increment</doc>
            <type name="gdouble" c:type="gdouble*"/>
          </parameter>
          <parameter name="page_increment"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="src/st/st-adjustment.c"
                 line="546">the page increment</doc>
            <type name="gdouble" c:type="gdouble*"/>
          </parameter>
          <parameter name="page_size"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="src/st/st-adjustment.c"
                 line="547">the page size</doc>
            <type name="gdouble" c:type="gdouble*"/>
          </parameter>
        </parameters>
      </method>
      <method name="remove_transition"
              c:identifier="st_adjustment_remove_transition">
        <source-position filename="src/st/st-adjustment.h" line="86"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adjustment" transfer-ownership="none">
            <type name="Adjustment" c:type="StAdjustment*"/>
          </instance-parameter>
          <parameter name="name" transfer-ownership="none">
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_value"
              c:identifier="st_adjustment_set_value"
              glib:set-property="value">
        <source-position filename="src/st/st-adjustment.h" line="58"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adjustment" transfer-ownership="none">
            <type name="Adjustment" c:type="StAdjustment*"/>
          </instance-parameter>
          <parameter name="value" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_values" c:identifier="st_adjustment_set_values">
        <source-position filename="src/st/st-adjustment.h" line="63"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="adjustment" transfer-ownership="none">
            <type name="Adjustment" c:type="StAdjustment*"/>
          </instance-parameter>
          <parameter name="value" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="lower" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="upper" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="step_increment" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="page_increment" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="page_size" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <property name="lower"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="0.000000">
        <type name="gdouble" c:type="gdouble"/>
      </property>
      <property name="page-increment"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="0.000000">
        <type name="gdouble" c:type="gdouble"/>
      </property>
      <property name="page-size"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="0.000000">
        <type name="gdouble" c:type="gdouble"/>
      </property>
      <property name="step-increment"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="0.000000">
        <type name="gdouble" c:type="gdouble"/>
      </property>
      <property name="upper"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="0.000000">
        <type name="gdouble" c:type="gdouble"/>
      </property>
      <property name="value"
                writable="1"
                construct="1"
                transfer-ownership="none"
                setter="set_value"
                getter="get_value"
                default-value="0.000000">
        <type name="gdouble" c:type="gdouble"/>
      </property>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <glib:signal name="changed" when="last">
        <doc xml:space="preserve"
             filename="src/st/st-adjustment.c"
             line="279">Emitted when any of the adjustment values have changed</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
    </class>
    <record name="AdjustmentClass"
            c:type="StAdjustmentClass"
            glib:is-gtype-struct-for="Adjustment">
      <doc xml:space="preserve"
           filename="src/st/st-adjustment.h"
           line="36">Base class for #StAdjustment.</doc>
      <source-position filename="src/st/st-adjustment.h" line="49"/>
      <field name="parent_class" readable="0" private="1">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="changed">
        <doc xml:space="preserve"
             filename="src/st/st-adjustment.h"
             line="38">Class handler for the ::changed signal.</doc>
        <callback name="changed">
          <source-position filename="src/st/st-adjustment.h" line="48"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="adjustment" transfer-ownership="none">
              <type name="Adjustment" c:type="StAdjustment*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <enumeration name="Align"
                 glib:type-name="StAlign"
                 glib:get-type="st_align_get_type"
                 c:type="StAlign">
      <member name="start"
              value="0"
              c:identifier="ST_ALIGN_START"
              glib:nick="start"
              glib:name="ST_ALIGN_START">
      </member>
      <member name="middle"
              value="1"
              c:identifier="ST_ALIGN_MIDDLE"
              glib:nick="middle"
              glib:name="ST_ALIGN_MIDDLE">
      </member>
      <member name="end"
              value="2"
              c:identifier="ST_ALIGN_END"
              glib:nick="end"
              glib:name="ST_ALIGN_END">
      </member>
    </enumeration>
    <function-macro name="BACKGROUND_BLUR_EFFECT"
                    c:identifier="ST_BACKGROUND_BLUR_EFFECT"
                    introspectable="0">
      <source-position filename="src/st/st-background-effect.h" line="10"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="BACKGROUND_BUMPMAP_EFFECT"
                    c:identifier="ST_BACKGROUND_BUMPMAP_EFFECT"
                    introspectable="0">
      <source-position filename="src/st/st-background-effect.h" line="13"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="BIN" c:identifier="ST_BIN" introspectable="0">
      <source-position filename="src/st/st-bin.h" line="33"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="BIN_CLASS"
                    c:identifier="ST_BIN_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-bin.h" line="35"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="BIN_GET_CLASS"
                    c:identifier="ST_BIN_GET_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-bin.h" line="37"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="BORDER_IMAGE"
                    c:identifier="ST_BORDER_IMAGE"
                    introspectable="0">
      <source-position filename="src/st/st-border-image.h" line="34"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="BORDER_IMAGE_CLASS"
                    c:identifier="ST_BORDER_IMAGE_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-border-image.h" line="35"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="BORDER_IMAGE_GET_CLASS"
                    c:identifier="ST_BORDER_IMAGE_GET_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-border-image.h" line="38"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="BOX_LAYOUT"
                    c:identifier="ST_BOX_LAYOUT"
                    introspectable="0">
      <source-position filename="src/st/st-box-layout.h" line="35"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="BOX_LAYOUT_CHILD"
                    c:identifier="ST_BOX_LAYOUT_CHILD"
                    introspectable="0">
      <source-position filename="src/st/st-box-layout-child.h" line="31"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="BOX_LAYOUT_CHILD_CLASS"
                    c:identifier="ST_BOX_LAYOUT_CHILD_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-box-layout-child.h" line="35"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="BOX_LAYOUT_CHILD_GET_CLASS"
                    c:identifier="ST_BOX_LAYOUT_CHILD_GET_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-box-layout-child.h" line="47"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="BOX_LAYOUT_CLASS"
                    c:identifier="ST_BOX_LAYOUT_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-box-layout.h" line="39"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="BOX_LAYOUT_GET_CLASS"
                    c:identifier="ST_BOX_LAYOUT_GET_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-box-layout.h" line="51"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="BUTTON" c:identifier="ST_BUTTON" introspectable="0">
      <source-position filename="src/st/st-button.h" line="33"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="BUTTON_CLASS"
                    c:identifier="ST_BUTTON_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-button.h" line="35"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="BUTTON_GET_CLASS"
                    c:identifier="ST_BUTTON_GET_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-button.h" line="37"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="BUTTON_MASK_FROM_BUTTON"
                    c:identifier="ST_BUTTON_MASK_FROM_BUTTON"
                    introspectable="0">
      <source-position filename="src/st/st-button.h" line="99"/>
      <parameters>
        <parameter name="button">
        </parameter>
      </parameters>
    </function-macro>
    <class name="BackgroundBlurEffect"
           c:symbol-prefix="background_blur_effect"
           c:type="StBackgroundBlurEffect"
           parent="Clutter.OffscreenEffect"
           glib:type-name="StBackgroundBlurEffect"
           glib:get-type="st_background_blur_effect_get_type"
           glib:type-struct="BackgroundBlurEffectClass">
      <source-position filename="src/st/st-background-effect.h" line="78"/>
      <constructor name="new" c:identifier="st_background_blur_effect_new">
        <source-position filename="src/st/st-background-effect.h" line="89"/>
        <return-value transfer-ownership="none">
          <type name="Clutter.Effect" c:type="ClutterEffect*"/>
        </return-value>
        <parameters>
          <parameter name="actor" transfer-ownership="none">
            <type name="Clutter.Actor" c:type="ClutterActor*"/>
          </parameter>
        </parameters>
      </constructor>
      <field name="parent_instance">
        <type name="Clutter.OffscreenEffect" c:type="ClutterOffscreenEffect"/>
      </field>
      <field name="actor">
        <type name="Clutter.Actor" c:type="ClutterActor*"/>
      </field>
      <field name="bg_texture">
        <type name="Cogl.Texture" c:type="CoglTexture*"/>
      </field>
      <field name="corner_texture">
        <type name="Cogl.Texture" c:type="CoglTexture*"/>
      </field>
      <field name="pixel_step_uniform">
        <type name="gint" c:type="gint"/>
      </field>
      <field name="blur_size">
        <type name="gint" c:type="gint"/>
      </field>
      <field name="border_radius">
        <array zero-terminated="0" fixed-size="4">
          <type name="gint" c:type="int"/>
        </array>
      </field>
      <field name="bg_posx">
        <type name="gint" c:type="gint"/>
      </field>
      <field name="bg_posy">
        <type name="gint" c:type="gint"/>
      </field>
      <field name="bg_width">
        <type name="gint" c:type="gint"/>
      </field>
      <field name="bg_height">
        <type name="gint" c:type="gint"/>
      </field>
      <field name="pipeline1">
        <type name="Cogl.Pipeline" c:type="CoglPipeline*"/>
      </field>
    </class>
    <record name="BackgroundBlurEffectClass"
            c:type="StBackgroundBlurEffectClass"
            glib:is-gtype-struct-for="BackgroundBlurEffect">
      <source-position filename="src/st/st-background-effect.h" line="78"/>
      <field name="parent_class">
        <type name="Clutter.OffscreenEffectClass"
              c:type="ClutterOffscreenEffectClass"/>
      </field>
      <field name="base_pipeline">
        <type name="Cogl.Pipeline" c:type="CoglPipeline*"/>
      </field>
      <field name="changed">
        <type name="gboolean" c:type="gboolean"/>
      </field>
    </record>
    <class name="BackgroundBumpmapEffect"
           c:symbol-prefix="background_bumpmap_effect"
           c:type="StBackgroundBumpmapEffect"
           parent="Clutter.OffscreenEffect"
           glib:type-name="StBackgroundBumpmapEffect"
           glib:get-type="st_background_bumpmap_effect_get_type"
           glib:type-struct="BackgroundBumpmapEffectClass">
      <source-position filename="src/st/st-background-effect.h" line="84"/>
      <constructor name="new" c:identifier="st_background_bumpmap_effect_new">
        <source-position filename="src/st/st-background-effect.h" line="90"/>
        <return-value transfer-ownership="none">
          <type name="Clutter.Effect" c:type="ClutterEffect*"/>
        </return-value>
        <parameters>
          <parameter name="actor" transfer-ownership="none">
            <type name="Clutter.Actor" c:type="ClutterActor*"/>
          </parameter>
        </parameters>
      </constructor>
      <field name="parent_instance">
        <type name="Clutter.OffscreenEffect" c:type="ClutterOffscreenEffect"/>
      </field>
      <field name="actor">
        <type name="Clutter.Actor" c:type="ClutterActor*"/>
      </field>
      <field name="bg_texture">
        <type name="Cogl.Texture" c:type="CoglTexture*"/>
      </field>
      <field name="corner_texture">
        <type name="Cogl.Texture" c:type="CoglTexture*"/>
      </field>
      <field name="bg_bumpmap">
        <type name="Cogl.Handle" c:type="CoglHandle"/>
      </field>
      <field name="bumpmap_path">
        <type name="utf8" c:type="char*"/>
      </field>
      <field name="pixel_step_uniform0">
        <type name="gint" c:type="gint"/>
      </field>
      <field name="BumpTex_uniform">
        <type name="gint" c:type="gint"/>
      </field>
      <field name="bump_step_uniform">
        <type name="gint" c:type="gint"/>
      </field>
      <field name="border_radius">
        <array zero-terminated="0" fixed-size="4">
          <type name="gint" c:type="int"/>
        </array>
      </field>
      <field name="bg_posx">
        <type name="gint" c:type="gint"/>
      </field>
      <field name="bg_posy">
        <type name="gint" c:type="gint"/>
      </field>
      <field name="bg_width">
        <type name="gint" c:type="gint"/>
      </field>
      <field name="bg_height">
        <type name="gint" c:type="gint"/>
      </field>
      <field name="bumptex_width">
        <type name="gint" c:type="gint"/>
      </field>
      <field name="bumptex_height">
        <type name="gint" c:type="gint"/>
      </field>
      <field name="pipeline0">
        <type name="Cogl.Pipeline" c:type="CoglPipeline*"/>
      </field>
    </class>
    <record name="BackgroundBumpmapEffectClass"
            c:type="StBackgroundBumpmapEffectClass"
            glib:is-gtype-struct-for="BackgroundBumpmapEffect">
      <source-position filename="src/st/st-background-effect.h" line="84"/>
      <field name="parent_class">
        <type name="Clutter.OffscreenEffectClass"
              c:type="ClutterOffscreenEffectClass"/>
      </field>
      <field name="base_pipeline">
        <type name="Cogl.Pipeline" c:type="CoglPipeline*"/>
      </field>
      <field name="changed">
        <type name="gboolean" c:type="gboolean"/>
      </field>
    </record>
    <enumeration name="BackgroundSize"
                 glib:type-name="StBackgroundSize"
                 glib:get-type="st_background_size_get_type"
                 c:type="StBackgroundSize">
      <member name="auto"
              value="0"
              c:identifier="ST_BACKGROUND_SIZE_AUTO"
              glib:nick="auto"
              glib:name="ST_BACKGROUND_SIZE_AUTO">
      </member>
      <member name="contain"
              value="1"
              c:identifier="ST_BACKGROUND_SIZE_CONTAIN"
              glib:nick="contain"
              glib:name="ST_BACKGROUND_SIZE_CONTAIN">
      </member>
      <member name="cover"
              value="2"
              c:identifier="ST_BACKGROUND_SIZE_COVER"
              glib:nick="cover"
              glib:name="ST_BACKGROUND_SIZE_COVER">
      </member>
      <member name="fixed"
              value="3"
              c:identifier="ST_BACKGROUND_SIZE_FIXED"
              glib:nick="fixed"
              glib:name="ST_BACKGROUND_SIZE_FIXED">
      </member>
    </enumeration>
    <class name="Bin"
           c:symbol-prefix="bin"
           c:type="StBin"
           parent="Widget"
           glib:type-name="StBin"
           glib:get-type="st_bin_get_type"
           glib:type-struct="BinClass">
      <doc xml:space="preserve"
           filename="src/st/st-bin.h"
           line="43">The #StBin struct contains only private data</doc>
      <source-position filename="src/st/st-bin.h" line="65"/>
      <implements name="Atk.ImplementorIface"/>
      <implements name="Clutter.Animatable"/>
      <implements name="Clutter.Container"/>
      <implements name="Clutter.Scriptable"/>
      <constructor name="new" c:identifier="st_bin_new">
        <doc xml:space="preserve"
             filename="src/st/st-bin.c"
             line="391">Creates a new #StBin, a simple container for one child.</doc>
        <source-position filename="src/st/st-bin.h" line="69"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-bin.c"
               line="396">the newly created #StBin actor</doc>
          <type name="Widget" c:type="StWidget*"/>
        </return-value>
      </constructor>
      <method name="get_alignment" c:identifier="st_bin_get_alignment">
        <doc xml:space="preserve"
             filename="src/st/st-bin.c"
             line="502">Retrieves the horizontal and vertical alignment of the child
inside a #StBin, as set by st_bin_set_alignment().</doc>
        <source-position filename="src/st/st-bin.h" line="76"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="bin" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-bin.c"
                 line="504">a #StBin</doc>
            <type name="Bin" c:type="StBin*"/>
          </instance-parameter>
          <parameter name="x_align" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-bin.c"
                 line="505">return location for the horizontal alignment, or %NULL</doc>
            <type name="Align" c:type="StAlign*"/>
          </parameter>
          <parameter name="y_align" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-bin.c"
                 line="506">return location for the vertical alignment, or %NULL</doc>
            <type name="Align" c:type="StAlign*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_child"
              c:identifier="st_bin_get_child"
              glib:get-property="child">
        <doc xml:space="preserve"
             filename="src/st/st-bin.c"
             line="443">Retrieves a pointer to the child of @bin.</doc>
        <source-position filename="src/st/st-bin.h" line="72"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-bin.c"
               line="449">a #ClutterActor, or %NULL</doc>
          <type name="Clutter.Actor" c:type="ClutterActor*"/>
        </return-value>
        <parameters>
          <instance-parameter name="bin" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-bin.c"
                 line="445">a #StBin</doc>
            <type name="Bin" c:type="StBin*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_fill" c:identifier="st_bin_get_fill">
        <doc xml:space="preserve"
             filename="src/st/st-bin.c"
             line="574">Retrieves the horizontal and vertical fill settings</doc>
        <source-position filename="src/st/st-bin.h" line="82"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="bin" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-bin.c"
                 line="576">a #StBin</doc>
            <type name="Bin" c:type="StBin*"/>
          </instance-parameter>
          <parameter name="x_fill"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="src/st/st-bin.c"
                 line="577">return location for the horizontal fill, or %NULL</doc>
            <type name="gboolean" c:type="gboolean*"/>
          </parameter>
          <parameter name="y_fill"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="src/st/st-bin.c"
                 line="578">return location for the vertical fill, or %NULL</doc>
            <type name="gboolean" c:type="gboolean*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_alignment" c:identifier="st_bin_set_alignment">
        <doc xml:space="preserve"
             filename="src/st/st-bin.c"
             line="459">Sets the horizontal and vertical alignment of the child
inside a #StBin.</doc>
        <source-position filename="src/st/st-bin.h" line="73"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="bin" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-bin.c"
                 line="461">a #StBin</doc>
            <type name="Bin" c:type="StBin*"/>
          </instance-parameter>
          <parameter name="x_align" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-bin.c"
                 line="462">horizontal alignment</doc>
            <type name="Align" c:type="StAlign"/>
          </parameter>
          <parameter name="y_align" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-bin.c"
                 line="463">vertical alignment</doc>
            <type name="Align" c:type="StAlign"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_child"
              c:identifier="st_bin_set_child"
              glib:set-property="child">
        <doc xml:space="preserve"
             filename="src/st/st-bin.c"
             line="404">Sets @child as the child of @bin.

If @bin already has a child, the previous child is removed.</doc>
        <source-position filename="src/st/st-bin.h" line="70"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="bin" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-bin.c"
                 line="406">a #StBin</doc>
            <type name="Bin" c:type="StBin*"/>
          </instance-parameter>
          <parameter name="child"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/st/st-bin.c"
                 line="407">a #ClutterActor, or %NULL</doc>
            <type name="Clutter.Actor" c:type="ClutterActor*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_fill" c:identifier="st_bin_set_fill">
        <doc xml:space="preserve"
             filename="src/st/st-bin.c"
             line="529">Sets whether the child of @bin should fill out the horizontal
and/or vertical allocation of the parent</doc>
        <source-position filename="src/st/st-bin.h" line="79"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="bin" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-bin.c"
                 line="531">a #StBin</doc>
            <type name="Bin" c:type="StBin*"/>
          </instance-parameter>
          <parameter name="x_fill" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-bin.c"
                 line="532">%TRUE if the child should fill horizontally the @bin</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
          <parameter name="y_fill" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-bin.c"
                 line="533">%TRUE if the child should fill vertically the @bin</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <property name="child"
                writable="1"
                transfer-ownership="none"
                setter="set_child"
                getter="get_child">
        <doc xml:space="preserve"
             filename="src/st/st-bin.c"
             line="317">The child #ClutterActor of the #StBin container.</doc>
        <type name="Clutter.Actor"/>
      </property>
      <property name="x-align"
                writable="1"
                transfer-ownership="none"
                default-value="ST_ALIGN_MIDDLE">
        <doc xml:space="preserve"
             filename="src/st/st-bin.c"
             line="329">The horizontal alignment of the #StBin child.</doc>
        <type name="Align"/>
      </property>
      <property name="x-fill"
                writable="1"
                transfer-ownership="none"
                default-value="FALSE">
        <doc xml:space="preserve"
             filename="src/st/st-bin.c"
             line="355">Whether the child should fill the horizontal allocation</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="y-align"
                writable="1"
                transfer-ownership="none"
                default-value="ST_ALIGN_MIDDLE">
        <doc xml:space="preserve"
             filename="src/st/st-bin.c"
             line="342">The vertical alignment of the #StBin child.</doc>
        <type name="Align"/>
      </property>
      <property name="y-fill"
                writable="1"
                transfer-ownership="none"
                default-value="FALSE">
        <doc xml:space="preserve"
             filename="src/st/st-bin.c"
             line="368">Whether the child should fill the vertical allocation</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <field name="parent_instance" readable="0" private="1">
        <type name="Widget" c:type="StWidget"/>
      </field>
      <field name="priv" readable="0" private="1">
        <type name="BinPrivate" c:type="StBinPrivate*"/>
      </field>
    </class>
    <record name="BinClass" c:type="StBinClass" glib:is-gtype-struct-for="Bin">
      <doc xml:space="preserve"
           filename="src/st/st-bin.h"
           line="56">The #StBinClass struct contains only private data</doc>
      <source-position filename="src/st/st-bin.h" line="65"/>
      <field name="parent_class" readable="0" private="1">
        <type name="WidgetClass" c:type="StWidgetClass"/>
      </field>
    </record>
    <record name="BinPrivate" c:type="StBinPrivate" disguised="1" opaque="1">
      <source-position filename="src/st/st-bin.h" line="40"/>
    </record>
    <class name="BorderImage"
           c:symbol-prefix="border_image"
           c:type="StBorderImage"
           parent="GObject.Object"
           glib:type-name="StBorderImage"
           glib:get-type="st_border_image_get_type"
           glib:type-struct="BorderImageClass">
      <source-position filename="src/st/st-border-image.h" line="31"/>
      <constructor name="new" c:identifier="st_border_image_new">
        <source-position filename="src/st/st-border-image.h" line="42"/>
        <return-value transfer-ownership="full">
          <type name="BorderImage" c:type="StBorderImage*"/>
        </return-value>
        <parameters>
          <parameter name="filename" transfer-ownership="none">
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="border_top" transfer-ownership="none">
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="border_right" transfer-ownership="none">
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="border_bottom" transfer-ownership="none">
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="border_left" transfer-ownership="none">
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </constructor>
      <method name="equal" c:identifier="st_border_image_equal">
        <doc xml:space="preserve"
             filename="src/st/st-border-image.c"
             line="114">Check if two border_image objects are identical.</doc>
        <source-position filename="src/st/st-border-image.h" line="55"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-border-image.c"
               line="121">%TRUE if the two border image objects are identical</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="image" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-border-image.c"
                 line="116">a #StBorder_Image</doc>
            <type name="BorderImage" c:type="StBorderImage*"/>
          </instance-parameter>
          <parameter name="other" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-border-image.c"
                 line="117">a different #StBorder_Image</doc>
            <type name="BorderImage" c:type="StBorderImage*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_borders" c:identifier="st_border_image_get_borders">
        <source-position filename="src/st/st-border-image.h" line="49"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="image" transfer-ownership="none">
            <type name="BorderImage" c:type="StBorderImage*"/>
          </instance-parameter>
          <parameter name="border_top" transfer-ownership="none">
            <type name="gint" c:type="int*"/>
          </parameter>
          <parameter name="border_right" transfer-ownership="none">
            <type name="gint" c:type="int*"/>
          </parameter>
          <parameter name="border_bottom" transfer-ownership="none">
            <type name="gint" c:type="int*"/>
          </parameter>
          <parameter name="border_left" transfer-ownership="none">
            <type name="gint" c:type="int*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_filename" c:identifier="st_border_image_get_filename">
        <source-position filename="src/st/st-border-image.h" line="48"/>
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="image" transfer-ownership="none">
            <type name="BorderImage" c:type="StBorderImage*"/>
          </instance-parameter>
        </parameters>
      </method>
    </class>
    <record name="BorderImageClass"
            c:type="StBorderImageClass"
            disguised="1"
            opaque="1"
            glib:is-gtype-struct-for="BorderImage">
      <source-position filename="src/st/st-border-image.h" line="31"/>
    </record>
    <class name="BoxLayout"
           c:symbol-prefix="box_layout"
           c:type="StBoxLayout"
           parent="Viewport"
           glib:type-name="StBoxLayout"
           glib:get-type="st_box_layout_get_type"
           glib:type-struct="BoxLayoutClass">
      <doc xml:space="preserve"
           filename="src/st/st-box-layout.h"
           line="59">The contents of this structure are private and should only be accessed
through the public API.</doc>
      <source-position filename="src/st/st-box-layout.h" line="76"/>
      <implements name="Atk.ImplementorIface"/>
      <implements name="Clutter.Animatable"/>
      <implements name="Clutter.Container"/>
      <implements name="Clutter.Scriptable"/>
      <implements name="Scrollable"/>
      <constructor name="new" c:identifier="st_box_layout_new">
        <doc xml:space="preserve"
             filename="src/st/st-box-layout.c"
             line="219">Create a new #StBoxLayout.</doc>
        <source-position filename="src/st/st-box-layout.h" line="80"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-box-layout.c"
               line="224">a newly allocated #StBoxLayout</doc>
          <type name="Widget" c:type="StWidget*"/>
        </return-value>
      </constructor>
      <method name="get_pack_start"
              c:identifier="st_box_layout_get_pack_start"
              glib:get-property="pack-start">
        <doc xml:space="preserve"
             filename="src/st/st-box-layout.c"
             line="306">Get the value of the #StBoxLayout::pack-start property.</doc>
        <source-position filename="src/st/st-box-layout.h" line="88"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-box-layout.c"
               line="312">%TRUE if pack-start is enabled</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="box" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-box-layout.c"
                 line="308">A #StBoxLayout</doc>
            <type name="BoxLayout" c:type="StBoxLayout*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_vertical"
              c:identifier="st_box_layout_get_vertical"
              glib:get-property="vertical">
        <doc xml:space="preserve"
             filename="src/st/st-box-layout.c"
             line="260">Get the value of the #StBoxLayout::vertical property.</doc>
        <source-position filename="src/st/st-box-layout.h" line="84"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-box-layout.c"
               line="266">%TRUE if the layout is vertical</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="box" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-box-layout.c"
                 line="262">A #StBoxLayout</doc>
            <type name="BoxLayout" c:type="StBoxLayout*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="insert_actor" c:identifier="st_box_layout_insert_actor">
        <doc xml:space="preserve"
             filename="src/st/st-box-layout.c"
             line="322">Adds @actor to @self at position @pos.  If @pos is
negative or larger than the number of elements in the
list then @actor is added after all the others previously
added.</doc>
        <source-position filename="src/st/st-box-layout.h" line="90"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-box-layout.c"
                 line="324">A #StBoxLayout</doc>
            <type name="BoxLayout" c:type="StBoxLayout*"/>
          </instance-parameter>
          <parameter name="actor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-box-layout.c"
                 line="325">A #ClutterActor</doc>
            <type name="Clutter.Actor" c:type="ClutterActor*"/>
          </parameter>
          <parameter name="pos" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-box-layout.c"
                 line="326">position to insert actor</doc>
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </method>
      <method name="insert_before" c:identifier="st_box_layout_insert_before">
        <doc xml:space="preserve"
             filename="src/st/st-box-layout.c"
             line="341">Adds @actor to @self at the position before @sibling.
@sibling cannot be %NULL and must be already a child
of @self.</doc>
        <source-position filename="src/st/st-box-layout.h" line="94"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-box-layout.c"
                 line="343">A #StBoxLayout</doc>
            <type name="BoxLayout" c:type="StBoxLayout*"/>
          </instance-parameter>
          <parameter name="actor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-box-layout.c"
                 line="344">A #ClutterActor</doc>
            <type name="Clutter.Actor" c:type="ClutterActor*"/>
          </parameter>
          <parameter name="sibling" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-box-layout.c"
                 line="345">A previously added #ClutterActor</doc>
            <type name="Clutter.Actor" c:type="ClutterActor*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_pack_start"
              c:identifier="st_box_layout_set_pack_start"
              glib:set-property="pack-start">
        <doc xml:space="preserve"
             filename="src/st/st-box-layout.c"
             line="281">Set the value of the #StBoxLayout::pack-start property.</doc>
        <source-position filename="src/st/st-box-layout.h" line="86"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="box" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-box-layout.c"
                 line="283">A #StBoxLayout</doc>
            <type name="BoxLayout" c:type="StBoxLayout*"/>
          </instance-parameter>
          <parameter name="pack_start" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-box-layout.c"
                 line="284">%TRUE if the layout should use pack-start</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_vertical"
              c:identifier="st_box_layout_set_vertical"
              glib:set-property="vertical">
        <doc xml:space="preserve"
             filename="src/st/st-box-layout.c"
             line="232">Set the value of the #StBoxLayout::vertical property</doc>
        <source-position filename="src/st/st-box-layout.h" line="82"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="box" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-box-layout.c"
                 line="234">A #StBoxLayout</doc>
            <type name="BoxLayout" c:type="StBoxLayout*"/>
          </instance-parameter>
          <parameter name="vertical" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-box-layout.c"
                 line="235">%TRUE if the layout should be vertical</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <property name="pack-start"
                writable="1"
                transfer-ownership="none"
                setter="set_pack_start"
                getter="get_pack_start"
                default-value="FALSE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="vertical"
                writable="1"
                transfer-ownership="none"
                setter="set_vertical"
                getter="get_vertical"
                default-value="FALSE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <field name="parent" readable="0" private="1">
        <type name="Viewport" c:type="StViewport"/>
      </field>
      <field name="priv" readable="0" private="1">
        <type name="BoxLayoutPrivate" c:type="StBoxLayoutPrivate*"/>
      </field>
    </class>
    <class name="BoxLayoutChild"
           c:symbol-prefix="box_layout_child"
           c:type="StBoxLayoutChild"
           parent="Clutter.ChildMeta"
           glib:type-name="StBoxLayoutChild"
           glib:get-type="st_box_layout_child_get_type"
           glib:type-struct="BoxLayoutChildClass">
      <doc xml:space="preserve"
           filename="src/st/st-box-layout-child.h"
           line="55">The contents of this structure are private and should only be accessed
through the public API.</doc>
      <source-position filename="src/st/st-box-layout-child.h" line="73"/>
      <property name="expand"
                writable="1"
                transfer-ownership="none"
                default-value="FALSE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="x-align"
                writable="1"
                transfer-ownership="none"
                default-value="ST_ALIGN_MIDDLE">
        <type name="Align"/>
      </property>
      <property name="x-fill"
                writable="1"
                transfer-ownership="none"
                default-value="TRUE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="y-align"
                writable="1"
                transfer-ownership="none"
                default-value="ST_ALIGN_MIDDLE">
        <type name="Align"/>
      </property>
      <property name="y-fill"
                writable="1"
                transfer-ownership="none"
                default-value="TRUE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <field name="parent" readable="0" private="1">
        <type name="Clutter.ChildMeta" c:type="ClutterChildMeta"/>
      </field>
      <field name="x_fill_set" readable="0" private="1">
        <type name="gboolean" c:type="gboolean"/>
      </field>
      <field name="y_fill_set" readable="0" private="1">
        <type name="gboolean" c:type="gboolean"/>
      </field>
    </class>
    <record name="BoxLayoutChildClass"
            c:type="StBoxLayoutChildClass"
            glib:is-gtype-struct-for="BoxLayoutChild">
      <source-position filename="src/st/st-box-layout-child.h" line="73"/>
      <field name="parent_class">
        <type name="Clutter.ChildMetaClass" c:type="ClutterChildMetaClass"/>
      </field>
    </record>
    <record name="BoxLayoutChildPrivate"
            c:type="StBoxLayoutChildPrivate"
            disguised="1"
            opaque="1">
      <source-position filename="src/st/st-box-layout-child.h" line="53"/>
    </record>
    <record name="BoxLayoutClass"
            c:type="StBoxLayoutClass"
            glib:is-gtype-struct-for="BoxLayout">
      <source-position filename="src/st/st-box-layout.h" line="76"/>
      <field name="parent_class">
        <type name="WidgetClass" c:type="StWidgetClass"/>
      </field>
    </record>
    <record name="BoxLayoutPrivate"
            c:type="StBoxLayoutPrivate"
            disguised="1"
            opaque="1">
      <source-position filename="src/st/st-box-layout.h" line="57"/>
    </record>
    <class name="Button"
           c:symbol-prefix="button"
           c:type="StButton"
           parent="Bin"
           glib:type-name="StButton"
           glib:get-type="st_button_get_type"
           glib:type-struct="ButtonClass">
      <doc xml:space="preserve"
           filename="src/st/st-button.h"
           line="43">The contents of this structure is private and should only be accessed using
the provided API.</doc>
      <source-position filename="src/st/st-button.h" line="67"/>
      <implements name="Atk.ImplementorIface"/>
      <implements name="Clutter.Animatable"/>
      <implements name="Clutter.Container"/>
      <implements name="Clutter.Scriptable"/>
      <constructor name="new" c:identifier="st_button_new">
        <doc xml:space="preserve"
             filename="src/st/st-button.c"
             line="464">Create a new button</doc>
        <source-position filename="src/st/st-button.h" line="71"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-button.c"
               line="469">a new #StButton</doc>
          <type name="Widget" c:type="StWidget*"/>
        </return-value>
      </constructor>
      <constructor name="new_with_label"
                   c:identifier="st_button_new_with_label">
        <doc xml:space="preserve"
             filename="src/st/st-button.c"
             line="477">Create a new #StButton with the specified label</doc>
        <source-position filename="src/st/st-button.h" line="72"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-button.c"
               line="483">a new #StButton</doc>
          <type name="Widget" c:type="StWidget*"/>
        </return-value>
        <parameters>
          <parameter name="text" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-button.c"
                 line="479">text to set the label to</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </constructor>
      <virtual-method name="clicked">
        <source-position filename="src/st/st-button.h" line="66"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="button" transfer-ownership="none">
            <type name="Button" c:type="StButton*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="transition">
        <source-position filename="src/st/st-button.h" line="63"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="button" transfer-ownership="none">
            <type name="Button" c:type="StButton*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <method name="fake_release" c:identifier="st_button_fake_release">
        <doc xml:space="preserve"
             filename="src/st/st-button.c"
             line="667">If this widget is holding a pointer grab, this function will
will ungrab it, and reset the pressed state.  The effect is
similar to if the user had released the mouse button, but without
emitting the clicked signal.

This function is useful if for example you want to do something
after the user is holding the mouse button for a given period of
time, breaking the grab.</doc>
        <source-position filename="src/st/st-button.h" line="83"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="button" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-button.c"
                 line="669">an #StButton</doc>
            <type name="Button" c:type="StButton*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_button_mask"
              c:identifier="st_button_get_button_mask"
              glib:get-property="button-mask">
        <doc xml:space="preserve"
             filename="src/st/st-button.c"
             line="556">Gets the mask of mouse buttons that @button emits the
#StButton::clicked signal for.</doc>
        <source-position filename="src/st/st-button.h" line="103"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-button.c"
               line="563">the mask of mouse buttons that @button emits the
#StButton::clicked signal for.</doc>
          <type name="ButtonMask" c:type="StButtonMask"/>
        </return-value>
        <parameters>
          <instance-parameter name="button" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-button.c"
                 line="558">a #StButton</doc>
            <type name="Button" c:type="StButton*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_checked"
              c:identifier="st_button_get_checked"
              glib:get-property="checked">
        <doc xml:space="preserve"
             filename="src/st/st-button.c"
             line="627">Get the state of the button that is in toggle mode.</doc>
        <source-position filename="src/st/st-button.h" line="81"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-button.c"
               line="633">%TRUE if the button is checked, or %FALSE if not</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="button" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-button.c"
                 line="629">a #StButton</doc>
            <type name="Button" c:type="StButton*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_label"
              c:identifier="st_button_get_label"
              glib:get-property="label">
        <doc xml:space="preserve"
             filename="src/st/st-button.c"
             line="491">Get the text displayed on the button</doc>
        <source-position filename="src/st/st-button.h" line="73"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-button.c"
               line="497">the text for the button. This must not be freed by the application</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="button" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-button.c"
                 line="493">a #StButton</doc>
            <type name="Button" c:type="StButton*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_toggle_mode"
              c:identifier="st_button_get_toggle_mode"
              glib:get-property="toggle-mode">
        <doc xml:space="preserve"
             filename="src/st/st-button.c"
             line="592">Get the toggle mode status of the button.</doc>
        <source-position filename="src/st/st-button.h" line="78"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-button.c"
               line="598">%TRUE if toggle mode is set, otherwise %FALSE</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="button" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-button.c"
                 line="594">a #StButton</doc>
            <type name="Button" c:type="StButton*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_button_mask"
              c:identifier="st_button_set_button_mask"
              glib:set-property="button-mask">
        <doc xml:space="preserve"
             filename="src/st/st-button.c"
             line="574">Sets which mouse buttons @button emits #StButton::clicked for.</doc>
        <source-position filename="src/st/st-button.h" line="101"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="button" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-button.c"
                 line="576">a #Stbutton</doc>
            <type name="Button" c:type="StButton*"/>
          </instance-parameter>
          <parameter name="mask" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-button.c"
                 line="577">the mask of mouse buttons that @button responds to</doc>
            <type name="ButtonMask" c:type="StButtonMask"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_checked"
              c:identifier="st_button_set_checked"
              glib:set-property="checked">
        <doc xml:space="preserve"
             filename="src/st/st-button.c"
             line="643">Sets the pressed state of the button. This is only really useful if the
button has #toggle-mode mode set to %TRUE.</doc>
        <source-position filename="src/st/st-button.h" line="79"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="button" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-button.c"
                 line="645">a #Stbutton</doc>
            <type name="Button" c:type="StButton*"/>
          </instance-parameter>
          <parameter name="checked" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-button.c"
                 line="646">%TRUE or %FALSE</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_label"
              c:identifier="st_button_set_label"
              glib:set-property="label">
        <doc xml:space="preserve"
             filename="src/st/st-button.c"
             line="507">Sets the text displayed on the button</doc>
        <source-position filename="src/st/st-button.h" line="74"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="button" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-button.c"
                 line="509">a #Stbutton</doc>
            <type name="Button" c:type="StButton*"/>
          </instance-parameter>
          <parameter name="text" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-button.c"
                 line="510">text to set the label to</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_toggle_mode"
              c:identifier="st_button_set_toggle_mode"
              glib:set-property="toggle-mode">
        <doc xml:space="preserve"
             filename="src/st/st-button.c"
             line="608">Enables or disables toggle mode for the button. In toggle mode, the active
state will be "toggled" when the user clicks the button.</doc>
        <source-position filename="src/st/st-button.h" line="76"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="button" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-button.c"
                 line="610">a #Stbutton</doc>
            <type name="Button" c:type="StButton*"/>
          </instance-parameter>
          <parameter name="toggle" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-button.c"
                 line="611">%TRUE or %FALSE</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <property name="button-mask"
                writable="1"
                transfer-ownership="none"
                setter="set_button_mask"
                getter="get_button_mask"
                default-value="ST_BUTTON_ONE">
        <type name="ButtonMask"/>
      </property>
      <property name="checked"
                writable="1"
                transfer-ownership="none"
                setter="set_checked"
                getter="get_checked"
                default-value="FALSE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="label"
                writable="1"
                transfer-ownership="none"
                setter="set_label"
                getter="get_label"
                default-value="NULL">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="pressed" transfer-ownership="none" default-value="FALSE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="toggle-mode"
                writable="1"
                transfer-ownership="none"
                setter="set_toggle_mode"
                getter="get_toggle_mode"
                default-value="FALSE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <field name="parent_instance" readable="0" private="1">
        <type name="Bin" c:type="StBin"/>
      </field>
      <field name="priv" readable="0" private="1">
        <type name="ButtonPrivate" c:type="StButtonPrivate*"/>
      </field>
      <glib:signal name="clicked" when="last">
        <doc xml:space="preserve"
             filename="src/st/st-button.c"
             line="435">Emitted when the user activates the button, either with a mouse press and
release or with the keyboard.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="clicked_button" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-button.c"
                 line="438">the mouse button that was used</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </glib:signal>
    </class>
    <record name="ButtonClass"
            c:type="StButtonClass"
            glib:is-gtype-struct-for="Button">
      <source-position filename="src/st/st-button.h" line="67"/>
      <field name="parent_class">
        <type name="BinClass" c:type="StBinClass"/>
      </field>
      <field name="transition">
        <callback name="transition">
          <source-position filename="src/st/st-button.h" line="63"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="button" transfer-ownership="none">
              <type name="Button" c:type="StButton*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="clicked">
        <callback name="clicked">
          <source-position filename="src/st/st-button.h" line="66"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="button" transfer-ownership="none">
              <type name="Button" c:type="StButton*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <bitfield name="ButtonMask"
              glib:type-name="StButtonMask"
              glib:get-type="st_button_mask_get_type"
              c:type="StButtonMask">
      <doc xml:space="preserve"
           filename="src/st/st-button.h"
           line="85">A mask representing which mouse buttons an StButton responds to.</doc>
      <member name="one"
              value="1"
              c:identifier="ST_BUTTON_ONE"
              glib:nick="one"
              glib:name="ST_BUTTON_ONE">
        <doc xml:space="preserve"
             filename="src/st/st-button.h"
             line="87">button 1 (left)</doc>
      </member>
      <member name="two"
              value="2"
              c:identifier="ST_BUTTON_TWO"
              glib:nick="two"
              glib:name="ST_BUTTON_TWO">
        <doc xml:space="preserve"
             filename="src/st/st-button.h"
             line="88">button 2 (middle)</doc>
      </member>
      <member name="three"
              value="4"
              c:identifier="ST_BUTTON_THREE"
              glib:nick="three"
              glib:name="ST_BUTTON_THREE">
        <doc xml:space="preserve"
             filename="src/st/st-button.h"
             line="89">button 3 (right)</doc>
      </member>
    </bitfield>
    <record name="ButtonPrivate"
            c:type="StButtonPrivate"
            disguised="1"
            opaque="1">
      <source-position filename="src/st/st-button.h" line="40"/>
    </record>
    <class name="Clipboard"
           c:symbol-prefix="clipboard"
           c:type="StClipboard"
           parent="GObject.Object"
           glib:type-name="StClipboard"
           glib:get-type="st_clipboard_get_type"
           glib:type-struct="ClipboardClass">
      <doc xml:space="preserve"
           filename="src/st/st-clipboard.h"
           line="37">The contents of this structure is private and should only be accessed using
the provided API.</doc>
      <source-position filename="src/st/st-clipboard.h" line="33"/>
      <function name="get_default" c:identifier="st_clipboard_get_default">
        <doc xml:space="preserve"
             filename="src/st/st-clipboard.c"
             line="67">Get the global #StClipboard object that represents the clipboard.</doc>
        <source-position filename="src/st/st-clipboard.h" line="66"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-clipboard.c"
               line="72">a #StClipboard owned by St and must not be
unrefferenced or freed.</doc>
          <type name="Clipboard" c:type="StClipboard*"/>
        </return-value>
      </function>
      <function name="set_selection" c:identifier="st_clipboard_set_selection">
        <source-position filename="src/st/st-clipboard.h" line="81"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="selection" transfer-ownership="none">
            <type name="Meta.Selection" c:type="MetaSelection*"/>
          </parameter>
        </parameters>
      </function>
      <method name="get_text" c:identifier="st_clipboard_get_text">
        <doc xml:space="preserve"
             filename="src/st/st-clipboard.c"
             line="149">Request the data from the clipboard in text form. @callback is executed
when the data is retreived.</doc>
        <source-position filename="src/st/st-clipboard.h" line="68"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="clipboard" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-clipboard.c"
                 line="151">A #StCliboard</doc>
            <type name="Clipboard" c:type="StClipboard*"/>
          </instance-parameter>
          <parameter name="type" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-clipboard.c"
                 line="152">The type of clipboard data you want</doc>
            <type name="ClipboardType" c:type="StClipboardType"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     scope="async"
                     closure="2">
            <doc xml:space="preserve"
                 filename="src/st/st-clipboard.c"
                 line="153">function to be called when the text is retreived</doc>
            <type name="ClipboardCallbackFunc"
                  c:type="StClipboardCallbackFunc"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/st/st-clipboard.c"
                 line="154">data to be passed to the callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_content" c:identifier="st_clipboard_set_content">
        <doc xml:space="preserve"
             filename="src/st/st-clipboard.c"
             line="197">Sets the clipboard content.</doc>
        <source-position filename="src/st/st-clipboard.h" line="76"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="clipboard" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-clipboard.c"
                 line="199">A #StClipboard</doc>
            <type name="Clipboard" c:type="StClipboard*"/>
          </instance-parameter>
          <parameter name="type" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-clipboard.c"
                 line="200">The type of clipboard that you want to set</doc>
            <type name="ClipboardType" c:type="StClipboardType"/>
          </parameter>
          <parameter name="mimetype" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-clipboard.c"
                 line="201">content mimetype</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="bytes" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-clipboard.c"
                 line="202">content data</doc>
            <type name="GLib.Bytes" c:type="GBytes*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_text" c:identifier="st_clipboard_set_text">
        <doc xml:space="preserve"
             filename="src/st/st-clipboard.c"
             line="227">Sets text as the current contents of the clipboard.</doc>
        <source-position filename="src/st/st-clipboard.h" line="72"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="clipboard" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-clipboard.c"
                 line="229">A #StClipboard</doc>
            <type name="Clipboard" c:type="StClipboard*"/>
          </instance-parameter>
          <parameter name="type" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-clipboard.c"
                 line="230">The type of clipboard that you want to set</doc>
            <type name="ClipboardType" c:type="StClipboardType"/>
          </parameter>
          <parameter name="text" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-clipboard.c"
                 line="231">text to copy to the clipboard</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <field name="parent" readable="0" private="1">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
    </class>
    <callback name="ClipboardCallbackFunc" c:type="StClipboardCallbackFunc">
      <doc xml:space="preserve"
           filename="src/st/st-clipboard.h"
           line="54">Callback function called when text is retrieved from the clipboard.</doc>
      <source-position filename="src/st/st-clipboard.h" line="62"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="clipboard" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-clipboard.h"
               line="56">A #StClipboard</doc>
          <type name="Clipboard" c:type="StClipboard*"/>
        </parameter>
        <parameter name="text" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-clipboard.h"
               line="57">text from the clipboard</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="user_data"
                   transfer-ownership="none"
                   nullable="1"
                   allow-none="1"
                   closure="2">
          <doc xml:space="preserve"
               filename="src/st/st-clipboard.h"
               line="58">user data</doc>
          <type name="gpointer" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <record name="ClipboardClass"
            c:type="StClipboardClass"
            glib:is-gtype-struct-for="Clipboard">
      <source-position filename="src/st/st-clipboard.h" line="33"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
    </record>
    <enumeration name="ClipboardType"
                 glib:type-name="StClipboardType"
                 glib:get-type="st_clipboard_type_get_type"
                 c:type="StClipboardType">
      <member name="primary"
              value="0"
              c:identifier="ST_CLIPBOARD_TYPE_PRIMARY"
              glib:nick="primary"
              glib:name="ST_CLIPBOARD_TYPE_PRIMARY">
      </member>
      <member name="clipboard"
              value="1"
              c:identifier="ST_CLIPBOARD_TYPE_CLIPBOARD"
              glib:nick="clipboard"
              glib:name="ST_CLIPBOARD_TYPE_CLIPBOARD">
      </member>
    </enumeration>
    <enumeration name="Corner"
                 glib:type-name="StCorner"
                 glib:get-type="st_corner_get_type"
                 c:type="StCorner">
      <member name="topleft"
              value="0"
              c:identifier="ST_CORNER_TOPLEFT"
              glib:nick="topleft"
              glib:name="ST_CORNER_TOPLEFT">
      </member>
      <member name="topright"
              value="1"
              c:identifier="ST_CORNER_TOPRIGHT"
              glib:nick="topright"
              glib:name="ST_CORNER_TOPRIGHT">
      </member>
      <member name="bottomright"
              value="2"
              c:identifier="ST_CORNER_BOTTOMRIGHT"
              glib:nick="bottomright"
              glib:name="ST_CORNER_BOTTOMRIGHT">
      </member>
      <member name="bottomleft"
              value="3"
              c:identifier="ST_CORNER_BOTTOMLEFT"
              glib:nick="bottomleft"
              glib:name="ST_CORNER_BOTTOMLEFT">
      </member>
    </enumeration>
    <function-macro name="DRAWING_AREA"
                    c:identifier="ST_DRAWING_AREA"
                    introspectable="0">
      <source-position filename="src/st/st-drawing-area.h" line="28"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DRAWING_AREA_CLASS"
                    c:identifier="ST_DRAWING_AREA_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-drawing-area.h" line="29"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="DRAWING_AREA_GET_CLASS"
                    c:identifier="ST_DRAWING_AREA_GET_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-drawing-area.h" line="32"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <class name="DrawingArea"
           c:symbol-prefix="drawing_area"
           c:type="StDrawingArea"
           parent="Widget"
           glib:type-name="StDrawingArea"
           glib:get-type="st_drawing_area_get_type"
           glib:type-struct="DrawingAreaClass">
      <source-position filename="src/st/st-drawing-area.h" line="51"/>
      <implements name="Atk.ImplementorIface"/>
      <implements name="Clutter.Animatable"/>
      <implements name="Clutter.Container"/>
      <implements name="Clutter.Scriptable"/>
      <virtual-method name="repaint">
        <source-position filename="src/st/st-drawing-area.h" line="50"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="area" transfer-ownership="none">
            <type name="DrawingArea" c:type="StDrawingArea*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <method name="get_context" c:identifier="st_drawing_area_get_context">
        <doc xml:space="preserve"
             filename="src/st/st-drawing-area.c"
             line="221">Gets the Cairo context to paint to. This function must only be called
from a signal hander for the ::repaint signal.</doc>
        <source-position filename="src/st/st-drawing-area.h" line="56"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-drawing-area.c"
               line="228">the Cairo context for the paint operation</doc>
          <type name="cairo.Context" c:type="cairo_t*"/>
        </return-value>
        <parameters>
          <instance-parameter name="area" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-drawing-area.c"
                 line="223">the #StDrawingArea</doc>
            <type name="DrawingArea" c:type="StDrawingArea*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_surface_size"
              c:identifier="st_drawing_area_get_surface_size">
        <doc xml:space="preserve"
             filename="src/st/st-drawing-area.c"
             line="239">Gets the size of the cairo surface being painted to, which is equal
to the size of the content area of the widget. This function must
only be called from a signal hander for the ::repaint signal.</doc>
        <source-position filename="src/st/st-drawing-area.h" line="57"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="area" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-drawing-area.c"
                 line="241">the #StDrawingArea</doc>
            <type name="DrawingArea" c:type="StDrawingArea*"/>
          </instance-parameter>
          <parameter name="width"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="src/st/st-drawing-area.c"
                 line="242">location to store the width of the painted area</doc>
            <type name="guint" c:type="guint*"/>
          </parameter>
          <parameter name="height"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="src/st/st-drawing-area.c"
                 line="243">location to store the height of the painted area</doc>
            <type name="guint" c:type="guint*"/>
          </parameter>
        </parameters>
      </method>
      <method name="queue_repaint"
              c:identifier="st_drawing_area_queue_repaint">
        <doc xml:space="preserve"
             filename="src/st/st-drawing-area.c"
             line="198">Will cause the actor to emit a ::repaint signal before it is next
drawn to the scene. Useful if some parameters for the area being
drawn other than the size or style have changed. Note that
clutter_actor_queue_redraw() will simply result in the same
contents being drawn to the scene again.</doc>
        <source-position filename="src/st/st-drawing-area.h" line="55"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="area" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-drawing-area.c"
                 line="200">the #StDrawingArea</doc>
            <type name="DrawingArea" c:type="StDrawingArea*"/>
          </instance-parameter>
        </parameters>
      </method>
      <field name="parent">
        <type name="Widget" c:type="StWidget"/>
      </field>
      <field name="priv">
        <type name="DrawingAreaPrivate" c:type="StDrawingAreaPrivate*"/>
      </field>
      <glib:signal name="repaint" when="last">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
    </class>
    <record name="DrawingAreaClass"
            c:type="StDrawingAreaClass"
            glib:is-gtype-struct-for="DrawingArea">
      <source-position filename="src/st/st-drawing-area.h" line="51"/>
      <field name="parent_class">
        <type name="WidgetClass" c:type="StWidgetClass"/>
      </field>
      <field name="repaint">
        <callback name="repaint">
          <source-position filename="src/st/st-drawing-area.h" line="50"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="area" transfer-ownership="none">
              <type name="DrawingArea" c:type="StDrawingArea*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <record name="DrawingAreaPrivate"
            c:type="StDrawingAreaPrivate"
            disguised="1"
            opaque="1">
      <source-position filename="src/st/st-drawing-area.h" line="37"/>
    </record>
    <function-macro name="ENTRY" c:identifier="ST_ENTRY" introspectable="0">
      <source-position filename="src/st/st-entry.h" line="32"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="ENTRY_CLASS"
                    c:identifier="ST_ENTRY_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-entry.h" line="34"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="ENTRY_GET_CLASS"
                    c:identifier="ST_ENTRY_GET_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-entry.h" line="36"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <class name="Entry"
           c:symbol-prefix="entry"
           c:type="StEntry"
           parent="Widget"
           glib:type-name="StEntry"
           glib:get-type="st_entry_get_type"
           glib:type-struct="EntryClass">
      <doc xml:space="preserve"
           filename="src/st/st-entry.h"
           line="42">The contents of this structure is private and should only be accessed using
the provided API.</doc>
      <source-position filename="src/st/st-entry.h" line="63"/>
      <implements name="Atk.ImplementorIface"/>
      <implements name="Clutter.Animatable"/>
      <implements name="Clutter.Container"/>
      <implements name="Clutter.Scriptable"/>
      <constructor name="new" c:identifier="st_entry_new">
        <doc xml:space="preserve"
             filename="src/st/st-entry.c"
             line="1113">Create a new #StEntry with the specified entry</doc>
        <source-position filename="src/st/st-entry.h" line="67"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-entry.c"
               line="1119">a new #StEntry</doc>
          <type name="Widget" c:type="StWidget*"/>
        </return-value>
        <parameters>
          <parameter name="text" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-entry.c"
                 line="1115">text to set the entry to</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </constructor>
      <virtual-method name="primary_icon_clicked">
        <source-position filename="src/st/st-entry.h" line="61"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="entry" transfer-ownership="none">
            <type name="Entry" c:type="StEntry*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="secondary_icon_clicked">
        <source-position filename="src/st/st-entry.h" line="62"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="entry" transfer-ownership="none">
            <type name="Entry" c:type="StEntry*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <method name="get_clutter_text"
              c:identifier="st_entry_get_clutter_text"
              glib:get-property="clutter-text">
        <doc xml:space="preserve"
             filename="src/st/st-entry.c"
             line="1173">Retrieve the internal #ClutterText so that extra parameters can be set</doc>
        <source-position filename="src/st/st-entry.h" line="71"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-entry.c"
               line="1179">the #ClutterText used by #StEntry. The entry is
owned by the #StEntry and should not be unref'ed by the application.</doc>
          <type name="Clutter.Text" c:type="ClutterText*"/>
        </return-value>
        <parameters>
          <instance-parameter name="entry" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-entry.c"
                 line="1175">a #StEntry</doc>
            <type name="Entry" c:type="StEntry*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_hint_actor"
              c:identifier="st_entry_get_hint_actor"
              glib:get-property="hint-actor">
        <source-position filename="src/st/st-entry.h" line="87"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-entry.c"
               line="1425">a #ClutterActor</doc>
          <type name="Clutter.Actor" c:type="ClutterActor*"/>
        </return-value>
        <parameters>
          <instance-parameter name="entry" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-entry.c"
                 line="1423">a #StEntry</doc>
            <type name="Entry" c:type="StEntry*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_hint_text"
              c:identifier="st_entry_get_hint_text"
              glib:get-property="hint-text">
        <doc xml:space="preserve"
             filename="src/st/st-entry.c"
             line="1213">Gets the text that is displayed when the entry is empty and unfocused</doc>
        <source-position filename="src/st/st-entry.h" line="75"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-entry.c"
               line="1219">the current value of the hint property. This string is owned by the
#StEntry and should not be freed or modified.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="entry" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-entry.c"
                 line="1215">a #StEntry</doc>
            <type name="Entry" c:type="StEntry*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_text"
              c:identifier="st_entry_get_text"
              glib:get-property="text">
        <doc xml:space="preserve"
             filename="src/st/st-entry.c"
             line="1134">Get the text displayed on the entry</doc>
        <source-position filename="src/st/st-entry.h" line="68"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-entry.c"
               line="1140">the text for the entry. This must not be freed by the application</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="entry" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-entry.c"
                 line="1136">a #StEntry</doc>
            <type name="Entry" c:type="StEntry*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_hint_actor"
              c:identifier="st_entry_set_hint_actor"
              glib:set-property="hint-actor">
        <doc xml:space="preserve"
             filename="src/st/st-entry.c"
             line="1387">Set the hint actor of the entry to @hint_actor</doc>
        <source-position filename="src/st/st-entry.h" line="85"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="entry" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-entry.c"
                 line="1389">a #StEntry</doc>
            <type name="Entry" c:type="StEntry*"/>
          </instance-parameter>
          <parameter name="hint_actor"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/st/st-entry.c"
                 line="1390">a #ClutterActor</doc>
            <type name="Clutter.Actor" c:type="ClutterActor*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_hint_text"
              c:identifier="st_entry_set_hint_text"
              glib:set-property="hint-text">
        <doc xml:space="preserve"
             filename="src/st/st-entry.c"
             line="1190">Sets the text to display when the entry is empty and unfocused. When the
entry is displaying the hint, it has a pseudo class of "indeterminate".
A value of NULL unsets the hint.</doc>
        <source-position filename="src/st/st-entry.h" line="73"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="entry" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-entry.c"
                 line="1192">a #StEntry</doc>
            <type name="Entry" c:type="StEntry*"/>
          </instance-parameter>
          <parameter name="text"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/st/st-entry.c"
                 line="1193">text to set as the entry hint</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_primary_icon" c:identifier="st_entry_set_primary_icon">
        <doc xml:space="preserve"
             filename="src/st/st-entry.c"
             line="1305">Set the primary icon of the entry to @icon</doc>
        <source-position filename="src/st/st-entry.h" line="77"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="entry" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-entry.c"
                 line="1307">a #StEntry</doc>
            <type name="Entry" c:type="StEntry*"/>
          </instance-parameter>
          <parameter name="icon"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/st/st-entry.c"
                 line="1308">a #ClutterActor</doc>
            <type name="Clutter.Actor" c:type="ClutterActor*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_primary_icon_from_file"
              c:identifier="st_entry_set_primary_icon_from_file">
        <doc xml:space="preserve"
             filename="src/st/st-entry.c"
             line="1345">Set the primary icon of the entry to the given filename</doc>
        <source-position filename="src/st/st-entry.h" line="81"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="entry" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-entry.c"
                 line="1347">a #StEntry</doc>
            <type name="Entry" c:type="StEntry*"/>
          </instance-parameter>
          <parameter name="filename"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/st/st-entry.c"
                 line="1348">filename of an icon</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_secondary_icon"
              c:identifier="st_entry_set_secondary_icon">
        <doc xml:space="preserve"
             filename="src/st/st-entry.c"
             line="1325">Set the secondary icon of the entry to @icon</doc>
        <source-position filename="src/st/st-entry.h" line="79"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="entry" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-entry.c"
                 line="1327">a #StEntry</doc>
            <type name="Entry" c:type="StEntry*"/>
          </instance-parameter>
          <parameter name="icon"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/st/st-entry.c"
                 line="1328">an #ClutterActor</doc>
            <type name="Clutter.Actor" c:type="ClutterActor*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_secondary_icon_from_file"
              c:identifier="st_entry_set_secondary_icon_from_file">
        <doc xml:space="preserve"
             filename="src/st/st-entry.c"
             line="1366">Set the primary icon of the entry to the given filename</doc>
        <source-position filename="src/st/st-entry.h" line="83"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="entry" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-entry.c"
                 line="1368">a #StEntry</doc>
            <type name="Entry" c:type="StEntry*"/>
          </instance-parameter>
          <parameter name="filename"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/st/st-entry.c"
                 line="1369">filename of an icon</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_text"
              c:identifier="st_entry_set_text"
              glib:set-property="text">
        <doc xml:space="preserve"
             filename="src/st/st-entry.c"
             line="1150">Sets the text displayed on the entry</doc>
        <source-position filename="src/st/st-entry.h" line="69"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="entry" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-entry.c"
                 line="1152">a #StEntry</doc>
            <type name="Entry" c:type="StEntry*"/>
          </instance-parameter>
          <parameter name="text"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/st/st-entry.c"
                 line="1153">text to set the entry to</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <property name="clutter-text"
                transfer-ownership="none"
                getter="get_clutter_text">
        <type name="Clutter.Text"/>
      </property>
      <property name="hint-actor"
                writable="1"
                transfer-ownership="none"
                setter="set_hint_actor"
                getter="get_hint_actor">
        <type name="Clutter.Actor"/>
      </property>
      <property name="hint-text"
                writable="1"
                transfer-ownership="none"
                setter="set_hint_text"
                getter="get_hint_text"
                default-value="NULL">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="text"
                writable="1"
                transfer-ownership="none"
                setter="set_text"
                getter="get_text"
                default-value="NULL">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <field name="parent_instance" readable="0" private="1">
        <type name="Widget" c:type="StWidget"/>
      </field>
      <field name="priv" readable="0" private="1">
        <type name="EntryPrivate" c:type="StEntryPrivate*"/>
      </field>
      <glib:signal name="primary-icon-clicked" when="last">
        <doc xml:space="preserve"
             filename="src/st/st-entry.c"
             line="1036">Emitted when the primary icon is clicked</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="secondary-icon-clicked" when="last">
        <doc xml:space="preserve"
             filename="src/st/st-entry.c"
             line="1048">Emitted when the secondary icon is clicked</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
    </class>
    <record name="EntryClass"
            c:type="StEntryClass"
            glib:is-gtype-struct-for="Entry">
      <source-position filename="src/st/st-entry.h" line="63"/>
      <field name="parent_class">
        <type name="WidgetClass" c:type="StWidgetClass"/>
      </field>
      <field name="primary_icon_clicked">
        <callback name="primary_icon_clicked">
          <source-position filename="src/st/st-entry.h" line="61"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="entry" transfer-ownership="none">
              <type name="Entry" c:type="StEntry*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="secondary_icon_clicked">
        <callback name="secondary_icon_clicked">
          <source-position filename="src/st/st-entry.h" line="62"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="entry" transfer-ownership="none">
              <type name="Entry" c:type="StEntry*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <record name="EntryPrivate"
            c:type="StEntryPrivate"
            disguised="1"
            opaque="1">
      <source-position filename="src/st/st-entry.h" line="39"/>
    </record>
    <function-macro name="FOCUS_MANAGER"
                    c:identifier="ST_FOCUS_MANAGER"
                    introspectable="0">
      <source-position filename="src/st/st-focus-manager.h" line="34"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="FOCUS_MANAGER_CLASS"
                    c:identifier="ST_FOCUS_MANAGER_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-focus-manager.h" line="36"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="FOCUS_MANAGER_GET_CLASS"
                    c:identifier="ST_FOCUS_MANAGER_GET_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-focus-manager.h" line="38"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <class name="FocusManager"
           c:symbol-prefix="focus_manager"
           c:type="StFocusManager"
           parent="GObject.Object"
           glib:type-name="StFocusManager"
           glib:get-type="st_focus_manager_get_type"
           glib:type-struct="FocusManagerClass">
      <doc xml:space="preserve"
           filename="src/st/st-focus-manager.h"
           line="44">The #StFocusManager struct contains only private data</doc>
      <source-position filename="src/st/st-focus-manager.h" line="66"/>
      <function name="get_for_stage"
                c:identifier="st_focus_manager_get_for_stage">
        <doc xml:space="preserve"
             filename="src/st/st-focus-manager.c"
             line="133">Gets the #StFocusManager for @stage, creating it if necessary.</doc>
        <source-position filename="src/st/st-focus-manager.h" line="70"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-focus-manager.c"
               line="139">the focus manager for @stage</doc>
          <type name="FocusManager" c:type="StFocusManager*"/>
        </return-value>
        <parameters>
          <parameter name="stage" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-focus-manager.c"
                 line="135">a #ClutterStage</doc>
            <type name="Clutter.Stage" c:type="ClutterStage*"/>
          </parameter>
        </parameters>
      </function>
      <method name="add_group" c:identifier="st_focus_manager_add_group">
        <doc xml:space="preserve"
             filename="src/st/st-focus-manager.c"
             line="169">Adds a new focus group to @manager. When the focus is in an actor
that is a descendant of @root, @manager will handle moving focus
from one actor to another within @root based on keyboard events.</doc>
        <source-position filename="src/st/st-focus-manager.h" line="72"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="manager" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-focus-manager.c"
                 line="171">the #StFocusManager</doc>
            <type name="FocusManager" c:type="StFocusManager*"/>
          </instance-parameter>
          <parameter name="root" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-focus-manager.c"
                 line="172">the root container of the group</doc>
            <type name="Widget" c:type="StWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_group" c:identifier="st_focus_manager_get_group">
        <doc xml:space="preserve"
             filename="src/st/st-focus-manager.c"
             line="202">Checks if @widget is inside a focus group, and if so, returns
the root of that group.</doc>
        <source-position filename="src/st/st-focus-manager.h" line="76"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-focus-manager.c"
               line="210">the focus group root, or %NULL if
@widget is not in a focus group</doc>
          <type name="Widget" c:type="StWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="manager" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-focus-manager.c"
                 line="204">the #StFocusManager</doc>
            <type name="FocusManager" c:type="StFocusManager*"/>
          </instance-parameter>
          <parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-focus-manager.c"
                 line="205">an #StWidget</doc>
            <type name="Widget" c:type="StWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="remove_group" c:identifier="st_focus_manager_remove_group">
        <doc xml:space="preserve"
             filename="src/st/st-focus-manager.c"
             line="188">Removes the group rooted at @root from @manager</doc>
        <source-position filename="src/st/st-focus-manager.h" line="74"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="manager" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-focus-manager.c"
                 line="190">the #StFocusManager</doc>
            <type name="FocusManager" c:type="StFocusManager*"/>
          </instance-parameter>
          <parameter name="root" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-focus-manager.c"
                 line="191">the root container of the group</doc>
            <type name="Widget" c:type="StWidget*"/>
          </parameter>
        </parameters>
      </method>
      <field name="parent_instance" readable="0" private="1">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <field name="priv" readable="0" private="1">
        <type name="FocusManagerPrivate" c:type="StFocusManagerPrivate*"/>
      </field>
    </class>
    <record name="FocusManagerClass"
            c:type="StFocusManagerClass"
            glib:is-gtype-struct-for="FocusManager">
      <doc xml:space="preserve"
           filename="src/st/st-focus-manager.h"
           line="57">The #StFocusManagerClass struct contains only private data</doc>
      <source-position filename="src/st/st-focus-manager.h" line="66"/>
      <field name="parent_class" readable="0" private="1">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
    </record>
    <record name="FocusManagerPrivate"
            c:type="StFocusManagerPrivate"
            disguised="1"
            opaque="1">
      <source-position filename="src/st/st-focus-manager.h" line="41"/>
    </record>
    <function-macro name="GROUP" c:identifier="ST_GROUP" introspectable="0">
      <source-position filename="src/st/st-group.h" line="33"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="GROUP_CLASS"
                    c:identifier="ST_GROUP_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-group.h" line="35"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="GROUP_GET_CLASS"
                    c:identifier="ST_GROUP_GET_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-group.h" line="37"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <enumeration name="GradientType"
                 glib:type-name="StGradientType"
                 glib:get-type="st_gradient_type_get_type"
                 c:type="StGradientType">
      <member name="none"
              value="0"
              c:identifier="ST_GRADIENT_NONE"
              glib:nick="none"
              glib:name="ST_GRADIENT_NONE">
      </member>
      <member name="vertical"
              value="1"
              c:identifier="ST_GRADIENT_VERTICAL"
              glib:nick="vertical"
              glib:name="ST_GRADIENT_VERTICAL">
      </member>
      <member name="horizontal"
              value="2"
              c:identifier="ST_GRADIENT_HORIZONTAL"
              glib:nick="horizontal"
              glib:name="ST_GRADIENT_HORIZONTAL">
      </member>
      <member name="radial"
              value="3"
              c:identifier="ST_GRADIENT_RADIAL"
              glib:nick="radial"
              glib:name="ST_GRADIENT_RADIAL">
      </member>
    </enumeration>
    <class name="Group"
           c:symbol-prefix="group"
           c:type="StGroup"
           parent="Widget"
           glib:type-name="StGroup"
           glib:get-type="st_group_get_type"
           glib:type-struct="GroupClass">
      <doc xml:space="preserve"
           filename="src/st/st-group.h"
           line="43">The #StGroup struct contains only private data</doc>
      <source-position filename="src/st/st-group.h" line="63"/>
      <implements name="Atk.ImplementorIface"/>
      <implements name="Clutter.Animatable"/>
      <implements name="Clutter.Container"/>
      <implements name="Clutter.Scriptable"/>
      <constructor name="new"
                   c:identifier="st_group_new"
                   deprecated="1"
                   deprecated-version="3.0">
        <doc xml:space="preserve"
             filename="src/st/st-group.c"
             line="65">Create a new  #StGroup.</doc>
        <doc-deprecated xml:space="preserve">Use st_widget_new() instead.</doc-deprecated>
        <source-position filename="src/st/st-group.h" line="66"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-group.c"
               line="70">the newly created #StGroup actor</doc>
          <type name="Widget" c:type="StWidget*"/>
        </return-value>
      </constructor>
      <field name="parent_instance" readable="0" private="1">
        <type name="Widget" c:type="StWidget"/>
      </field>
    </class>
    <record name="GroupClass"
            c:type="StGroupClass"
            glib:is-gtype-struct-for="Group">
      <doc xml:space="preserve"
           filename="src/st/st-group.h"
           line="54">The #StGroupClass struct contains only private data</doc>
      <source-position filename="src/st/st-group.h" line="63"/>
      <field name="parent_class" readable="0" private="1">
        <type name="WidgetClass" c:type="StWidgetClass"/>
      </field>
    </record>
    <record name="GroupPrivate"
            c:type="StGroupPrivate"
            disguised="1"
            opaque="1">
      <source-position filename="src/st/st-group.h" line="40"/>
    </record>
    <function-macro name="ICON" c:identifier="ST_ICON" introspectable="0">
      <source-position filename="src/st/st-icon.h" line="41"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="ICON_CLASS"
                    c:identifier="ST_ICON_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-icon.h" line="44"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="ICON_GET_CLASS"
                    c:identifier="ST_ICON_GET_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-icon.h" line="53"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_BACKGROUND_BLUR_EFFECT"
                    c:identifier="ST_IS_BACKGROUND_BLUR_EFFECT"
                    introspectable="0">
      <source-position filename="src/st/st-background-effect.h" line="11"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_BACKGROUND_BUMPMAP_EFFECT"
                    c:identifier="ST_IS_BACKGROUND_BUMPMAP_EFFECT"
                    introspectable="0">
      <source-position filename="src/st/st-background-effect.h" line="14"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_BIN" c:identifier="ST_IS_BIN" introspectable="0">
      <source-position filename="src/st/st-bin.h" line="34"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_BIN_CLASS"
                    c:identifier="ST_IS_BIN_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-bin.h" line="36"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_BORDER_IMAGE"
                    c:identifier="ST_IS_BORDER_IMAGE"
                    introspectable="0">
      <source-position filename="src/st/st-border-image.h" line="36"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_BORDER_IMAGE_CLASS"
                    c:identifier="ST_IS_BORDER_IMAGE_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-border-image.h" line="37"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_BOX_LAYOUT"
                    c:identifier="ST_IS_BOX_LAYOUT"
                    introspectable="0">
      <source-position filename="src/st/st-box-layout.h" line="43"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_BOX_LAYOUT_CHILD"
                    c:identifier="ST_IS_BOX_LAYOUT_CHILD"
                    introspectable="0">
      <source-position filename="src/st/st-box-layout-child.h" line="39"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_BOX_LAYOUT_CHILD_CLASS"
                    c:identifier="ST_IS_BOX_LAYOUT_CHILD_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-box-layout-child.h" line="43"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_BOX_LAYOUT_CLASS"
                    c:identifier="ST_IS_BOX_LAYOUT_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-box-layout.h" line="47"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_BUTTON"
                    c:identifier="ST_IS_BUTTON"
                    introspectable="0">
      <source-position filename="src/st/st-button.h" line="34"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_BUTTON_CLASS"
                    c:identifier="ST_IS_BUTTON_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-button.h" line="36"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_DRAWING_AREA"
                    c:identifier="ST_IS_DRAWING_AREA"
                    introspectable="0">
      <source-position filename="src/st/st-drawing-area.h" line="30"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_DRAWING_AREA_CLASS"
                    c:identifier="ST_IS_DRAWING_AREA_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-drawing-area.h" line="31"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_ENTRY"
                    c:identifier="ST_IS_ENTRY"
                    introspectable="0">
      <source-position filename="src/st/st-entry.h" line="33"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_ENTRY_CLASS"
                    c:identifier="ST_IS_ENTRY_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-entry.h" line="35"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_FOCUS_MANAGER"
                    c:identifier="ST_IS_FOCUS_MANAGER"
                    introspectable="0">
      <source-position filename="src/st/st-focus-manager.h" line="35"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_FOCUS_MANAGER_CLASS"
                    c:identifier="ST_IS_FOCUS_MANAGER_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-focus-manager.h" line="37"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_GROUP"
                    c:identifier="ST_IS_GROUP"
                    introspectable="0">
      <source-position filename="src/st/st-group.h" line="34"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_GROUP_CLASS"
                    c:identifier="ST_IS_GROUP_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-group.h" line="36"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_ICON"
                    c:identifier="ST_IS_ICON"
                    introspectable="0">
      <source-position filename="src/st/st-icon.h" line="47"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_ICON_CLASS"
                    c:identifier="ST_IS_ICON_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-icon.h" line="50"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_LABEL"
                    c:identifier="ST_IS_LABEL"
                    introspectable="0">
      <source-position filename="src/st/st-label.h" line="33"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_LABEL_CLASS"
                    c:identifier="ST_IS_LABEL_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-label.h" line="35"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_PASSWORD_ENTRY"
                    c:identifier="ST_IS_PASSWORD_ENTRY"
                    introspectable="0">
      <source-position filename="src/st/st-password-entry.h" line="33"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_PASSWORD_ENTRY_CLASS"
                    c:identifier="ST_IS_PASSWORD_ENTRY_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-password-entry.h" line="35"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_POLYGON"
                    c:identifier="ST_IS_POLYGON"
                    introspectable="0">
      <source-position filename="src/st/st-polygon.h" line="29"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_POLYGON_CLASS"
                    c:identifier="ST_IS_POLYGON_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-polygon.h" line="30"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_SCROLLABLE"
                    c:identifier="ST_IS_SCROLLABLE"
                    introspectable="0">
      <source-position filename="src/st/st-scrollable.h" line="35"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_SCROLL_BAR"
                    c:identifier="ST_IS_SCROLL_BAR"
                    introspectable="0">
      <source-position filename="src/st/st-scroll-bar.h" line="35"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_SCROLL_BAR_CLASS"
                    c:identifier="ST_IS_SCROLL_BAR_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-scroll-bar.h" line="37"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_SCROLL_VIEW"
                    c:identifier="ST_IS_SCROLL_VIEW"
                    introspectable="0">
      <source-position filename="src/st/st-scroll-view.h" line="36"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_SCROLL_VIEW_CLASS"
                    c:identifier="ST_IS_SCROLL_VIEW_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-scroll-view.h" line="38"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_TABLE"
                    c:identifier="ST_IS_TABLE"
                    introspectable="0">
      <source-position filename="src/st/st-table.h" line="53"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_TABLE_CHILD"
                    c:identifier="ST_IS_TABLE_CHILD"
                    introspectable="0">
      <source-position filename="src/st/st-table-child.h" line="36"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_TABLE_CHILD_CLASS"
                    c:identifier="ST_IS_TABLE_CHILD_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-table-child.h" line="38"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_TABLE_CLASS"
                    c:identifier="ST_IS_TABLE_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-table.h" line="55"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_THEME"
                    c:identifier="ST_IS_THEME"
                    introspectable="0">
      <source-position filename="src/st/st-theme.h" line="44"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_THEME_CLASS"
                    c:identifier="ST_IS_THEME_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-theme.h" line="45"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_THEME_CONTEXT"
                    c:identifier="ST_IS_THEME_CONTEXT"
                    introspectable="0">
      <source-position filename="src/st/st-theme-context.h" line="46"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_THEME_CONTEXT_CLASS"
                    c:identifier="ST_IS_THEME_CONTEXT_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-theme-context.h" line="47"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_THEME_NODE"
                    c:identifier="ST_IS_THEME_NODE"
                    introspectable="0">
      <source-position filename="src/st/st-theme-node.h" line="58"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_THEME_NODE_CLASS"
                    c:identifier="ST_IS_THEME_NODE_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-theme-node.h" line="59"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_VIEWPORT"
                    c:identifier="ST_IS_VIEWPORT"
                    introspectable="0">
      <source-position filename="src/st/st-viewport.h" line="34"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_VIEWPORT_CLASS"
                    c:identifier="ST_IS_VIEWPORT_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-viewport.h" line="36"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_WIDGET"
                    c:identifier="ST_IS_WIDGET"
                    introspectable="0">
      <source-position filename="src/st/st-widget.h" line="46"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_WIDGET_ACCESSIBLE"
                    c:identifier="ST_IS_WIDGET_ACCESSIBLE"
                    introspectable="0">
      <source-position filename="src/st/st-widget-accessible.h" line="39"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_WIDGET_ACCESSIBLE_CLASS"
                    c:identifier="ST_IS_WIDGET_ACCESSIBLE_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-widget-accessible.h" line="47"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_WIDGET_CLASS"
                    c:identifier="ST_IS_WIDGET_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-widget.h" line="48"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <class name="Icon"
           c:symbol-prefix="icon"
           c:type="StIcon"
           parent="Widget"
           glib:type-name="StIcon"
           glib:get-type="st_icon_get_type"
           glib:type-struct="IconClass">
      <doc xml:space="preserve"
           filename="src/st/st-icon.h"
           line="58">The contents of this structure are private and should only be accessed
through the public API.</doc>
      <source-position filename="src/st/st-icon.h" line="80"/>
      <implements name="Atk.ImplementorIface"/>
      <implements name="Clutter.Animatable"/>
      <implements name="Clutter.Container"/>
      <implements name="Clutter.Scriptable"/>
      <constructor name="new" c:identifier="st_icon_new">
        <doc xml:space="preserve"
             filename="src/st/st-icon.c"
             line="512">Create a newly allocated #StIcon</doc>
        <source-position filename="src/st/st-icon.h" line="84"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-icon.c"
               line="517">A newly allocated #StIcon</doc>
          <type name="Clutter.Actor" c:type="ClutterActor*"/>
        </return-value>
      </constructor>
      <method name="get_gicon"
              c:identifier="st_icon_get_gicon"
              glib:get-property="gicon">
        <source-position filename="src/st/st-icon.h" line="98"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-icon.c"
               line="619">the override GIcon, if set, or NULL</doc>
          <type name="Gio.Icon" c:type="GIcon*"/>
        </return-value>
        <parameters>
          <instance-parameter name="icon" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-icon.c"
                 line="617">an icon</doc>
            <type name="Icon" c:type="StIcon*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_icon_name"
              c:identifier="st_icon_get_icon_name"
              glib:get-property="icon-name">
        <source-position filename="src/st/st-icon.h" line="88"/>
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="icon" transfer-ownership="none">
            <type name="Icon" c:type="StIcon*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_icon_size"
              c:identifier="st_icon_get_icon_size"
              glib:get-property="icon-size">
        <doc xml:space="preserve"
             filename="src/st/st-icon.c"
             line="680">Gets the size explicit size on the icon. This is not necesariily
 the size that the icon will actually be displayed at.</doc>
        <source-position filename="src/st/st-icon.h" line="94"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-icon.c"
               line="687">the size explicitly set, or -1 if no size has been set</doc>
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="icon" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-icon.c"
                 line="682">an icon</doc>
            <type name="Icon" c:type="StIcon*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_icon_type"
              c:identifier="st_icon_get_icon_type"
              glib:get-property="icon-type">
        <doc xml:space="preserve"
             filename="src/st/st-icon.c"
             line="569">Gets the type of icon we'll look up to display in the actor.
See st_icon_set_icon_type().</doc>
        <source-position filename="src/st/st-icon.h" line="92"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-icon.c"
               line="576">the icon type.</doc>
          <type name="IconType" c:type="StIconType"/>
        </return-value>
        <parameters>
          <instance-parameter name="icon" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-icon.c"
                 line="571">a #StIcon</doc>
            <type name="Icon" c:type="StIcon*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_gicon"
              c:identifier="st_icon_set_gicon"
              glib:set-property="gicon">
        <source-position filename="src/st/st-icon.h" line="97"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="icon" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-icon.c"
                 line="631">an icon</doc>
            <type name="Icon" c:type="StIcon*"/>
          </instance-parameter>
          <parameter name="gicon"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/st/st-icon.c"
                 line="632">a #GIcon to override :icon-name</doc>
            <type name="Gio.Icon" c:type="GIcon*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_icon_name"
              c:identifier="st_icon_set_icon_name"
              glib:set-property="icon-name">
        <source-position filename="src/st/st-icon.h" line="89"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="icon" transfer-ownership="none">
            <type name="Icon" c:type="StIcon*"/>
          </instance-parameter>
          <parameter name="icon_name" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_icon_size"
              c:identifier="st_icon_set_icon_size"
              glib:set-property="icon-size">
        <doc xml:space="preserve"
             filename="src/st/st-icon.c"
             line="697">Sets an explicit size for the icon.</doc>
        <source-position filename="src/st/st-icon.h" line="95"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="icon" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-icon.c"
                 line="699">an icon</doc>
            <type name="Icon" c:type="StIcon*"/>
          </instance-parameter>
          <parameter name="size" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-icon.c"
                 line="700">if positive, the new size, otherwise the size will be
  derived from the current style</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_icon_type"
              c:identifier="st_icon_set_icon_type"
              glib:set-property="icon-type">
        <doc xml:space="preserve"
             filename="src/st/st-icon.c"
             line="586">Sets the type of icon we'll look up to display in the actor.
The icon type determines whether we use a symbolic icon or
a full color icon and also is used for specific handling for
application and document icons.</doc>
        <source-position filename="src/st/st-icon.h" line="91"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="icon" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-icon.c"
                 line="588">a #StIcon</doc>
            <type name="Icon" c:type="StIcon*"/>
          </instance-parameter>
          <parameter name="icon_type" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-icon.c"
                 line="589">the type of icon to use</doc>
            <type name="IconType" c:type="StIconType"/>
          </parameter>
        </parameters>
      </method>
      <property name="gicon"
                writable="1"
                transfer-ownership="none"
                setter="set_gicon"
                getter="get_gicon">
        <type name="Gio.Icon"/>
      </property>
      <property name="icon-name"
                writable="1"
                transfer-ownership="none"
                setter="set_icon_name"
                getter="get_icon_name"
                default-value="NULL">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="icon-size"
                writable="1"
                transfer-ownership="none"
                setter="set_icon_size"
                getter="get_icon_size"
                default-value="-1">
        <type name="gint" c:type="gint"/>
      </property>
      <property name="icon-type"
                writable="1"
                transfer-ownership="none"
                setter="set_icon_type"
                getter="get_icon_type"
                default-value="ST_ICON_SYMBOLIC">
        <type name="IconType"/>
      </property>
      <field name="parent" readable="0" private="1">
        <type name="Widget" c:type="StWidget"/>
      </field>
      <field name="priv" readable="0" private="1">
        <type name="IconPrivate" c:type="StIconPrivate*"/>
      </field>
    </class>
    <record name="IconClass"
            c:type="StIconClass"
            glib:is-gtype-struct-for="Icon">
      <source-position filename="src/st/st-icon.h" line="80"/>
      <field name="parent_class">
        <type name="WidgetClass" c:type="StWidgetClass"/>
      </field>
      <field name="_padding_0" introspectable="0">
        <callback name="_padding_0">
          <source-position filename="src/st/st-icon.h" line="75"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_padding_1" introspectable="0">
        <callback name="_padding_1">
          <source-position filename="src/st/st-icon.h" line="76"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_padding_2" introspectable="0">
        <callback name="_padding_2">
          <source-position filename="src/st/st-icon.h" line="77"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_padding_3" introspectable="0">
        <callback name="_padding_3">
          <source-position filename="src/st/st-icon.h" line="78"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_padding_4" introspectable="0">
        <callback name="_padding_4">
          <source-position filename="src/st/st-icon.h" line="79"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <record name="IconColors"
            c:type="StIconColors"
            glib:type-name="StIconColors"
            glib:get-type="st_icon_colors_get_type"
            c:symbol-prefix="icon_colors">
      <doc xml:space="preserve"
           filename="src/st/st-icon-colors.h"
           line="13">The #StIconColors structure encapsulates colors for colorizing a symbolic
icon.</doc>
      <source-position filename="src/st/st-icon-colors.h" line="30"/>
      <field name="ref_count" writable="1">
        <type name="guint" c:type="volatile guint"/>
      </field>
      <field name="foreground" writable="1">
        <doc xml:space="preserve"
             filename="src/st/st-icon-colors.h"
             line="15">foreground color</doc>
        <type name="Clutter.Color" c:type="ClutterColor"/>
      </field>
      <field name="warning" writable="1">
        <doc xml:space="preserve"
             filename="src/st/st-icon-colors.h"
             line="16">color indicating a warning state</doc>
        <type name="Clutter.Color" c:type="ClutterColor"/>
      </field>
      <field name="error" writable="1">
        <doc xml:space="preserve"
             filename="src/st/st-icon-colors.h"
             line="17">color indicating an error state</doc>
        <type name="Clutter.Color" c:type="ClutterColor"/>
      </field>
      <field name="success" writable="1">
        <doc xml:space="preserve"
             filename="src/st/st-icon-colors.h"
             line="18">color indicating a successful operation</doc>
        <type name="Clutter.Color" c:type="ClutterColor"/>
      </field>
      <constructor name="new" c:identifier="st_icon_colors_new">
        <doc xml:space="preserve"
             filename="src/st/st-icon-colors.c"
             line="24">Creates a new #StIconColors. All colors are initialized to transparent black.</doc>
        <source-position filename="src/st/st-icon-colors.h" line="34"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/st/st-icon-colors.c"
               line="29">a newly created #StIconColors. Free with st_icon_colors_unref()</doc>
          <type name="IconColors" c:type="StIconColors*"/>
        </return-value>
      </constructor>
      <method name="copy" c:identifier="st_icon_colors_copy">
        <doc xml:space="preserve"
             filename="src/st/st-icon-colors.c"
             line="78">Creates a new StIconColors structure that is a copy of the passed
in @colors. You would use this function instead of st_icon_colors_ref()
if you were planning to change colors in the result.</doc>
        <source-position filename="src/st/st-icon-colors.h" line="37"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/st/st-icon-colors.c"
               line="86">a newly created #StIconColors.</doc>
          <type name="IconColors" c:type="StIconColors*"/>
        </return-value>
        <parameters>
          <instance-parameter name="colors" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-icon-colors.c"
                 line="80">a #StIconColors</doc>
            <type name="IconColors" c:type="StIconColors*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="ref" c:identifier="st_icon_colors_ref">
        <doc xml:space="preserve"
             filename="src/st/st-icon-colors.c"
             line="42">Atomically increments the reference count of @colors by one.</doc>
        <source-position filename="src/st/st-icon-colors.h" line="35"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/st/st-icon-colors.c"
               line="48">the passed in #StIconColors.</doc>
          <type name="IconColors" c:type="StIconColors*"/>
        </return-value>
        <parameters>
          <instance-parameter name="colors" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-icon-colors.c"
                 line="44">a #StIconColors</doc>
            <type name="IconColors" c:type="StIconColors*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="unref" c:identifier="st_icon_colors_unref">
        <doc xml:space="preserve"
             filename="src/st/st-icon-colors.c"
             line="60">Atomically decrements the reference count of @colors by one.
If the reference count drops to 0, all memory allocated by the
#StIconColors is released.</doc>
        <source-position filename="src/st/st-icon-colors.h" line="36"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="colors" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-icon-colors.c"
                 line="62">a #StIconColors</doc>
            <type name="IconColors" c:type="StIconColors*"/>
          </instance-parameter>
        </parameters>
      </method>
    </record>
    <record name="IconPrivate" c:type="StIconPrivate" disguised="1" opaque="1">
      <source-position filename="src/st/st-icon.h" line="56"/>
    </record>
    <enumeration name="IconStyle"
                 glib:type-name="StIconStyle"
                 glib:get-type="st_icon_style_get_type"
                 c:type="StIconStyle">
      <member name="requested"
              value="0"
              c:identifier="ST_ICON_STYLE_REQUESTED"
              glib:nick="requested"
              glib:name="ST_ICON_STYLE_REQUESTED">
      </member>
      <member name="regular"
              value="1"
              c:identifier="ST_ICON_STYLE_REGULAR"
              glib:nick="regular"
              glib:name="ST_ICON_STYLE_REGULAR">
      </member>
      <member name="symbolic"
              value="2"
              c:identifier="ST_ICON_STYLE_SYMBOLIC"
              glib:nick="symbolic"
              glib:name="ST_ICON_STYLE_SYMBOLIC">
      </member>
    </enumeration>
    <enumeration name="IconType"
                 glib:type-name="StIconType"
                 glib:get-type="st_icon_type_get_type"
                 c:type="StIconType">
      <member name="symbolic"
              value="0"
              c:identifier="ST_ICON_SYMBOLIC"
              glib:nick="symbolic"
              glib:name="ST_ICON_SYMBOLIC">
      </member>
      <member name="fullcolor"
              value="1"
              c:identifier="ST_ICON_FULLCOLOR"
              glib:nick="fullcolor"
              glib:name="ST_ICON_FULLCOLOR">
      </member>
      <member name="application"
              value="2"
              c:identifier="ST_ICON_APPLICATION"
              glib:nick="application"
              glib:name="ST_ICON_APPLICATION">
      </member>
      <member name="document"
              value="3"
              c:identifier="ST_ICON_DOCUMENT"
              glib:nick="document"
              glib:name="ST_ICON_DOCUMENT">
      </member>
    </enumeration>
    <class name="ImageContent"
           c:symbol-prefix="image_content"
           c:type="StImageContent"
           parent="Clutter.Image"
           glib:type-name="StImageContent"
           glib:get-type="st_image_content_get_type"
           glib:type-struct="ImageContentClass">
      <source-position filename="src/st/st-image-content.h" line="27"/>
      <implements name="Clutter.Content"/>
      <function name="new_with_preferred_size"
                c:identifier="st_image_content_new_with_preferred_size">
        <doc xml:space="preserve"
             filename="src/st/st-image-content.c"
             line="174">Creates a new #StImageContent, a simple content for sized images.</doc>
        <source-position filename="src/st/st-image-content.h" line="30"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/st/st-image-content.c"
               line="181">the newly created #StImageContent content
  Use g_object_unref() when done.</doc>
          <type name="Clutter.Content" c:type="ClutterContent*"/>
        </return-value>
        <parameters>
          <parameter name="width" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-image-content.c"
                 line="176">The preferred width to be used when drawing the content</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="height" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-image-content.c"
                 line="177">The preferred width to be used when drawing the content</doc>
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </function>
      <property name="preferred-height"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                default-value="-1">
        <type name="gint" c:type="gint"/>
      </property>
      <property name="preferred-width"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                default-value="-1">
        <type name="gint" c:type="gint"/>
      </property>
    </class>
    <record name="ImageContentClass"
            c:type="StImageContentClass"
            glib:is-gtype-struct-for="ImageContent">
      <source-position filename="src/st/st-image-content.h" line="27"/>
      <field name="parent_class">
        <type name="Clutter.ImageClass" c:type="ClutterImageClass"/>
      </field>
    </record>
    <function-macro name="LABEL" c:identifier="ST_LABEL" introspectable="0">
      <source-position filename="src/st/st-label.h" line="32"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="LABEL_CLASS"
                    c:identifier="ST_LABEL_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-label.h" line="34"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="LABEL_GET_CLASS"
                    c:identifier="ST_LABEL_GET_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-label.h" line="36"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <class name="Label"
           c:symbol-prefix="label"
           c:type="StLabel"
           parent="Widget"
           glib:type-name="StLabel"
           glib:get-type="st_label_get_type"
           glib:type-struct="LabelClass">
      <doc xml:space="preserve"
           filename="src/st/st-label.h"
           line="42">The contents of this structure is private and should only be accessed using
the provided API.</doc>
      <source-position filename="src/st/st-label.h" line="59"/>
      <implements name="Atk.ImplementorIface"/>
      <implements name="Clutter.Animatable"/>
      <implements name="Clutter.Container"/>
      <implements name="Clutter.Scriptable"/>
      <constructor name="new" c:identifier="st_label_new">
        <doc xml:space="preserve"
             filename="src/st/st-label.c"
             line="290">Create a new #StLabel with the specified label</doc>
        <source-position filename="src/st/st-label.h" line="63"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-label.c"
               line="296">a new #StLabel</doc>
          <type name="Widget" c:type="StWidget*"/>
        </return-value>
        <parameters>
          <parameter name="text" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-label.c"
                 line="292">text to set the label to</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </constructor>
      <method name="get_clutter_text"
              c:identifier="st_label_get_clutter_text"
              glib:get-property="clutter-text">
        <doc xml:space="preserve"
             filename="src/st/st-label.c"
             line="382">Retrieve the internal #ClutterText so that extra parameters can be set</doc>
        <source-position filename="src/st/st-label.h" line="67"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-label.c"
               line="388">ethe #ClutterText used by #StLabel. The label
is owned by the #StLabel and should not be unref'ed by the application.</doc>
          <type name="Clutter.Text" c:type="ClutterText*"/>
        </return-value>
        <parameters>
          <instance-parameter name="label" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-label.c"
                 line="384">a #StLabel</doc>
            <type name="Label" c:type="StLabel*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_text"
              c:identifier="st_label_get_text"
              glib:get-property="text">
        <doc xml:space="preserve"
             filename="src/st/st-label.c"
             line="309">Get the text displayed on the label</doc>
        <source-position filename="src/st/st-label.h" line="64"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-label.c"
               line="315">the text for the label. This must not be freed by the application</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="label" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-label.c"
                 line="311">a #StLabel</doc>
            <type name="Label" c:type="StLabel*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_text"
              c:identifier="st_label_set_text"
              glib:set-property="text">
        <doc xml:space="preserve"
             filename="src/st/st-label.c"
             line="342">Sets the text displayed on the label</doc>
        <source-position filename="src/st/st-label.h" line="65"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="label" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-label.c"
                 line="344">a #StLabel</doc>
            <type name="Label" c:type="StLabel*"/>
          </instance-parameter>
          <parameter name="text" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-label.c"
                 line="345">text to set the label to</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <property name="clutter-text"
                transfer-ownership="none"
                getter="get_clutter_text">
        <type name="Clutter.Text"/>
      </property>
      <property name="text"
                writable="1"
                transfer-ownership="none"
                setter="set_text"
                getter="get_text"
                default-value="NULL">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <field name="parent_instance" readable="0" private="1">
        <type name="Widget" c:type="StWidget"/>
      </field>
      <field name="priv" readable="0" private="1">
        <type name="LabelPrivate" c:type="StLabelPrivate*"/>
      </field>
    </class>
    <record name="LabelClass"
            c:type="StLabelClass"
            glib:is-gtype-struct-for="Label">
      <source-position filename="src/st/st-label.h" line="59"/>
      <field name="parent_class">
        <type name="WidgetClass" c:type="StWidgetClass"/>
      </field>
    </record>
    <record name="LabelPrivate"
            c:type="StLabelPrivate"
            disguised="1"
            opaque="1">
      <source-position filename="src/st/st-label.h" line="39"/>
    </record>
    <constant name="PARAM_READABLE" value="1" c:type="ST_PARAM_READABLE">
      <source-position filename="src/st/st-private.h" line="36"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <constant name="PARAM_READWRITE" value="3" c:type="ST_PARAM_READWRITE">
      <source-position filename="src/st/st-private.h" line="38"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <constant name="PARAM_WRITABLE" value="2" c:type="ST_PARAM_WRITABLE">
      <source-position filename="src/st/st-private.h" line="37"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <function-macro name="PASSWORD_ENTRY"
                    c:identifier="ST_PASSWORD_ENTRY"
                    introspectable="0">
      <source-position filename="src/st/st-password-entry.h" line="32"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="PASSWORD_ENTRY_CLASS"
                    c:identifier="ST_PASSWORD_ENTRY_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-password-entry.h" line="34"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="PASSWORD_ENTRY_GET_CLASS"
                    c:identifier="ST_PASSWORD_ENTRY_GET_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-password-entry.h" line="36"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="POLYGON"
                    c:identifier="ST_POLYGON"
                    introspectable="0">
      <source-position filename="src/st/st-polygon.h" line="27"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="POLYGON_CLASS"
                    c:identifier="ST_POLYGON_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-polygon.h" line="28"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="POLYGON_GET_CLASS"
                    c:identifier="ST_POLYGON_GET_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-polygon.h" line="31"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <class name="PasswordEntry"
           c:symbol-prefix="password_entry"
           c:type="StPasswordEntry"
           parent="Entry"
           glib:type-name="StPasswordEntry"
           glib:get-type="st_password_entry_get_type"
           glib:type-struct="PasswordEntryClass">
      <source-position filename="src/st/st-password-entry.h" line="53"/>
      <implements name="Atk.ImplementorIface"/>
      <implements name="Clutter.Animatable"/>
      <implements name="Clutter.Container"/>
      <implements name="Clutter.Scriptable"/>
      <constructor name="new" c:identifier="st_password_entry_new">
        <doc xml:space="preserve"
             filename="src/st/st-password-entry.c"
             line="176">Create a new #StPasswordEntry.</doc>
        <source-position filename="src/st/st-password-entry.h" line="57"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-password-entry.c"
               line="181">a new #StEntry</doc>
          <type name="Entry" c:type="StEntry*"/>
        </return-value>
      </constructor>
      <method name="get_password_visible"
              c:identifier="st_password_entry_get_password_visible"
              glib:get-property="password-visible">
        <doc xml:space="preserve"
             filename="src/st/st-password-entry.c"
             line="271">Gets whether the text is masked in the password entry.</doc>
        <source-position filename="src/st/st-password-entry.h" line="58"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="entry" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-password-entry.c"
                 line="273">a #StPasswordEntry</doc>
            <type name="PasswordEntry" c:type="StPasswordEntry*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_show_peek_icon"
              c:identifier="st_password_entry_get_show_peek_icon"
              glib:get-property="show-peek-icon">
        <doc xml:space="preserve"
             filename="src/st/st-password-entry.c"
             line="217">Gets whether peek-icon is shown or hidden in the password entry.</doc>
        <source-position filename="src/st/st-password-entry.h" line="61"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="entry" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-password-entry.c"
                 line="219">a #StPasswordEntry</doc>
            <type name="PasswordEntry" c:type="StPasswordEntry*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_password_visible"
              c:identifier="st_password_entry_set_password_visible"
              glib:set-property="password-visible">
        <doc xml:space="preserve"
             filename="src/st/st-password-entry.c"
             line="234">Sets whether to show or hide text in the password entry.</doc>
        <source-position filename="src/st/st-password-entry.h" line="59"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="entry" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-password-entry.c"
                 line="236">a #StPasswordEntry</doc>
            <type name="PasswordEntry" c:type="StPasswordEntry*"/>
          </instance-parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-password-entry.c"
                 line="237">#TRUE to show the password in the entry, #FALSE otherwise</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_show_peek_icon"
              c:identifier="st_password_entry_set_show_peek_icon"
              glib:set-property="show-peek-icon">
        <doc xml:space="preserve"
             filename="src/st/st-password-entry.c"
             line="189">Sets whether to show or hide the peek-icon in the password entry.</doc>
        <source-position filename="src/st/st-password-entry.h" line="62"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="entry" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-password-entry.c"
                 line="191">a #StPasswordEntry</doc>
            <type name="PasswordEntry" c:type="StPasswordEntry*"/>
          </instance-parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-password-entry.c"
                 line="192">#TRUE to show the peek-icon in the entry, #FALSE otherwise</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <property name="password-visible"
                writable="1"
                transfer-ownership="none"
                setter="set_password_visible"
                getter="get_password_visible"
                default-value="FALSE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="show-peek-icon"
                writable="1"
                transfer-ownership="none"
                setter="set_show_peek_icon"
                getter="get_show_peek_icon"
                default-value="TRUE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <field name="parent_instance" readable="0" private="1">
        <type name="Entry" c:type="StEntry"/>
      </field>
      <field name="priv" readable="0" private="1">
        <type name="PasswordEntryPrivate" c:type="StPasswordEntryPrivate*"/>
      </field>
    </class>
    <record name="PasswordEntryClass"
            c:type="StPasswordEntryClass"
            glib:is-gtype-struct-for="PasswordEntry">
      <source-position filename="src/st/st-password-entry.h" line="53"/>
      <field name="parent_class">
        <type name="EntryClass" c:type="StEntryClass"/>
      </field>
    </record>
    <record name="PasswordEntryPrivate"
            c:type="StPasswordEntryPrivate"
            disguised="1"
            opaque="1">
      <source-position filename="src/st/st-password-entry.h" line="39"/>
    </record>
    <enumeration name="PolicyType"
                 glib:type-name="StPolicyType"
                 glib:get-type="st_policy_type_get_type"
                 c:type="StPolicyType">
      <member name="always"
              value="0"
              c:identifier="ST_POLICY_ALWAYS"
              glib:nick="always"
              glib:name="ST_POLICY_ALWAYS">
      </member>
      <member name="automatic"
              value="1"
              c:identifier="ST_POLICY_AUTOMATIC"
              glib:nick="automatic"
              glib:name="ST_POLICY_AUTOMATIC">
      </member>
      <member name="never"
              value="2"
              c:identifier="ST_POLICY_NEVER"
              glib:nick="never"
              glib:name="ST_POLICY_NEVER">
      </member>
      <member name="external"
              value="3"
              c:identifier="ST_POLICY_EXTERNAL"
              glib:nick="external"
              glib:name="ST_POLICY_EXTERNAL">
      </member>
    </enumeration>
    <class name="Polygon"
           c:symbol-prefix="polygon"
           c:type="StPolygon"
           parent="Clutter.Actor"
           glib:type-name="StPolygon"
           glib:get-type="st_polygon_get_type"
           glib:type-struct="PolygonClass">
      <source-position filename="src/st/st-polygon.h" line="50"/>
      <implements name="Atk.ImplementorIface"/>
      <implements name="Clutter.Animatable"/>
      <implements name="Clutter.Container"/>
      <implements name="Clutter.Scriptable"/>
      <virtual-method name="repaint">
        <source-position filename="src/st/st-polygon.h" line="49"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="area" transfer-ownership="none">
            <type name="Polygon" c:type="StPolygon*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <method name="queue_repaint" c:identifier="st_polygon_queue_repaint">
        <doc xml:space="preserve"
             filename="src/st/st-polygon.c"
             line="396">Will cause the actor to emit a ::repaint signal before it is next
drawn to the scene. Useful if some parameters for the area being
drawn other than the size or style have changed. Note that
clutter_actor_queue_redraw() will simply result in the same
contents being drawn to the scene again.</doc>
        <source-position filename="src/st/st-polygon.h" line="54"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="area" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-polygon.c"
                 line="398">the #StPolygon</doc>
            <type name="Polygon" c:type="StPolygon*"/>
          </instance-parameter>
        </parameters>
      </method>
      <property name="debug"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="FALSE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="llc-x"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="0.000000">
        <type name="gfloat" c:type="gfloat"/>
      </property>
      <property name="llc-y"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="0.000000">
        <type name="gfloat" c:type="gfloat"/>
      </property>
      <property name="lrc-x"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="0.000000">
        <type name="gfloat" c:type="gfloat"/>
      </property>
      <property name="lrc-y"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="0.000000">
        <type name="gfloat" c:type="gfloat"/>
      </property>
      <property name="ulc-x"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="0.000000">
        <type name="gfloat" c:type="gfloat"/>
      </property>
      <property name="ulc-y"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="0.000000">
        <type name="gfloat" c:type="gfloat"/>
      </property>
      <property name="urc-x"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="0.000000">
        <type name="gfloat" c:type="gfloat"/>
      </property>
      <property name="urc-y"
                writable="1"
                construct="1"
                transfer-ownership="none"
                default-value="0.000000">
        <type name="gfloat" c:type="gfloat"/>
      </property>
      <field name="parent">
        <type name="Clutter.Actor" c:type="ClutterActor"/>
      </field>
      <field name="priv">
        <type name="PolygonPrivate" c:type="StPolygonPrivate*"/>
      </field>
      <glib:signal name="repaint" when="last">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
    </class>
    <record name="PolygonClass"
            c:type="StPolygonClass"
            glib:is-gtype-struct-for="Polygon">
      <source-position filename="src/st/st-polygon.h" line="50"/>
      <field name="parent_class">
        <type name="Clutter.ActorClass" c:type="ClutterActorClass"/>
      </field>
      <field name="repaint">
        <callback name="repaint">
          <source-position filename="src/st/st-polygon.h" line="49"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="area" transfer-ownership="none">
              <type name="Polygon" c:type="StPolygon*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <record name="PolygonPrivate"
            c:type="StPolygonPrivate"
            disguised="1"
            opaque="1">
      <source-position filename="src/st/st-polygon.h" line="36"/>
    </record>
    <function-macro name="SCROLLABLE"
                    c:identifier="ST_SCROLLABLE"
                    introspectable="0">
      <source-position filename="src/st/st-scrollable.h" line="34"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="SCROLLABLE_GET_INTERFACE"
                    c:identifier="ST_SCROLLABLE_GET_INTERFACE"
                    introspectable="0">
      <source-position filename="src/st/st-scrollable.h" line="36"/>
      <parameters>
        <parameter name="inst">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="SCROLL_BAR"
                    c:identifier="ST_SCROLL_BAR"
                    introspectable="0">
      <source-position filename="src/st/st-scroll-bar.h" line="34"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="SCROLL_BAR_CLASS"
                    c:identifier="ST_SCROLL_BAR_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-scroll-bar.h" line="36"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="SCROLL_BAR_GET_CLASS"
                    c:identifier="ST_SCROLL_BAR_GET_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-scroll-bar.h" line="38"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="SCROLL_VIEW"
                    c:identifier="ST_SCROLL_VIEW"
                    introspectable="0">
      <source-position filename="src/st/st-scroll-view.h" line="35"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="SCROLL_VIEW_CLASS"
                    c:identifier="ST_SCROLL_VIEW_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-scroll-view.h" line="37"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="SCROLL_VIEW_GET_CLASS"
                    c:identifier="ST_SCROLL_VIEW_GET_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-scroll-view.h" line="39"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <class name="ScrollBar"
           c:symbol-prefix="scroll_bar"
           c:type="StScrollBar"
           parent="Widget"
           glib:type-name="StScrollBar"
           glib:get-type="st_scroll_bar_get_type"
           glib:type-struct="ScrollBarClass">
      <doc xml:space="preserve"
           filename="src/st/st-scroll-bar.h"
           line="44">The contents of this structure are private and should only be accessed
through the public API.</doc>
      <source-position filename="src/st/st-scroll-bar.h" line="65"/>
      <implements name="Atk.ImplementorIface"/>
      <implements name="Clutter.Animatable"/>
      <implements name="Clutter.Container"/>
      <implements name="Clutter.Scriptable"/>
      <constructor name="new" c:identifier="st_scroll_bar_new">
        <source-position filename="src/st/st-scroll-bar.h" line="69"/>
        <return-value transfer-ownership="none">
          <type name="Widget" c:type="StWidget*"/>
        </return-value>
        <parameters>
          <parameter name="adjustment" transfer-ownership="none">
            <type name="Adjustment" c:type="StAdjustment*"/>
          </parameter>
        </parameters>
      </constructor>
      <virtual-method name="scroll_start">
        <source-position filename="src/st/st-scroll-bar.h" line="63"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="bar" transfer-ownership="none">
            <type name="ScrollBar" c:type="StScrollBar*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="scroll_stop">
        <source-position filename="src/st/st-scroll-bar.h" line="64"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="bar" transfer-ownership="none">
            <type name="ScrollBar" c:type="StScrollBar*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <method name="get_adjustment"
              c:identifier="st_scroll_bar_get_adjustment"
              glib:get-property="adjustment">
        <doc xml:space="preserve"
             filename="src/st/st-scroll-bar.c"
             line="952">Gets the adjustment object that stores the current position
of the scrollbar.</doc>
        <source-position filename="src/st/st-scroll-bar.h" line="73"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-scroll-bar.c"
               line="959">the adjustment</doc>
          <type name="Adjustment" c:type="StAdjustment*"/>
        </return-value>
        <parameters>
          <instance-parameter name="bar" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-scroll-bar.c"
                 line="954">a #StScrollbar</doc>
            <type name="ScrollBar" c:type="StScrollBar*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_adjustment"
              c:identifier="st_scroll_bar_set_adjustment"
              glib:set-property="adjustment">
        <source-position filename="src/st/st-scroll-bar.h" line="71"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="bar" transfer-ownership="none">
            <type name="ScrollBar" c:type="StScrollBar*"/>
          </instance-parameter>
          <parameter name="adjustment" transfer-ownership="none">
            <type name="Adjustment" c:type="StAdjustment*"/>
          </parameter>
        </parameters>
      </method>
      <property name="adjustment"
                writable="1"
                transfer-ownership="none"
                setter="set_adjustment"
                getter="get_adjustment">
        <type name="Adjustment"/>
      </property>
      <property name="vertical"
                writable="1"
                transfer-ownership="none"
                default-value="FALSE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <field name="parent_instance" readable="0" private="1">
        <type name="Widget" c:type="StWidget"/>
      </field>
      <field name="priv" readable="0" private="1">
        <type name="ScrollBarPrivate" c:type="StScrollBarPrivate*"/>
      </field>
      <glib:signal name="scroll-start" when="last">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="scroll-stop" when="last">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
    </class>
    <record name="ScrollBarClass"
            c:type="StScrollBarClass"
            glib:is-gtype-struct-for="ScrollBar">
      <source-position filename="src/st/st-scroll-bar.h" line="65"/>
      <field name="parent_class">
        <type name="WidgetClass" c:type="StWidgetClass"/>
      </field>
      <field name="scroll_start">
        <callback name="scroll_start">
          <source-position filename="src/st/st-scroll-bar.h" line="63"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="bar" transfer-ownership="none">
              <type name="ScrollBar" c:type="StScrollBar*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="scroll_stop">
        <callback name="scroll_stop">
          <source-position filename="src/st/st-scroll-bar.h" line="64"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="bar" transfer-ownership="none">
              <type name="ScrollBar" c:type="StScrollBar*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <record name="ScrollBarPrivate"
            c:type="StScrollBarPrivate"
            disguised="1"
            opaque="1">
      <source-position filename="src/st/st-scroll-bar.h" line="41"/>
    </record>
    <class name="ScrollView"
           c:symbol-prefix="scroll_view"
           c:type="StScrollView"
           parent="Bin"
           glib:type-name="StScrollView"
           glib:get-type="st_scroll_view_get_type"
           glib:type-struct="ScrollViewClass">
      <doc xml:space="preserve"
           filename="src/st/st-scroll-view.h"
           line="53">The contents of this structure are private and should only be accessed
through the public API.</doc>
      <source-position filename="src/st/st-scroll-view.h" line="70"/>
      <implements name="Atk.ImplementorIface"/>
      <implements name="Clutter.Animatable"/>
      <implements name="Clutter.Container"/>
      <implements name="Clutter.Scriptable"/>
      <constructor name="new" c:identifier="st_scroll_view_new">
        <source-position filename="src/st/st-scroll-view.h" line="74"/>
        <return-value transfer-ownership="none">
          <type name="Widget" c:type="StWidget*"/>
        </return-value>
      </constructor>
      <method name="get_auto_scrolling"
              c:identifier="st_scroll_view_get_auto_scrolling">
        <source-position filename="src/st/st-scroll-view.h" line="93"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="scroll" transfer-ownership="none">
            <type name="ScrollView" c:type="StScrollView*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_column_size"
              c:identifier="st_scroll_view_get_column_size">
        <source-position filename="src/st/st-scroll-view.h" line="79"/>
        <return-value transfer-ownership="none">
          <type name="gfloat" c:type="gfloat"/>
        </return-value>
        <parameters>
          <instance-parameter name="scroll" transfer-ownership="none">
            <type name="ScrollView" c:type="StScrollView*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_hscroll_bar"
              c:identifier="st_scroll_view_get_hscroll_bar">
        <doc xml:space="preserve"
             filename="src/st/st-scroll-view.c"
             line="1179">Gets the horizontal scrollbar of the scrollbiew</doc>
        <source-position filename="src/st/st-scroll-view.h" line="76"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-scroll-view.c"
               line="1185">the horizontal #StScrollBar</doc>
          <type name="Clutter.Actor" c:type="ClutterActor*"/>
        </return-value>
        <parameters>
          <instance-parameter name="scroll" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-scroll-view.c"
                 line="1181">a #StScrollView</doc>
            <type name="ScrollView" c:type="StScrollView*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_mouse_scrolling"
              c:identifier="st_scroll_view_get_mouse_scrolling">
        <source-position filename="src/st/st-scroll-view.h" line="89"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="scroll" transfer-ownership="none">
            <type name="ScrollView" c:type="StScrollView*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_overlay_scrollbars"
              c:identifier="st_scroll_view_get_overlay_scrollbars"
              glib:get-property="overlay-scrollbars">
        <doc xml:space="preserve"
             filename="src/st/st-scroll-view.c"
             line="1341">Gets the value set by st_scroll_view_set_overlay_scrollbars().</doc>
        <source-position filename="src/st/st-scroll-view.h" line="97"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="scroll" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-scroll-view.c"
                 line="1343">A #StScrollView</doc>
            <type name="ScrollView" c:type="StScrollView*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_row_size" c:identifier="st_scroll_view_get_row_size">
        <source-position filename="src/st/st-scroll-view.h" line="83"/>
        <return-value transfer-ownership="none">
          <type name="gfloat" c:type="gfloat"/>
        </return-value>
        <parameters>
          <instance-parameter name="scroll" transfer-ownership="none">
            <type name="ScrollView" c:type="StScrollView*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_vscroll_bar"
              c:identifier="st_scroll_view_get_vscroll_bar">
        <doc xml:space="preserve"
             filename="src/st/st-scroll-view.c"
             line="1195">Gets the vertical scrollbar of the scrollbiew</doc>
        <source-position filename="src/st/st-scroll-view.h" line="77"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-scroll-view.c"
               line="1201">the vertical #StScrollBar</doc>
          <type name="Clutter.Actor" c:type="ClutterActor*"/>
        </return-value>
        <parameters>
          <instance-parameter name="scroll" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-scroll-view.c"
                 line="1197">a #StScrollView</doc>
            <type name="ScrollView" c:type="StScrollView*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_auto_scrolling"
              c:identifier="st_scroll_view_set_auto_scrolling">
        <source-position filename="src/st/st-scroll-view.h" line="91"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="scroll" transfer-ownership="none">
            <type name="ScrollView" c:type="StScrollView*"/>
          </instance-parameter>
          <parameter name="enabled" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_column_size"
              c:identifier="st_scroll_view_set_column_size">
        <source-position filename="src/st/st-scroll-view.h" line="80"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="scroll" transfer-ownership="none">
            <type name="ScrollView" c:type="StScrollView*"/>
          </instance-parameter>
          <parameter name="column_size" transfer-ownership="none">
            <type name="gfloat" c:type="gfloat"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_mouse_scrolling"
              c:identifier="st_scroll_view_set_mouse_scrolling">
        <source-position filename="src/st/st-scroll-view.h" line="87"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="scroll" transfer-ownership="none">
            <type name="ScrollView" c:type="StScrollView*"/>
          </instance-parameter>
          <parameter name="enabled" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_overlay_scrollbars"
              c:identifier="st_scroll_view_set_overlay_scrollbars"
              glib:set-property="overlay-scrollbars">
        <doc xml:space="preserve"
             filename="src/st/st-scroll-view.c"
             line="1315">Sets whether scrollbars are painted on top of the content.</doc>
        <source-position filename="src/st/st-scroll-view.h" line="95"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="scroll" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-scroll-view.c"
                 line="1317">A #StScrollView</doc>
            <type name="ScrollView" c:type="StScrollView*"/>
          </instance-parameter>
          <parameter name="enabled" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-scroll-view.c"
                 line="1318">Whether to enable overlay scrollbars</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_policy" c:identifier="st_scroll_view_set_policy">
        <doc xml:space="preserve"
             filename="src/st/st-scroll-view.c"
             line="1359">Set the scroll policy.</doc>
        <source-position filename="src/st/st-scroll-view.h" line="99"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="scroll" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-scroll-view.c"
                 line="1361">A #StScrollView</doc>
            <type name="ScrollView" c:type="StScrollView*"/>
          </instance-parameter>
          <parameter name="hscroll" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-scroll-view.c"
                 line="1362">Whether to enable horizontal scrolling</doc>
            <type name="PolicyType" c:type="StPolicyType"/>
          </parameter>
          <parameter name="vscroll" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-scroll-view.c"
                 line="1363">Whether to enable vertical scrolling</doc>
            <type name="PolicyType" c:type="StPolicyType"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_row_size" c:identifier="st_scroll_view_set_row_size">
        <source-position filename="src/st/st-scroll-view.h" line="84"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="scroll" transfer-ownership="none">
            <type name="ScrollView" c:type="StScrollView*"/>
          </instance-parameter>
          <parameter name="row_size" transfer-ownership="none">
            <type name="gfloat" c:type="gfloat"/>
          </parameter>
        </parameters>
      </method>
      <method name="update_fade_effect"
              c:identifier="st_scroll_view_update_fade_effect">
        <doc xml:space="preserve"
             filename="src/st/st-scroll-view.c"
             line="186">Sets the height of the fade area area in pixels. A value of 0
disables the effect.</doc>
        <source-position filename="src/st/st-scroll-view.h" line="102"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="scroll" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-scroll-view.c"
                 line="188">a #StScrollView</doc>
            <type name="ScrollView" c:type="StScrollView*"/>
          </instance-parameter>
          <parameter name="vfade_offset" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-scroll-view.c"
                 line="189">The length of the veritcal fade effect, in pixels.</doc>
            <type name="gfloat" c:type="float"/>
          </parameter>
          <parameter name="hfade_offset" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-scroll-view.c"
                 line="190">The length of the horizontal fade effect, in pixels.</doc>
            <type name="gfloat" c:type="float"/>
          </parameter>
        </parameters>
      </method>
      <property name="enable-auto-scrolling"
                writable="1"
                transfer-ownership="none"
                default-value="FALSE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="enable-mouse-scrolling"
                writable="1"
                transfer-ownership="none"
                default-value="TRUE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="hscroll" transfer-ownership="none">
        <type name="ScrollBar"/>
      </property>
      <property name="hscrollbar-policy"
                writable="1"
                transfer-ownership="none"
                default-value="ST_POLICY_AUTOMATIC">
        <type name="PolicyType"/>
      </property>
      <property name="hscrollbar-visible"
                transfer-ownership="none"
                default-value="TRUE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="overlay-scrollbars"
                writable="1"
                transfer-ownership="none"
                setter="set_overlay_scrollbars"
                getter="get_overlay_scrollbars"
                default-value="FALSE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="vscroll" transfer-ownership="none">
        <type name="ScrollBar"/>
      </property>
      <property name="vscrollbar-policy"
                writable="1"
                transfer-ownership="none"
                default-value="ST_POLICY_AUTOMATIC">
        <type name="PolicyType"/>
      </property>
      <property name="vscrollbar-visible"
                transfer-ownership="none"
                default-value="TRUE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <field name="parent_instance" readable="0" private="1">
        <type name="Bin" c:type="StBin"/>
      </field>
      <field name="priv" readable="0" private="1">
        <type name="ScrollViewPrivate" c:type="StScrollViewPrivate*"/>
      </field>
    </class>
    <record name="ScrollViewClass"
            c:type="StScrollViewClass"
            glib:is-gtype-struct-for="ScrollView">
      <source-position filename="src/st/st-scroll-view.h" line="70"/>
      <field name="parent_class">
        <type name="BinClass" c:type="StBinClass"/>
      </field>
    </record>
    <class name="ScrollViewFade"
           c:symbol-prefix="scroll_view_fade"
           c:type="StScrollViewFade"
           parent="Clutter.ShaderEffect"
           glib:type-name="StScrollViewFade"
           glib:get-type="st_scroll_view_fade_get_type"
           glib:type-struct="ScrollViewFadeClass">
      <source-position filename="src/st/st-scroll-view-fade.h" line="29"/>
      <constructor name="new" c:identifier="st_scroll_view_fade_new">
        <doc xml:space="preserve"
             filename="src/st/st-scroll-view-fade.c"
             line="440">Create a new #StScrollViewFade.</doc>
        <source-position filename="src/st/st-scroll-view-fade.h" line="32"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/st/st-scroll-view-fade.c"
               line="445">a new #StScrollViewFade</doc>
          <type name="Clutter.Effect" c:type="ClutterEffect*"/>
        </return-value>
      </constructor>
      <property name="fade-edges"
                writable="1"
                transfer-ownership="none"
                default-value="TRUE">
        <doc xml:space="preserve"
             filename="src/st/st-scroll-view-fade.c"
             line="418">Whether the faded area should extend to the edges of the #StScrollViewFade.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="hfade-offset"
                writable="1"
                transfer-ownership="none"
                default-value="68.000000">
        <doc xml:space="preserve"
             filename="src/st/st-scroll-view-fade.c"
             line="405">The height of area which is faded at the left and right edges of the
#StScrollViewFade.</doc>
        <type name="gfloat" c:type="gfloat"/>
      </property>
      <property name="vfade-offset"
                writable="1"
                transfer-ownership="none"
                default-value="68.000000">
        <doc xml:space="preserve"
             filename="src/st/st-scroll-view-fade.c"
             line="392">The height of area which is faded at the top and bottom edges of the
#StScrollViewFade.</doc>
        <type name="gfloat" c:type="gfloat"/>
      </property>
    </class>
    <record name="ScrollViewFadeClass"
            c:type="StScrollViewFadeClass"
            glib:is-gtype-struct-for="ScrollViewFade">
      <source-position filename="src/st/st-scroll-view-fade.h" line="29"/>
      <field name="parent_class">
        <type name="Clutter.ShaderEffectClass"
              c:type="ClutterShaderEffectClass"/>
      </field>
    </record>
    <record name="ScrollViewPrivate"
            c:type="StScrollViewPrivate"
            disguised="1"
            opaque="1">
      <source-position filename="src/st/st-scroll-view.h" line="42"/>
    </record>
    <interface name="Scrollable"
               c:symbol-prefix="scrollable"
               c:type="StScrollable"
               glib:type-name="StScrollable"
               glib:get-type="st_scrollable_get_type"
               glib:type-struct="ScrollableInterface">
      <source-position filename="src/st/st-scrollable.h" line="51"/>
      <virtual-method name="get_adjustments" invoker="get_adjustments">
        <source-position filename="src/st/st-scrollable.h" line="48"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="scrollable" transfer-ownership="none">
            <type name="Scrollable" c:type="StScrollable*"/>
          </instance-parameter>
          <parameter name="hadjustment" transfer-ownership="none">
            <type name="Adjustment" c:type="StAdjustment**"/>
          </parameter>
          <parameter name="vadjustment" transfer-ownership="none">
            <type name="Adjustment" c:type="StAdjustment**"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="set_adjustments" invoker="set_adjustments">
        <source-position filename="src/st/st-scrollable.h" line="45"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="scrollable" transfer-ownership="none">
            <type name="Scrollable" c:type="StScrollable*"/>
          </instance-parameter>
          <parameter name="hadjustment" transfer-ownership="none">
            <type name="Adjustment" c:type="StAdjustment*"/>
          </parameter>
          <parameter name="vadjustment" transfer-ownership="none">
            <type name="Adjustment" c:type="StAdjustment*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <method name="get_adjustments"
              c:identifier="st_scrollable_get_adjustments">
        <source-position filename="src/st/st-scrollable.h" line="58"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="scrollable" transfer-ownership="none">
            <type name="Scrollable" c:type="StScrollable*"/>
          </instance-parameter>
          <parameter name="hadjustment" transfer-ownership="none">
            <type name="Adjustment" c:type="StAdjustment**"/>
          </parameter>
          <parameter name="vadjustment" transfer-ownership="none">
            <type name="Adjustment" c:type="StAdjustment**"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_adjustments"
              c:identifier="st_scrollable_set_adjustments">
        <source-position filename="src/st/st-scrollable.h" line="55"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="scrollable" transfer-ownership="none">
            <type name="Scrollable" c:type="StScrollable*"/>
          </instance-parameter>
          <parameter name="hadjustment" transfer-ownership="none">
            <type name="Adjustment" c:type="StAdjustment*"/>
          </parameter>
          <parameter name="vadjustment" transfer-ownership="none">
            <type name="Adjustment" c:type="StAdjustment*"/>
          </parameter>
        </parameters>
      </method>
      <property name="hadjustment" writable="1" transfer-ownership="none">
        <type name="Adjustment"/>
      </property>
      <property name="vadjustment" writable="1" transfer-ownership="none">
        <type name="Adjustment"/>
      </property>
    </interface>
    <record name="ScrollableInterface"
            c:type="StScrollableInterface"
            glib:is-gtype-struct-for="Scrollable">
      <source-position filename="src/st/st-scrollable.h" line="51"/>
      <field name="parent">
        <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
      </field>
      <field name="set_adjustments">
        <callback name="set_adjustments">
          <source-position filename="src/st/st-scrollable.h" line="45"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="scrollable" transfer-ownership="none">
              <type name="Scrollable" c:type="StScrollable*"/>
            </parameter>
            <parameter name="hadjustment" transfer-ownership="none">
              <type name="Adjustment" c:type="StAdjustment*"/>
            </parameter>
            <parameter name="vadjustment" transfer-ownership="none">
              <type name="Adjustment" c:type="StAdjustment*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_adjustments">
        <callback name="get_adjustments">
          <source-position filename="src/st/st-scrollable.h" line="48"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="scrollable" transfer-ownership="none">
              <type name="Scrollable" c:type="StScrollable*"/>
            </parameter>
            <parameter name="hadjustment" transfer-ownership="none">
              <type name="Adjustment" c:type="StAdjustment**"/>
            </parameter>
            <parameter name="vadjustment" transfer-ownership="none">
              <type name="Adjustment" c:type="StAdjustment**"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <class name="Settings"
           c:symbol-prefix="settings"
           c:type="StSettings"
           parent="GObject.Object"
           glib:type-name="StSettings"
           glib:get-type="st_settings_get_type"
           glib:type-struct="SettingsClass">
      <source-position filename="src/st/st-settings.h" line="32"/>
      <function name="get" c:identifier="st_settings_get">
        <doc xml:space="preserve"
             filename="src/st/st-settings.c"
             line="239">Gets the #StSettings</doc>
        <source-position filename="src/st/st-settings.h" line="34"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-settings.c"
               line="244">a settings object</doc>
          <type name="Settings" c:type="StSettings*"/>
        </return-value>
      </function>
      <property name="animations-enabled"
                writable="1"
                transfer-ownership="none"
                default-value="TRUE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="font-name" transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="gtk-icon-theme" transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="magnifier-active"
                transfer-ownership="none"
                default-value="FALSE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="slow-down-factor"
                writable="1"
                transfer-ownership="none"
                default-value="1.000000">
        <type name="gdouble" c:type="gdouble"/>
      </property>
    </class>
    <record name="SettingsClass"
            c:type="StSettingsClass"
            glib:is-gtype-struct-for="Settings">
      <source-position filename="src/st/st-settings.h" line="32"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
    </record>
    <record name="Shadow"
            c:type="StShadow"
            glib:type-name="StShadow"
            glib:get-type="st_shadow_get_type"
            c:symbol-prefix="shadow">
      <doc xml:space="preserve"
           filename="src/st/st-shadow.h"
           line="34">Attributes of the -st-shadow property.</doc>
      <source-position filename="src/st/st-shadow.h" line="55"/>
      <field name="color" writable="1">
        <doc xml:space="preserve"
             filename="src/st/st-shadow.h"
             line="36">shadow's color</doc>
        <type name="Clutter.Color" c:type="ClutterColor"/>
      </field>
      <field name="xoffset" writable="1">
        <doc xml:space="preserve"
             filename="src/st/st-shadow.h"
             line="37">horizontal offset - positive values mean placement to the right,
          negative values placement to the left of the element.</doc>
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="yoffset" writable="1">
        <doc xml:space="preserve"
             filename="src/st/st-shadow.h"
             line="39">vertical offset - positive values mean placement below, negative
          values placement above the element.</doc>
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="blur" writable="1">
        <doc xml:space="preserve"
             filename="src/st/st-shadow.h"
             line="41">shadow's blur radius - a value of 0.0 will result in a hard shadow.</doc>
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="spread" writable="1">
        <doc xml:space="preserve"
             filename="src/st/st-shadow.h"
             line="42">shadow's spread radius - grow the shadow without enlarging the
          blur.</doc>
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="inset" writable="1">
        <type name="gboolean" c:type="gboolean"/>
      </field>
      <field name="ref_count" writable="1">
        <type name="gint" c:type="volatile int"/>
      </field>
      <constructor name="new" c:identifier="st_shadow_new">
        <doc xml:space="preserve"
             filename="src/st/st-shadow.c"
             line="39">Creates a new #StShadow</doc>
        <source-position filename="src/st/st-shadow.h" line="59"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/st/st-shadow.c"
               line="50">the newly allocated shadow. Use st_shadow_free() when done</doc>
          <type name="Shadow" c:type="StShadow*"/>
        </return-value>
        <parameters>
          <parameter name="color" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-shadow.c"
                 line="41">shadow's color</doc>
            <type name="Clutter.Color" c:type="ClutterColor*"/>
          </parameter>
          <parameter name="xoffset" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-shadow.c"
                 line="42">horizontal offset</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="yoffset" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-shadow.c"
                 line="43">vertical offset</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="blur" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-shadow.c"
                 line="44">blur radius</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="spread" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-shadow.c"
                 line="45">spread radius</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="inset" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-shadow.c"
                 line="46">whether the shadow should be inset</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </constructor>
      <method name="equal" c:identifier="st_shadow_equal">
        <doc xml:space="preserve"
             filename="src/st/st-shadow.c"
             line="111">Check if two shadow objects are identical. Note that two shadows may
compare non-identically if they differ only by floating point rounding
errors.</doc>
        <source-position filename="src/st/st-shadow.h" line="68"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-shadow.c"
               line="120">%TRUE if the two shadows are identical</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="shadow" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-shadow.c"
                 line="113">a #StShadow</doc>
            <type name="Shadow" c:type="StShadow*"/>
          </instance-parameter>
          <parameter name="other" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-shadow.c"
                 line="114">a different #StShadow</doc>
            <type name="Shadow" c:type="StShadow*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_box" c:identifier="st_shadow_get_box">
        <doc xml:space="preserve"
             filename="src/st/st-shadow.c"
             line="143">Gets the box used to paint @shadow, which will be partly
outside of @actor_box</doc>
        <source-position filename="src/st/st-shadow.h" line="71"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="shadow" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-shadow.c"
                 line="145">a #StShadow</doc>
            <type name="Shadow" c:type="StShadow*"/>
          </instance-parameter>
          <parameter name="actor_box" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-shadow.c"
                 line="146">the box allocated to a #ClutterAlctor</doc>
            <type name="Clutter.ActorBox" c:type="const ClutterActorBox*"/>
          </parameter>
          <parameter name="shadow_box" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-shadow.c"
                 line="147">computed box occupied by @shadow</doc>
            <type name="Clutter.ActorBox" c:type="ClutterActorBox*"/>
          </parameter>
        </parameters>
      </method>
      <method name="ref" c:identifier="st_shadow_ref">
        <doc xml:space="preserve"
             filename="src/st/st-shadow.c"
             line="75">Atomically increments the reference count of @shadow by one.</doc>
        <source-position filename="src/st/st-shadow.h" line="65"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/st/st-shadow.c"
               line="81">the passed in #StShadow.</doc>
          <type name="Shadow" c:type="StShadow*"/>
        </return-value>
        <parameters>
          <instance-parameter name="shadow" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-shadow.c"
                 line="77">a #StShadow</doc>
            <type name="Shadow" c:type="StShadow*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="unref" c:identifier="st_shadow_unref">
        <doc xml:space="preserve"
             filename="src/st/st-shadow.c"
             line="93">Atomically decrements the reference count of @shadow by one.
If the reference count drops to 0, all memory allocated by the
#StShadow is released.</doc>
        <source-position filename="src/st/st-shadow.h" line="66"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="shadow" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-shadow.c"
                 line="95">a #StShadow</doc>
            <type name="Shadow" c:type="StShadow*"/>
          </instance-parameter>
        </parameters>
      </method>
    </record>
    <record name="ShadowHelper"
            c:type="StShadowHelper"
            opaque="1"
            glib:type-name="StShadowHelper"
            glib:get-type="st_shadow_helper_get_type"
            c:symbol-prefix="shadow_helper">
      <source-position filename="src/st/st-shadow.h" line="32"/>
      <constructor name="new" c:identifier="st_shadow_helper_new">
        <doc xml:space="preserve"
             filename="src/st/st-shadow.c"
             line="199">Builds a #StShadowHelper that will build a drop shadow
using @source as the mask.</doc>
        <source-position filename="src/st/st-shadow.h" line="80"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/st/st-shadow.c"
               line="206">a new #StShadowHelper</doc>
          <type name="ShadowHelper" c:type="StShadowHelper*"/>
        </return-value>
        <parameters>
          <parameter name="shadow" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-shadow.c"
                 line="201">a #StShadow representing the shadow properties</doc>
            <type name="Shadow" c:type="StShadow*"/>
          </parameter>
        </parameters>
      </constructor>
      <method name="copy" c:identifier="st_shadow_helper_copy">
        <source-position filename="src/st/st-shadow.h" line="82"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/st/st-shadow.c"
               line="244">a copy of @helper</doc>
          <type name="ShadowHelper" c:type="StShadowHelper*"/>
        </return-value>
        <parameters>
          <instance-parameter name="helper" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-shadow.c"
                 line="242">the #StShadowHelper to copy</doc>
            <type name="ShadowHelper" c:type="StShadowHelper*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="free" c:identifier="st_shadow_helper_free">
        <doc xml:space="preserve"
             filename="src/st/st-shadow.c"
             line="260">Free resources associated with @helper.</doc>
        <source-position filename="src/st/st-shadow.h" line="83"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="helper" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-shadow.c"
                 line="262">a #StShadowHelper</doc>
            <type name="ShadowHelper" c:type="StShadowHelper*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="paint" c:identifier="st_shadow_helper_paint">
        <doc xml:space="preserve"
             filename="src/st/st-shadow.c"
             line="276">Paints the shadow associated with @helper This must only
be called from the implementation of ClutterActor::paint().</doc>
        <source-position filename="src/st/st-shadow.h" line="88"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="helper" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-shadow.c"
                 line="278">a #StShadowHelper</doc>
            <type name="ShadowHelper" c:type="StShadowHelper*"/>
          </instance-parameter>
          <parameter name="framebuffer" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-shadow.c"
                 line="279">a #CoglFramebuffer</doc>
            <type name="Cogl.Framebuffer" c:type="CoglFramebuffer*"/>
          </parameter>
          <parameter name="actor_box" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-shadow.c"
                 line="280">the bounding box of the shadow</doc>
            <type name="Clutter.ActorBox" c:type="ClutterActorBox*"/>
          </parameter>
          <parameter name="paint_opacity" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-shadow.c"
                 line="281">the opacity at which the shadow is painted</doc>
            <type name="guint8" c:type="guint8"/>
          </parameter>
        </parameters>
      </method>
      <method name="update" c:identifier="st_shadow_helper_update">
        <source-position filename="src/st/st-shadow.h" line="85"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="helper" transfer-ownership="none">
            <type name="ShadowHelper" c:type="StShadowHelper*"/>
          </instance-parameter>
          <parameter name="source" transfer-ownership="none">
            <type name="Clutter.Actor" c:type="ClutterActor*"/>
          </parameter>
        </parameters>
      </method>
    </record>
    <enumeration name="Side"
                 glib:type-name="StSide"
                 glib:get-type="st_side_get_type"
                 c:type="StSide">
      <member name="top"
              value="0"
              c:identifier="ST_SIDE_TOP"
              glib:nick="top"
              glib:name="ST_SIDE_TOP">
      </member>
      <member name="right"
              value="1"
              c:identifier="ST_SIDE_RIGHT"
              glib:nick="right"
              glib:name="ST_SIDE_RIGHT">
      </member>
      <member name="bottom"
              value="2"
              c:identifier="ST_SIDE_BOTTOM"
              glib:nick="bottom"
              glib:name="ST_SIDE_BOTTOM">
      </member>
      <member name="left"
              value="3"
              c:identifier="ST_SIDE_LEFT"
              glib:nick="left"
              glib:name="ST_SIDE_LEFT">
      </member>
    </enumeration>
    <docsection name="StTheme">
      <doc xml:space="preserve"
           filename="src/st/st-theme.h"
           line="29">#StTheme holds a set of stylesheets. (The "cascade" of the name
Cascading Stylesheets.) A #StTheme can be set to apply to all the actors
in a stage using st_theme_context_set_theme() or applied to a subtree
of actors using st_widget_set_theme().</doc>
    </docsection>
    <docsection name="StThemeContext">
      <doc xml:space="preserve"
           filename="src/st/st-theme-context.h"
           line="31">#StThemeContext is responsible for managing information global to a tree of styled objects,
such as the set of stylesheets or the default font. In normal usage, a #StThemeContext
is bound to a #ClutterStage; a singleton #StThemeContext can be obtained for a #ClutterStage
by using st_theme_context_get_for_stage().</doc>
    </docsection>
    <docsection name="StThemeNode">
      <doc xml:space="preserve"
           filename="src/st/st-theme-node.h"
           line="34">A #StThemeNode represents the CSS style information (the set of CSS properties) for one
node in a tree of themed objects. In typical usage, it represents the style information
for a single #ClutterActor. A #StThemeNode is immutable: attributes such as the
CSS classes for the node are passed in at construction. If the attributes of the node
or any parent node change, the node should be discarded and a new node created.
#StThemeNode has generic accessors to look up properties by name and specific
accessors for standard CSS properties that add caching and handling of various
details of the CSS specification. #StThemeNode also has convenience functions to help
in implementing a #ClutterActor with borders and padding.</doc>
    </docsection>
    <function-macro name="TABLE" c:identifier="ST_TABLE" introspectable="0">
      <source-position filename="src/st/st-table.h" line="52"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="TABLE_CHILD"
                    c:identifier="ST_TABLE_CHILD"
                    introspectable="0">
      <source-position filename="src/st/st-table-child.h" line="35"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="TABLE_CHILD_CLASS"
                    c:identifier="ST_TABLE_CHILD_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-table-child.h" line="37"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="TABLE_CHILD_GET_CLASS"
                    c:identifier="ST_TABLE_CHILD_GET_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-table-child.h" line="39"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="TABLE_CLASS"
                    c:identifier="ST_TABLE_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-table.h" line="54"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="TABLE_GET_CLASS"
                    c:identifier="ST_TABLE_GET_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-table.h" line="56"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="THEME" c:identifier="ST_THEME" introspectable="0">
      <source-position filename="src/st/st-theme.h" line="42"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="THEME_CLASS"
                    c:identifier="ST_THEME_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-theme.h" line="43"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="THEME_CONTEXT"
                    c:identifier="ST_THEME_CONTEXT"
                    introspectable="0">
      <source-position filename="src/st/st-theme-context.h" line="44"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="THEME_CONTEXT_CLASS"
                    c:identifier="ST_THEME_CONTEXT_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-theme-context.h" line="45"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="THEME_CONTEXT_GET_CLASS"
                    c:identifier="ST_THEME_CONTEXT_GET_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-theme-context.h" line="48"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="THEME_GET_CLASS"
                    c:identifier="ST_THEME_GET_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-theme.h" line="46"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="THEME_NODE"
                    c:identifier="ST_THEME_NODE"
                    introspectable="0">
      <source-position filename="src/st/st-theme-node.h" line="56"/>
      <parameters>
        <parameter name="object">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="THEME_NODE_CLASS"
                    c:identifier="ST_THEME_NODE_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-theme-node.h" line="57"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="THEME_NODE_GET_CLASS"
                    c:identifier="ST_THEME_NODE_GET_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-theme-node.h" line="60"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <class name="Table"
           c:symbol-prefix="table"
           c:type="StTable"
           parent="Widget"
           glib:type-name="StTable"
           glib:get-type="st_table_get_type"
           glib:type-struct="TableClass">
      <doc xml:space="preserve"
           filename="src/st/st-table.h"
           line="62">The contents of this structure is private and should only be accessed using
the provided API.</doc>
      <source-position filename="src/st/st-table.h" line="79"/>
      <implements name="Atk.ImplementorIface"/>
      <implements name="Clutter.Animatable"/>
      <implements name="Clutter.Container"/>
      <implements name="Clutter.Scriptable"/>
      <constructor name="new" c:identifier="st_table_new">
        <doc xml:space="preserve"
             filename="src/st/st-table.c"
             line="1025">Create a new #StTable</doc>
        <source-position filename="src/st/st-table.h" line="83"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-table.c"
               line="1030">a new #StTable</doc>
          <type name="Widget" c:type="StWidget*"/>
        </return-value>
      </constructor>
      <method name="child_get_allocate_hidden"
              c:identifier="st_table_child_get_allocate_hidden">
        <doc xml:space="preserve"
             filename="src/st/st-table-child.c"
             line="746">Determine if the child is allocated even if it is hidden</doc>
        <source-position filename="src/st/st-table-child.h" line="119"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-table-child.c"
               line="753">%TRUE if the actor is allocated when hidden</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="table" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="748">A #StTable</doc>
            <type name="Table" c:type="StTable*"/>
          </instance-parameter>
          <parameter name="child" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="749">A #ClutterActor</doc>
            <type name="Clutter.Actor" c:type="ClutterActor*"/>
          </parameter>
        </parameters>
      </method>
      <method name="child_get_col_span"
              c:identifier="st_table_child_get_col_span">
        <doc xml:space="preserve"
             filename="src/st/st-table-child.c"
             line="314">Get the column span of the child. Defaults to 1.</doc>
        <source-position filename="src/st/st-table-child.h" line="76"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-table-child.c"
               line="321">the column span of the child</doc>
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="table" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="316">an #StTable</doc>
            <type name="Table" c:type="StTable*"/>
          </instance-parameter>
          <parameter name="child" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="317">a #ClutterActor</doc>
            <type name="Clutter.Actor" c:type="ClutterActor*"/>
          </parameter>
        </parameters>
      </method>
      <method name="child_get_row_span"
              c:identifier="st_table_child_get_row_span">
        <doc xml:space="preserve"
             filename="src/st/st-table-child.c"
             line="364">Get the row span of the child. Defaults to 1.</doc>
        <source-position filename="src/st/st-table-child.h" line="81"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-table-child.c"
               line="371">the row span of the child</doc>
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="table" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="366">A #StTable</doc>
            <type name="Table" c:type="StTable*"/>
          </instance-parameter>
          <parameter name="child" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="367">A #ClutterActor</doc>
            <type name="Clutter.Actor" c:type="ClutterActor*"/>
          </parameter>
        </parameters>
      </method>
      <method name="child_get_x_align"
              c:identifier="st_table_child_get_x_align">
        <doc xml:space="preserve"
             filename="src/st/st-table-child.c"
             line="617">Get the x-align value of the child</doc>
        <source-position filename="src/st/st-table-child.h" line="106"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-table-child.c"
               line="624">An #StAlign value</doc>
          <type name="Align" c:type="StAlign"/>
        </return-value>
        <parameters>
          <instance-parameter name="table" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="619">A #StTable</doc>
            <type name="Table" c:type="StTable*"/>
          </instance-parameter>
          <parameter name="child" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="620">A #ClutterActor</doc>
            <type name="Clutter.Actor" c:type="ClutterActor*"/>
          </parameter>
        </parameters>
      </method>
      <method name="child_get_x_expand"
              c:identifier="st_table_child_get_x_expand">
        <doc xml:space="preserve"
             filename="src/st/st-table-child.c"
             line="515">Get the x-expand property of the child</doc>
        <source-position filename="src/st/st-table-child.h" line="96"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-table-child.c"
               line="522">%TRUE if the child is set to x-expand</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="table" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="517">A #StTable</doc>
            <type name="Table" c:type="StTable*"/>
          </instance-parameter>
          <parameter name="child" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="518">A #ClutterActor</doc>
            <type name="Clutter.Actor" c:type="ClutterActor*"/>
          </parameter>
        </parameters>
      </method>
      <method name="child_get_x_fill" c:identifier="st_table_child_get_x_fill">
        <doc xml:space="preserve"
             filename="src/st/st-table-child.c"
             line="414">Get the x-fill state of the child</doc>
        <source-position filename="src/st/st-table-child.h" line="86"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-table-child.c"
               line="421">%TRUE if the child is set to x-fill</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="table" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="416">A #StTable</doc>
            <type name="Table" c:type="StTable*"/>
          </instance-parameter>
          <parameter name="child" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="417">A #ClutterActor</doc>
            <type name="Clutter.Actor" c:type="ClutterActor*"/>
          </parameter>
        </parameters>
      </method>
      <method name="child_get_y_align"
              c:identifier="st_table_child_get_y_align">
        <doc xml:space="preserve"
             filename="src/st/st-table-child.c"
             line="667">Get the y-align value of the child</doc>
        <source-position filename="src/st/st-table-child.h" line="111"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-table-child.c"
               line="674">An #StAlign value</doc>
          <type name="Align" c:type="StAlign"/>
        </return-value>
        <parameters>
          <instance-parameter name="table" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="669">A #StTable</doc>
            <type name="Table" c:type="StTable*"/>
          </instance-parameter>
          <parameter name="child" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="670">A #ClutterActor</doc>
            <type name="Clutter.Actor" c:type="ClutterActor*"/>
          </parameter>
        </parameters>
      </method>
      <method name="child_get_y_expand"
              c:identifier="st_table_child_get_y_expand">
        <doc xml:space="preserve"
             filename="src/st/st-table-child.c"
             line="594">Get the y-expand property of the child.</doc>
        <source-position filename="src/st/st-table-child.h" line="101"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-table-child.c"
               line="601">%TRUE if the child is set to y-expand</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="table" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="596">A #StTable</doc>
            <type name="Table" c:type="StTable*"/>
          </instance-parameter>
          <parameter name="child" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="597">A #ClutterActor</doc>
            <type name="Clutter.Actor" c:type="ClutterActor*"/>
          </parameter>
        </parameters>
      </method>
      <method name="child_get_y_fill" c:identifier="st_table_child_get_y_fill">
        <doc xml:space="preserve"
             filename="src/st/st-table-child.c"
             line="465">Get the y-fill state of the child</doc>
        <source-position filename="src/st/st-table-child.h" line="91"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-table-child.c"
               line="472">%TRUE if the child is set to y-fill</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="table" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="467">A #StTable</doc>
            <type name="Table" c:type="StTable*"/>
          </instance-parameter>
          <parameter name="child" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="468">A #ClutterActor</doc>
            <type name="Clutter.Actor" c:type="ClutterActor*"/>
          </parameter>
        </parameters>
      </method>
      <method name="child_set_allocate_hidden"
              c:identifier="st_table_child_set_allocate_hidden">
        <doc xml:space="preserve"
             filename="src/st/st-table-child.c"
             line="716">Set whether the child should be allocate even if it is hidden</doc>
        <source-position filename="src/st/st-table-child.h" line="116"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="table" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="718">A #StTable</doc>
            <type name="Table" c:type="StTable*"/>
          </instance-parameter>
          <parameter name="child" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="719">A #ClutterActor</doc>
            <type name="Clutter.Actor" c:type="ClutterActor*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="720">%TRUE if the actor should be allocated when hidden</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="child_set_col_span"
              c:identifier="st_table_child_set_col_span">
        <doc xml:space="preserve"
             filename="src/st/st-table-child.c"
             line="337">Set the column span of the child.</doc>
        <source-position filename="src/st/st-table-child.h" line="78"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="table" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="339">An #StTable</doc>
            <type name="Table" c:type="StTable*"/>
          </instance-parameter>
          <parameter name="child" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="340">An #ClutterActor</doc>
            <type name="Clutter.Actor" c:type="ClutterActor*"/>
          </parameter>
          <parameter name="span" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="341">The number of columns to span</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </method>
      <method name="child_set_row_span"
              c:identifier="st_table_child_set_row_span">
        <doc xml:space="preserve"
             filename="src/st/st-table-child.c"
             line="387">Set the row span of the child.</doc>
        <source-position filename="src/st/st-table-child.h" line="83"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="table" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="389">A #StTable</doc>
            <type name="Table" c:type="StTable*"/>
          </instance-parameter>
          <parameter name="child" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="390">A #ClutterActor</doc>
            <type name="Clutter.Actor" c:type="ClutterActor*"/>
          </parameter>
          <parameter name="span" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="391">the number of rows to span</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </method>
      <method name="child_set_x_align"
              c:identifier="st_table_child_set_x_align">
        <doc xml:space="preserve"
             filename="src/st/st-table-child.c"
             line="641">Set the alignment of the child within its cell. This will only have an effect
if the the x-fill property is FALSE.</doc>
        <source-position filename="src/st/st-table-child.h" line="108"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="table" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="643">A #StTable</doc>
            <type name="Table" c:type="StTable*"/>
          </instance-parameter>
          <parameter name="child" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="644">A #ClutterActor</doc>
            <type name="Clutter.Actor" c:type="ClutterActor*"/>
          </parameter>
          <parameter name="align" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="645">A #StAlign value</doc>
            <type name="Align" c:type="StAlign"/>
          </parameter>
        </parameters>
      </method>
      <method name="child_set_x_expand"
              c:identifier="st_table_child_set_x_expand">
        <doc xml:space="preserve"
             filename="src/st/st-table-child.c"
             line="538">Set x-expand on the child. This causes the column which the child
resides in to be allocated any extra space if the allocation of the table is
larger than the preferred size.</doc>
        <source-position filename="src/st/st-table-child.h" line="98"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="table" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="540">A #StTable</doc>
            <type name="Table" c:type="StTable*"/>
          </instance-parameter>
          <parameter name="child" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="541">A #ClutterActor</doc>
            <type name="Clutter.Actor" c:type="ClutterActor*"/>
          </parameter>
          <parameter name="expand" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="542">the new value of the x expand child property</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="child_set_x_fill" c:identifier="st_table_child_set_x_fill">
        <doc xml:space="preserve"
             filename="src/st/st-table-child.c"
             line="437">Set the fill state of the child on the x-axis. This will cause the child to
be allocated the maximum available space.</doc>
        <source-position filename="src/st/st-table-child.h" line="88"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="table" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="439">A #StTable</doc>
            <type name="Table" c:type="StTable*"/>
          </instance-parameter>
          <parameter name="child" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="440">A #ClutterActor</doc>
            <type name="Clutter.Actor" c:type="ClutterActor*"/>
          </parameter>
          <parameter name="fill" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="441">the fill state</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="child_set_y_align"
              c:identifier="st_table_child_set_y_align">
        <doc xml:space="preserve"
             filename="src/st/st-table-child.c"
             line="690">Set the value of the y-align property. This will only have an effect if
y-fill value is set to FALSE.</doc>
        <source-position filename="src/st/st-table-child.h" line="113"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="table" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="692">A #StTable</doc>
            <type name="Table" c:type="StTable*"/>
          </instance-parameter>
          <parameter name="child" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="693">A #ClutterActor</doc>
            <type name="Clutter.Actor" c:type="ClutterActor*"/>
          </parameter>
          <parameter name="align" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="694">A #StAlign value</doc>
            <type name="Align" c:type="StAlign"/>
          </parameter>
        </parameters>
      </method>
      <method name="child_set_y_expand"
              c:identifier="st_table_child_set_y_expand">
        <doc xml:space="preserve"
             filename="src/st/st-table-child.c"
             line="566">Set y-expand on the child. This causes the row which the child
resides in to be allocated any extra space if the allocation of the table is
larger than the preferred size.</doc>
        <source-position filename="src/st/st-table-child.h" line="103"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="table" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="568">A #StTable</doc>
            <type name="Table" c:type="StTable*"/>
          </instance-parameter>
          <parameter name="child" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="569">A #ClutterActor</doc>
            <type name="Clutter.Actor" c:type="ClutterActor*"/>
          </parameter>
          <parameter name="expand" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="570">the new value of the y-expand child property</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="child_set_y_fill" c:identifier="st_table_child_set_y_fill">
        <doc xml:space="preserve"
             filename="src/st/st-table-child.c"
             line="488">Set the fill state of the child on the y-axis. This will cause the child to
be allocated the maximum available space.</doc>
        <source-position filename="src/st/st-table-child.h" line="93"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="table" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="490">A #StTable</doc>
            <type name="Table" c:type="StTable*"/>
          </instance-parameter>
          <parameter name="child" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="491">A #ClutterActor</doc>
            <type name="Clutter.Actor" c:type="ClutterActor*"/>
          </parameter>
          <parameter name="fill" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table-child.c"
                 line="492">the fill state</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_column_count"
              c:identifier="st_table_get_column_count"
              glib:get-property="column-count">
        <doc xml:space="preserve"
             filename="src/st/st-table.c"
             line="1054">Retrieve the current number of columns in @table</doc>
        <source-position filename="src/st/st-table.h" line="86"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-table.c"
               line="1060">the number of columns</doc>
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="table" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table.c"
                 line="1056">A #StTable</doc>
            <type name="Table" c:type="StTable*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_row_count"
              c:identifier="st_table_get_row_count"
              glib:get-property="row-count">
        <doc xml:space="preserve"
             filename="src/st/st-table.c"
             line="1038">Retrieve the current number rows in the @table</doc>
        <source-position filename="src/st/st-table.h" line="85"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-table.c"
               line="1044">the number of rows</doc>
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="table" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-table.c"
                 line="1040">A #StTable</doc>
            <type name="Table" c:type="StTable*"/>
          </instance-parameter>
        </parameters>
      </method>
      <property name="column-count"
                transfer-ownership="none"
                getter="get_column_count"
                default-value="0">
        <type name="gint" c:type="gint"/>
      </property>
      <property name="homogeneous"
                writable="1"
                transfer-ownership="none"
                default-value="TRUE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="row-count"
                transfer-ownership="none"
                getter="get_row_count"
                default-value="0">
        <type name="gint" c:type="gint"/>
      </property>
      <field name="parent_instance" readable="0" private="1">
        <type name="Widget" c:type="StWidget"/>
      </field>
      <field name="priv" readable="0" private="1">
        <type name="TablePrivate" c:type="StTablePrivate*"/>
      </field>
    </class>
    <class name="TableChild"
           c:symbol-prefix="table_child"
           c:type="StTableChild"
           parent="Clutter.ChildMeta"
           glib:type-name="StTableChild"
           glib:get-type="st_table_child_get_type"
           glib:type-struct="TableChildClass">
      <doc xml:space="preserve"
           filename="src/st/st-table-child.h"
           line="44">The contents of the this structure are private and should only be accessed
through the public API.</doc>
      <source-position filename="src/st/st-table-child.h" line="72"/>
      <property name="allocate-hidden"
                writable="1"
                transfer-ownership="none"
                default-value="TRUE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="col"
                writable="1"
                transfer-ownership="none"
                default-value="0">
        <type name="gint" c:type="gint"/>
      </property>
      <property name="col-span"
                writable="1"
                transfer-ownership="none"
                default-value="1">
        <type name="gint" c:type="gint"/>
      </property>
      <property name="row"
                writable="1"
                transfer-ownership="none"
                default-value="0">
        <type name="gint" c:type="gint"/>
      </property>
      <property name="row-span"
                writable="1"
                transfer-ownership="none"
                default-value="1">
        <type name="gint" c:type="gint"/>
      </property>
      <property name="x-align"
                writable="1"
                transfer-ownership="none"
                default-value="ST_ALIGN_MIDDLE">
        <type name="Align"/>
      </property>
      <property name="x-expand"
                writable="1"
                transfer-ownership="none"
                default-value="TRUE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="x-fill"
                writable="1"
                transfer-ownership="none"
                default-value="TRUE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="y-align"
                writable="1"
                transfer-ownership="none"
                default-value="ST_ALIGN_MIDDLE">
        <type name="Align"/>
      </property>
      <property name="y-expand"
                writable="1"
                transfer-ownership="none"
                default-value="TRUE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="y-fill"
                writable="1"
                transfer-ownership="none"
                default-value="TRUE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <field name="parent_instance" readable="0" private="1">
        <type name="Clutter.ChildMeta" c:type="ClutterChildMeta"/>
      </field>
      <field name="col" readable="0" private="1">
        <type name="gint" c:type="gint"/>
      </field>
      <field name="row" readable="0" private="1">
        <type name="gint" c:type="gint"/>
      </field>
      <field name="col_span" readable="0" private="1">
        <type name="gint" c:type="gint"/>
      </field>
      <field name="row_span" readable="0" private="1">
        <type name="gint" c:type="gint"/>
      </field>
      <field name="x_align" readable="0" private="1">
        <type name="Align" c:type="StAlign"/>
      </field>
      <field name="y_align" readable="0" private="1">
        <type name="Align" c:type="StAlign"/>
      </field>
      <field name="allocate_hidden" readable="0" bits="1" private="1">
        <type name="guint" c:type="guint"/>
      </field>
      <field name="x_expand" readable="0" bits="1" private="1">
        <type name="guint" c:type="guint"/>
      </field>
      <field name="y_expand" readable="0" bits="1" private="1">
        <type name="guint" c:type="guint"/>
      </field>
      <field name="x_fill" readable="0" bits="1" private="1">
        <type name="guint" c:type="guint"/>
      </field>
      <field name="y_fill" readable="0" bits="1" private="1">
        <type name="guint" c:type="guint"/>
      </field>
    </class>
    <record name="TableChildClass"
            c:type="StTableChildClass"
            glib:is-gtype-struct-for="TableChild">
      <source-position filename="src/st/st-table-child.h" line="72"/>
      <field name="parent_class">
        <type name="Clutter.ChildMetaClass" c:type="ClutterChildMetaClass"/>
      </field>
    </record>
    <bitfield name="TableChildOptions"
              glib:type-name="StTableChildOptions"
              glib:get-type="st_table_child_options_get_type"
              c:type="StTableChildOptions">
      <doc xml:space="preserve"
           filename="src/st/st-table.h"
           line="32">Denotes the child properties an StTable child will have.</doc>
      <member name="keep_aspect_ratio"
              value="1"
              c:identifier="ST_KEEP_ASPECT_RATIO"
              glib:nick="keep-aspect-ratio"
              glib:name="ST_KEEP_ASPECT_RATIO">
        <doc xml:space="preserve"
             filename="src/st/st-table.h"
             line="34">whether to respect the widget's aspect ratio</doc>
      </member>
      <member name="x_expand"
              value="2"
              c:identifier="ST_X_EXPAND"
              glib:nick="x-expand"
              glib:name="ST_X_EXPAND">
        <doc xml:space="preserve"
             filename="src/st/st-table.h"
             line="35">whether to allocate extra space on the widget's x-axis</doc>
      </member>
      <member name="y_expand"
              value="4"
              c:identifier="ST_Y_EXPAND"
              glib:nick="y-expand"
              glib:name="ST_Y_EXPAND">
        <doc xml:space="preserve"
             filename="src/st/st-table.h"
             line="36">whether to allocate extra space on the widget's y-axis</doc>
      </member>
      <member name="x_fill"
              value="8"
              c:identifier="ST_X_FILL"
              glib:nick="x-fill"
              glib:name="ST_X_FILL">
        <doc xml:space="preserve"
             filename="src/st/st-table.h"
             line="37">whether to stretch the child to fill the cell horizontally</doc>
      </member>
      <member name="y_fill"
              value="16"
              c:identifier="ST_Y_FILL"
              glib:nick="y-fill"
              glib:name="ST_Y_FILL">
        <doc xml:space="preserve"
             filename="src/st/st-table.h"
             line="38">whether to stretch the child to fill the cell vertically</doc>
      </member>
    </bitfield>
    <record name="TableClass"
            c:type="StTableClass"
            glib:is-gtype-struct-for="Table">
      <source-position filename="src/st/st-table.h" line="79"/>
      <field name="parent_class">
        <type name="WidgetClass" c:type="StWidgetClass"/>
      </field>
    </record>
    <record name="TablePrivate"
            c:type="StTablePrivate"
            disguised="1"
            opaque="1">
      <source-position filename="src/st/st-table.h" line="59"/>
    </record>
    <enumeration name="TextAlign"
                 glib:type-name="StTextAlign"
                 glib:get-type="st_text_align_get_type"
                 c:type="StTextAlign">
      <member name="left"
              value="0"
              c:identifier="ST_TEXT_ALIGN_LEFT"
              glib:nick="left"
              glib:name="ST_TEXT_ALIGN_LEFT">
      </member>
      <member name="center"
              value="1"
              c:identifier="ST_TEXT_ALIGN_CENTER"
              glib:nick="center"
              glib:name="ST_TEXT_ALIGN_CENTER">
      </member>
      <member name="right"
              value="2"
              c:identifier="ST_TEXT_ALIGN_RIGHT"
              glib:nick="right"
              glib:name="ST_TEXT_ALIGN_RIGHT">
      </member>
      <member name="justify"
              value="3"
              c:identifier="ST_TEXT_ALIGN_JUSTIFY"
              glib:nick="justify"
              glib:name="ST_TEXT_ALIGN_JUSTIFY">
      </member>
    </enumeration>
    <bitfield name="TextDecoration"
              glib:type-name="StTextDecoration"
              glib:get-type="st_text_decoration_get_type"
              c:type="StTextDecoration">
      <member name="underline"
              value="1"
              c:identifier="ST_TEXT_DECORATION_UNDERLINE"
              glib:nick="underline"
              glib:name="ST_TEXT_DECORATION_UNDERLINE">
      </member>
      <member name="overline"
              value="2"
              c:identifier="ST_TEXT_DECORATION_OVERLINE"
              glib:nick="overline"
              glib:name="ST_TEXT_DECORATION_OVERLINE">
      </member>
      <member name="line_through"
              value="4"
              c:identifier="ST_TEXT_DECORATION_LINE_THROUGH"
              glib:nick="line-through"
              glib:name="ST_TEXT_DECORATION_LINE_THROUGH">
      </member>
      <member name="blink"
              value="8"
              c:identifier="ST_TEXT_DECORATION_BLINK"
              glib:nick="blink"
              glib:name="ST_TEXT_DECORATION_BLINK">
      </member>
    </bitfield>
    <enumeration name="TextDirection"
                 glib:type-name="StTextDirection"
                 glib:get-type="st_text_direction_get_type"
                 c:type="StTextDirection">
      <member name="none"
              value="0"
              c:identifier="ST_TEXT_DIRECTION_NONE"
              glib:nick="none"
              glib:name="ST_TEXT_DIRECTION_NONE">
      </member>
      <member name="ltr"
              value="1"
              c:identifier="ST_TEXT_DIRECTION_LTR"
              glib:nick="ltr"
              glib:name="ST_TEXT_DIRECTION_LTR">
      </member>
      <member name="rtl"
              value="2"
              c:identifier="ST_TEXT_DIRECTION_RTL"
              glib:nick="rtl"
              glib:name="ST_TEXT_DIRECTION_RTL">
      </member>
    </enumeration>
    <class name="TextureCache"
           c:symbol-prefix="texture_cache"
           c:type="StTextureCache"
           parent="GObject.Object"
           glib:type-name="StTextureCache"
           glib:get-type="st_texture_cache_get_type"
           glib:type-struct="TextureCacheClass">
      <source-position filename="src/st/st-texture-cache.h" line="38"/>
      <function name="get_default" c:identifier="st_texture_cache_get_default">
        <source-position filename="src/st/st-texture-cache.h" line="55"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-texture-cache.c"
               line="2168">The global texture cache</doc>
          <type name="TextureCache" c:type="StTextureCache*"/>
        </return-value>
      </function>
      <function name="load_from_pixbuf"
                c:identifier="st_texture_cache_load_from_pixbuf">
        <doc xml:space="preserve"
             filename="src/st/st-texture-cache.c"
             line="1138">Converts a #GdkPixbuf into a #ClutterTexture.</doc>
        <source-position filename="src/st/st-texture-cache.h" line="76"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-texture-cache.c"
               line="1145">A new #ClutterActor</doc>
          <type name="Clutter.Actor" c:type="ClutterActor*"/>
        </return-value>
        <parameters>
          <parameter name="pixbuf" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1140">A #GdkPixbuf</doc>
            <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
          </parameter>
          <parameter name="size" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1141">int</doc>
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </function>
      <method name="bind_cairo_surface_property"
              c:identifier="st_texture_cache_bind_cairo_surface_property">
        <doc xml:space="preserve"
             filename="src/st/st-texture-cache.c"
             line="833">Create a #ClutterActor which tracks the #cairo_surface_t value of a GObject property
named by @property_name.  Unlike other methods in StTextureCache, the underlying
#CoglTexture is not shared by default with other invocations to this method.

If the source object is destroyed, the texture will continue to show the last
value of the property.</doc>
        <source-position filename="src/st/st-texture-cache.h" line="92"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-texture-cache.c"
               line="846">A new #StWidget</doc>
          <type name="Widget" c:type="StWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="cache" transfer-ownership="none">
            <type name="TextureCache" c:type="StTextureCache*"/>
          </instance-parameter>
          <parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="836">A #GObject with a property @property_name of type #GdkPixbuf</doc>
            <type name="GObject.Object" c:type="GObject*"/>
          </parameter>
          <parameter name="property_name" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="837">Name of a property</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="size" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </method>
      <method name="can_load_mime_type"
              c:identifier="st_texture_cache_can_load_mime_type">
        <doc xml:space="preserve"
             filename="src/st/st-texture-cache.c"
             line="2199">Compares @mime_type with a list of types that we are capable
of loading.</doc>
        <source-position filename="src/st/st-texture-cache.h" line="187"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-texture-cache.c"
               line="2207">%TRUE if the mime_type is valid.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="cache" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="2201">A #StTextureCache</doc>
            <type name="TextureCache" c:type="StTextureCache*"/>
          </instance-parameter>
          <parameter name="mime_type" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="2202">A MIME type string (like 'image/png')</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_icon_theme"
              c:identifier="st_texture_cache_get_icon_theme">
        <source-position filename="src/st/st-texture-cache.h" line="186"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-texture-cache.c"
               line="2189">The texture cache's icon theme</doc>
          <type name="Gtk.IconTheme" c:type="GtkIconTheme*"/>
        </return-value>
        <parameters>
          <instance-parameter name="cache" transfer-ownership="none">
            <type name="TextureCache" c:type="StTextureCache*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="load"
              c:identifier="st_texture_cache_load"
              introspectable="0"
              throws="1">
        <doc xml:space="preserve"
             filename="src/st/st-texture-cache.c"
             line="882">Load an arbitrary texture, caching it.  The string chosen for @key
should be of the form "type-prefix:type-uuid".  For example,
"url:file:///usr/share/icons/hicolor/48x48/apps/firefox.png", or
"stock-icon:gtk-ok".</doc>
        <source-position filename="src/st/st-texture-cache.h" line="177"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/st/st-texture-cache.c"
               line="896">A newly-referenced handle to the texture</doc>
          <type name="Cogl.Texture" c:type="CoglTexture*"/>
        </return-value>
        <parameters>
          <instance-parameter name="cache" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="884">A #StTextureCache</doc>
            <type name="TextureCache" c:type="StTextureCache*"/>
          </instance-parameter>
          <parameter name="key" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="885">Arbitrary string used to refer to item</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="policy" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="886">Caching policy</doc>
            <type name="TextureCachePolicy" c:type="StTextureCachePolicy"/>
          </parameter>
          <parameter name="load" transfer-ownership="none" closure="3">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="887">Function to create the texture, if not already cached</doc>
            <type name="TextureCacheLoader" c:type="StTextureCacheLoader"/>
          </parameter>
          <parameter name="data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="888">User data passed to @load</doc>
            <type name="gpointer" c:type="void*"/>
          </parameter>
        </parameters>
      </method>
      <method name="load_file_async"
              c:identifier="st_texture_cache_load_file_async">
        <doc xml:space="preserve"
             filename="src/st/st-texture-cache.c"
             line="1504">Asynchronously load an image.   Initially, the returned texture will have a natural
size of zero.  At some later point, either the image will be loaded successfully
and at that point size will be negotiated, or upon an error, no image will be set.</doc>
        <source-position filename="src/st/st-texture-cache.h" line="115"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-texture-cache.c"
               line="1517">A new #ClutterActor with no image loaded initially.</doc>
          <type name="Clutter.Actor" c:type="ClutterActor*"/>
        </return-value>
        <parameters>
          <instance-parameter name="cache" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1506">The texture cache instance</doc>
            <type name="TextureCache" c:type="StTextureCache*"/>
          </instance-parameter>
          <parameter name="file" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1507">a #GFile of the image file from which to create a pixbuf</doc>
            <type name="Gio.File" c:type="GFile*"/>
          </parameter>
          <parameter name="available_width" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1508">available width for the image, can be -1 if not limited</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="available_height" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1509">available height for the image, can be -1 if not limited</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="paint_scale" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1510">scale factor of the display</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="resource_scale" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1511">Resource scale factor</doc>
            <type name="gfloat" c:type="gfloat"/>
          </parameter>
        </parameters>
      </method>
      <method name="load_file_simple"
              c:identifier="st_texture_cache_load_file_simple">
        <doc xml:space="preserve"
             filename="src/st/st-texture-cache.c"
             line="1780">Synchronously load an image into a texture.  The texture will be cached
indefinitely.  On error, this function returns an empty texture and prints a warning.</doc>
        <source-position filename="src/st/st-texture-cache.h" line="89"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-texture-cache.c"
               line="1788">A new #ClutterTexture</doc>
          <type name="Clutter.Actor" c:type="ClutterActor*"/>
        </return-value>
        <parameters>
          <instance-parameter name="cache" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1782">A #StTextureCache</doc>
            <type name="TextureCache" c:type="StTextureCache*"/>
          </instance-parameter>
          <parameter name="file_path" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1783">Filesystem path</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="load_file_to_cairo_surface"
              c:identifier="st_texture_cache_load_file_to_cairo_surface">
        <doc xml:space="preserve"
             filename="src/st/st-texture-cache.c"
             line="2138">This function synchronously loads the given file path
into a cairo surface.  On error, a warning is emitted
and %NULL is returned.</doc>
        <source-position filename="src/st/st-texture-cache.h" line="139"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/st/st-texture-cache.c"
               line="2147">a new #cairo_surface_t</doc>
          <type name="cairo.Surface" c:type="cairo_surface_t*"/>
        </return-value>
        <parameters>
          <instance-parameter name="cache" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="2140">A #StTextureCache</doc>
            <type name="TextureCache" c:type="StTextureCache*"/>
          </instance-parameter>
          <parameter name="file_path" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="2141">Path to a file in supported image format</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="load_file_to_cogl_texture"
              c:identifier="st_texture_cache_load_file_to_cogl_texture"
              introspectable="0">
        <doc xml:space="preserve"
             filename="src/st/st-texture-cache.c"
             line="2075">This function synchronously loads the given file path
into a COGL texture.  On error, a warning is emitted
and %NULL is returned.</doc>
        <source-position filename="src/st/st-texture-cache.h" line="132"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/st/st-texture-cache.c"
               line="2084">a new #CoglTexture</doc>
          <type name="Cogl.Texture" c:type="CoglTexture*"/>
        </return-value>
        <parameters>
          <instance-parameter name="cache" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="2077">A #StTextureCache</doc>
            <type name="TextureCache" c:type="StTextureCache*"/>
          </instance-parameter>
          <parameter name="file_path" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="2078">Path to a file in supported image format</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="load_from_raw"
              c:identifier="st_texture_cache_load_from_raw"
              throws="1">
        <doc xml:space="preserve"
             filename="src/st/st-texture-cache.c"
             line="1723">Creates (or retrieves from cache) an icon based on raw pixel data.</doc>
        <source-position filename="src/st/st-texture-cache.h" line="79"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-texture-cache.c"
               line="1736">a new #ClutterActor displaying a
pixbuf created from @data and the other parameters.</doc>
          <type name="Clutter.Actor" c:type="ClutterActor*"/>
        </return-value>
        <parameters>
          <instance-parameter name="cache" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1725">a #StTextureCache</doc>
            <type name="TextureCache" c:type="StTextureCache*"/>
          </instance-parameter>
          <parameter name="data" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1726">raw pixel data</doc>
            <array length="1" zero-terminated="0" c:type="const guchar*">
              <type name="guint8" c:type="guchar"/>
            </array>
          </parameter>
          <parameter name="len" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1727">the length of @data</doc>
            <type name="gsize" c:type="gsize"/>
          </parameter>
          <parameter name="has_alpha" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1728">whether @data includes an alpha channel</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
          <parameter name="width" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1729">width in pixels of @data</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="height" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1730">width in pixels of @data</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="rowstride" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1731">rowstride of @data</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="size" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1732">size of icon to return</doc>
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </method>
      <method name="load_gfile_to_cairo_surface"
              c:identifier="st_texture_cache_load_gfile_to_cairo_surface">
        <doc xml:space="preserve"
             filename="src/st/st-texture-cache.c"
             line="2101">This function synchronously loads the given file path
into a cairo surface.  On error, a warning is emitted
and %NULL is returned.</doc>
        <source-position filename="src/st/st-texture-cache.h" line="135"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/st/st-texture-cache.c"
               line="2112">a new #cairo_surface_t</doc>
          <type name="cairo.Surface" c:type="cairo_surface_t*"/>
        </return-value>
        <parameters>
          <instance-parameter name="cache" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="2103">A #StTextureCache</doc>
            <type name="TextureCache" c:type="StTextureCache*"/>
          </instance-parameter>
          <parameter name="file" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="2104">A #GFile in supported image format</doc>
            <type name="Gio.File" c:type="GFile*"/>
          </parameter>
          <parameter name="paint_scale" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="2105">Scale factor of the display</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="resource_scale" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="2106">Resource scale factor</doc>
            <type name="gfloat" c:type="gfloat"/>
          </parameter>
        </parameters>
      </method>
      <method name="load_gfile_to_cogl_texture"
              c:identifier="st_texture_cache_load_gfile_to_cogl_texture"
              introspectable="0">
        <doc xml:space="preserve"
             filename="src/st/st-texture-cache.c"
             line="2038">This function synchronously loads the given file path
into a COGL texture.  On error, a warning is emitted
and %NULL is returned.</doc>
        <source-position filename="src/st/st-texture-cache.h" line="127"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/st/st-texture-cache.c"
               line="2049">a new #CoglTexture</doc>
          <type name="Cogl.Texture" c:type="CoglTexture*"/>
        </return-value>
        <parameters>
          <instance-parameter name="cache" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="2040">A #StTextureCache</doc>
            <type name="TextureCache" c:type="StTextureCache*"/>
          </instance-parameter>
          <parameter name="file" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="2041">A #GFile in supported image format</doc>
            <type name="Gio.File" c:type="GFile*"/>
          </parameter>
          <parameter name="paint_scale" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="2042">Scale factor of the display</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="resource_scale" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="2043">Resource scale factor</doc>
            <type name="gfloat" c:type="gfloat"/>
          </parameter>
        </parameters>
      </method>
      <method name="load_gicon" c:identifier="st_texture_cache_load_gicon">
        <doc xml:space="preserve"
             filename="src/st/st-texture-cache.c"
             line="1093">This method returns a new #ClutterActor for a given #GIcon. If the
icon isn't loaded already, the texture will be filled
asynchronously.</doc>
        <source-position filename="src/st/st-texture-cache.h" line="104"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-texture-cache.c"
               line="1105">A new #ClutterActor for the icon, or an empty ClutterActor
if none was found.</doc>
          <type name="Clutter.Actor" c:type="ClutterActor*"/>
        </return-value>
        <parameters>
          <instance-parameter name="cache" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1095">The texture cache instance</doc>
            <type name="TextureCache" c:type="StTextureCache*"/>
          </instance-parameter>
          <parameter name="theme_node"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1096">The #StThemeNode to use for colors, or NULL
                           if the icon must not be recolored</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </parameter>
          <parameter name="icon" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1098">the #GIcon to load</doc>
            <type name="Gio.Icon" c:type="GIcon*"/>
          </parameter>
          <parameter name="size" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1099">Size of themed</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </method>
      <method name="load_gicon_with_scale"
              c:identifier="st_texture_cache_load_gicon_with_scale">
        <doc xml:space="preserve"
             filename="src/st/st-texture-cache.c"
             line="975">This method returns a new #ClutterActor for a given #GIcon. If the
icon isn't loaded already, the texture will be filled
asynchronously.</doc>
        <source-position filename="src/st/st-texture-cache.h" line="97"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-texture-cache.c"
               line="989">A new #ClutterActor for the icon, or %NULL if not found</doc>
          <type name="Clutter.Actor" c:type="ClutterActor*"/>
        </return-value>
        <parameters>
          <instance-parameter name="cache" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="977">The texture cache instance</doc>
            <type name="TextureCache" c:type="StTextureCache*"/>
          </instance-parameter>
          <parameter name="theme_node"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="978">The #StThemeNode to use for colors, or NULL
                           if the icon must not be recolored</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </parameter>
          <parameter name="icon" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="980">the #GIcon to load</doc>
            <type name="Gio.Icon" c:type="GIcon*"/>
          </parameter>
          <parameter name="size" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="981">Size of themed</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="paint_scale" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="982">Scale factor of display</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="resource_scale" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="983">Resource scale factor</doc>
            <type name="gfloat" c:type="gfloat"/>
          </parameter>
        </parameters>
      </method>
      <method name="load_icon_name"
              c:identifier="st_texture_cache_load_icon_name">
        <doc xml:space="preserve"
             filename="src/st/st-texture-cache.c"
             line="1825">Load a themed icon into a texture. See the #StIconType documentation
for an explanation of how @icon_type affects the returned icon. The
colors used for symbolic icons are derived from @theme_node.</doc>
        <source-position filename="src/st/st-texture-cache.h" line="109"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-texture-cache.c"
               line="1837">A new #ClutterTexture for the icon</doc>
          <type name="Clutter.Actor" c:type="ClutterActor*"/>
        </return-value>
        <parameters>
          <instance-parameter name="cache" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1827">The texture cache instance</doc>
            <type name="TextureCache" c:type="StTextureCache*"/>
          </instance-parameter>
          <parameter name="theme_node"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1828">a #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </parameter>
          <parameter name="name" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1829">Name of a themed icon</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="icon_type" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1830">the type of icon to load</doc>
            <type name="IconType" c:type="StIconType"/>
          </parameter>
          <parameter name="size" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1831">Size of themed</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </method>
      <method name="load_image_from_file_async"
              c:identifier="st_texture_cache_load_image_from_file_async">
        <doc xml:space="preserve"
             filename="src/st/st-texture-cache.c"
             line="1665">This function loads an image file into a clutter actor asynchronously.  This is
mostly useful for situations where you want to load an image asynchronously, but don't
want the actor back until it's fully loaded and sized (as opposed to load_uri_async,
which provides no callback function, and leaves size negotiation to its own devices.)

The image's aspect ratio is always maintained and if both width and height are &gt; 0
the image will never exceed these dimensions.</doc>
        <source-position filename="src/st/st-texture-cache.h" line="157"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-texture-cache.c"
               line="1682">A handle that can be used to verify the actor issued in the callback
is the expected one.</doc>
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="cache" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1667">A #StTextureCache</doc>
            <type name="TextureCache" c:type="StTextureCache*"/>
          </instance-parameter>
          <parameter name="path" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1668">Path to a filename</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="width" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1669">Width in pixels (or -1 to leave unconstrained)</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="height" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1670">Height in pixels (or -1 to leave unconstrained)</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     scope="async"
                     closure="4">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1671">Function called when the image is loaded (required)</doc>
            <type name="TextureCacheLoadImageCallback"
                  c:type="StTextureCacheLoadImageCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1672">Data to pass to the load callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="load_sliced_image"
              c:identifier="st_texture_cache_load_sliced_image">
        <doc xml:space="preserve"
             filename="src/st/st-texture-cache.c"
             line="1465">This function reads a single image file which contains multiple images internally.
The image file will be divided using @grid_width and @grid_height;
note that the dimensions of the image loaded from @path
should be a multiple of the specified grid dimensions.</doc>
        <source-position filename="src/st/st-texture-cache.h" line="68"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-texture-cache.c"
               line="1479">A new #ClutterActor</doc>
          <type name="Clutter.Actor" c:type="ClutterActor*"/>
        </return-value>
        <parameters>
          <instance-parameter name="cache" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1467">A #StTextureCache</doc>
            <type name="TextureCache" c:type="StTextureCache*"/>
          </instance-parameter>
          <parameter name="path" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1468">Path to a filename</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="grid_width" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1469">Width in pixels</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="grid_height" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1470">Height in pixels</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="load_callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="4">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1471">Function called when the image is loaded, or %NULL</doc>
            <type name="GLib.Func" c:type="GFunc"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1472">Data to pass to the load callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="load_sliced_image_file"
              c:identifier="st_texture_cache_load_sliced_image_file">
        <doc xml:space="preserve"
             filename="src/st/st-texture-cache.c"
             line="1404">This function reads a single image file which contains multiple images internally.
The image file will be divided using @grid_width and @grid_height;
note that the dimensions of the image loaded from @path
should be a multiple of the specified grid dimensions.</doc>
        <source-position filename="src/st/st-texture-cache.h" line="58"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-texture-cache.c"
               line="1419">A new #ClutterActor</doc>
          <type name="Clutter.Actor" c:type="ClutterActor*"/>
        </return-value>
        <parameters>
          <instance-parameter name="cache" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1406">A #StTextureCache</doc>
            <type name="TextureCache" c:type="StTextureCache*"/>
          </instance-parameter>
          <parameter name="file" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1407">A #GFile</doc>
            <type name="Gio.File" c:type="GFile*"/>
          </parameter>
          <parameter name="grid_width" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1408">Width in pixels</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="grid_height" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1409">Height in pixels</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="paint_scale" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1410">Scale factor of the display</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="resource_scale" transfer-ownership="none">
            <type name="gfloat" c:type="gfloat"/>
          </parameter>
          <parameter name="load_callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="6">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1411">Function called when the image is loaded, or %NULL</doc>
            <type name="GLib.Func" c:type="GFunc"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1412">Data to pass to the load callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="load_uri_async"
              c:identifier="st_texture_cache_load_uri_async">
        <doc xml:space="preserve"
             filename="src/st/st-texture-cache.c"
             line="1906">Asynchronously load an image.   Initially, the returned texture will have a natural
size of zero.  At some later point, either the image will be loaded successfully
and at that point size will be negotiated, or upon an error, no image will be set.</doc>
        <source-position filename="src/st/st-texture-cache.h" line="122"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-texture-cache.c"
               line="1917">A new #ClutterActor with no image loaded initially.</doc>
          <type name="Clutter.Actor" c:type="ClutterActor*"/>
        </return-value>
        <parameters>
          <instance-parameter name="cache" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1908">The texture cache instance</doc>
            <type name="TextureCache" c:type="StTextureCache*"/>
          </instance-parameter>
          <parameter name="uri" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1909">uri of the image file from which to create a pixbuf</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="available_width" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1910">available width for the image, can be -1 if not limited</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="available_height" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-texture-cache.c"
                 line="1911">available height for the image, can be -1 if not limited</doc>
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </method>
      <method name="rescan_icon_theme"
              c:identifier="st_texture_cache_rescan_icon_theme">
        <source-position filename="src/st/st-texture-cache.h" line="184"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="cache" transfer-ownership="none">
            <type name="TextureCache" c:type="StTextureCache*"/>
          </instance-parameter>
        </parameters>
      </method>
      <field name="parent">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <field name="priv">
        <type name="TextureCachePrivate" c:type="StTextureCachePrivate*"/>
      </field>
      <glib:signal name="icon-theme-changed" when="last">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="texture-file-changed" when="last">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="object" transfer-ownership="none">
            <type name="Gio.File"/>
          </parameter>
        </parameters>
      </glib:signal>
    </class>
    <record name="TextureCacheClass"
            c:type="StTextureCacheClass"
            glib:is-gtype-struct-for="TextureCache">
      <source-position filename="src/st/st-texture-cache.h" line="38"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
    </record>
    <callback name="TextureCacheLoadImageCallback"
              c:type="StTextureCacheLoadImageCallback">
      <doc xml:space="preserve"
           filename="src/st/st-texture-cache.h"
           line="142">Callback from st_texture_cache_load_image_from_file_async. The handle should match
the one returned by _load_image_from_file_async.</doc>
      <source-position filename="src/st/st-texture-cache.h" line="152"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="cache" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-texture-cache.h"
               line="144">a #StTextureCache</doc>
          <type name="TextureCache" c:type="StTextureCache*"/>
        </parameter>
        <parameter name="handle" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-texture-cache.h"
               line="145">the handle returned to the caller in the original call.</doc>
          <type name="guint" c:type="guint"/>
        </parameter>
        <parameter name="actor" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-texture-cache.h"
               line="146">the actor containing the loaded image</doc>
          <type name="Clutter.Actor" c:type="ClutterActor*"/>
        </parameter>
        <parameter name="user_data"
                   transfer-ownership="none"
                   nullable="1"
                   allow-none="1"
                   closure="3">
          <doc xml:space="preserve"
               filename="src/st/st-texture-cache.h"
               line="147">Callback data</doc>
          <type name="gpointer" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <callback name="TextureCacheLoader"
              c:type="StTextureCacheLoader"
              introspectable="0"
              throws="1">
      <doc xml:space="preserve"
           filename="src/st/st-texture-cache.h"
           line="164">See st_texture_cache_load().  Implementations should return a
texture handle for the given key, or set @error.</doc>
      <source-position filename="src/st/st-texture-cache.h" line="175"/>
      <return-value>
        <type name="Cogl.Texture" c:type="CoglTexture*"/>
      </return-value>
      <parameters>
        <parameter name="cache" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-texture-cache.h"
               line="166">a #StTextureCache</doc>
          <type name="TextureCache" c:type="StTextureCache*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-texture-cache.h"
               line="167">Unique identifier for this texture</doc>
          <type name="utf8" c:type="const char*"/>
        </parameter>
        <parameter name="data"
                   transfer-ownership="none"
                   nullable="1"
                   allow-none="1">
          <doc xml:space="preserve"
               filename="src/st/st-texture-cache.h"
               line="168">Callback user data</doc>
          <type name="gpointer" c:type="void*"/>
        </parameter>
      </parameters>
    </callback>
    <enumeration name="TextureCachePolicy"
                 glib:type-name="StTextureCachePolicy"
                 glib:get-type="st_texture_cache_policy_get_type"
                 c:type="StTextureCachePolicy">
      <member name="none"
              value="0"
              c:identifier="ST_TEXTURE_CACHE_POLICY_NONE"
              glib:nick="none"
              glib:name="ST_TEXTURE_CACHE_POLICY_NONE">
      </member>
      <member name="forever"
              value="1"
              c:identifier="ST_TEXTURE_CACHE_POLICY_FOREVER"
              glib:nick="forever"
              glib:name="ST_TEXTURE_CACHE_POLICY_FOREVER">
      </member>
    </enumeration>
    <record name="TextureCachePrivate"
            c:type="StTextureCachePrivate"
            disguised="1"
            opaque="1">
      <source-position filename="src/st/st-texture-cache.h" line="41"/>
    </record>
    <class name="Theme"
           c:symbol-prefix="theme"
           c:type="StTheme"
           parent="GObject.Object"
           glib:type-name="StTheme"
           glib:get-type="st_theme_get_type"
           glib:type-struct="ThemeClass">
      <source-position filename="src/st/st-theme.h" line="39"/>
      <constructor name="new" c:identifier="st_theme_new">
        <source-position filename="src/st/st-theme.h" line="50"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/st/st-theme.c"
               line="481">the newly created theme object</doc>
          <type name="Theme" c:type="StTheme*"/>
        </return-value>
        <parameters>
          <parameter name="application_stylesheet" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme.c"
                 line="474">The highest priority stylesheet, representing application-specific
  styling; this is associated with the CSS "author" stylesheet, may be %NULL</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="theme_stylesheet" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme.c"
                 line="476">The second priority stylesheet, representing theme-specific styling ;
  this is associated with the CSS "user" stylesheet, may be %NULL</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="default_stylesheet" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme.c"
                 line="478">The lowest priority stylesheet, representing global default styling;
  this is associated with the CSS "user agent" stylesheet, may be %NULL</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </constructor>
      <method name="get_custom_stylesheets"
              c:identifier="st_theme_get_custom_stylesheets">
        <source-position filename="src/st/st-theme.h" line="56"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/st/st-theme.c"
               line="298">the list of stylesheet filenames
         that were loaded with st_theme_load_stylesheet()</doc>
          <type name="GLib.SList" c:type="GSList*">
            <type name="utf8"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="theme" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme.c"
                 line="296">an #StTheme</doc>
            <type name="Theme" c:type="StTheme*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="load_stylesheet"
              c:identifier="st_theme_load_stylesheet"
              throws="1">
        <source-position filename="src/st/st-theme.h" line="54"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="theme" transfer-ownership="none">
            <type name="Theme" c:type="StTheme*"/>
          </instance-parameter>
          <parameter name="path" transfer-ownership="none">
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="unload_stylesheet"
              c:identifier="st_theme_unload_stylesheet">
        <source-position filename="src/st/st-theme.h" line="55"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="theme" transfer-ownership="none">
            <type name="Theme" c:type="StTheme*"/>
          </instance-parameter>
          <parameter name="path" transfer-ownership="none">
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <property name="application-stylesheet"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="src/st/st-theme.c"
             line="127">The highest priority stylesheet, representing application-specific
styling; this is associated with the CSS "author" stylesheet.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="default-stylesheet"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="src/st/st-theme.c"
             line="155">The lowest priority stylesheet, representing global default
styling; this is associated with the CSS "user agent" stylesheet.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="fallback-stylesheet"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="src/st/st-theme.c"
             line="169">Fallback stylesheet - non-cascading.  It is applied only if the user-selected stylesheets
fail to return any properties, and the StWidget has its "important" property set.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="theme-stylesheet"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="src/st/st-theme.c"
             line="141">The second priority stylesheet, representing theme-specific styling;
this is associated with the CSS "user" stylesheet.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <glib:signal name="custom-stylesheets-changed" when="last">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
    </class>
    <record name="ThemeClass"
            c:type="StThemeClass"
            disguised="1"
            opaque="1"
            glib:is-gtype-struct-for="Theme">
      <source-position filename="src/st/st-theme.h" line="39"/>
    </record>
    <class name="ThemeContext"
           c:symbol-prefix="theme_context"
           c:type="StThemeContext"
           parent="GObject.Object"
           glib:type-name="StThemeContext"
           glib:get-type="st_theme_context_get_type"
           glib:type-struct="ThemeContextClass">
      <source-position filename="src/st/st-theme-context.h" line="41"/>
      <constructor name="new" c:identifier="st_theme_context_new">
        <doc xml:space="preserve"
             filename="src/st/st-theme-context.c"
             line="214">Create a new theme context not associated with any #ClutterStage.
This can be useful in testing scenarios, or if using StThemeContext
with something other than #ClutterActor objects, but you generally
should use st_theme_context_get_for_stage() instead.</doc>
        <source-position filename="src/st/st-theme-context.h" line="52"/>
        <return-value transfer-ownership="full">
          <type name="ThemeContext" c:type="StThemeContext*"/>
        </return-value>
      </constructor>
      <function name="get_for_stage"
                c:identifier="st_theme_context_get_for_stage">
        <doc xml:space="preserve"
             filename="src/st/st-theme-context.c"
             line="295">Gets a singleton theme context associated with the stage.</doc>
        <source-position filename="src/st/st-theme-context.h" line="53"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-theme-context.c"
               line="301">the singleton theme context for the stage</doc>
          <type name="ThemeContext" c:type="StThemeContext*"/>
        </return-value>
        <parameters>
          <parameter name="stage" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-context.c"
                 line="297">a #ClutterStage</doc>
            <type name="Clutter.Stage" c:type="ClutterStage*"/>
          </parameter>
        </parameters>
      </function>
      <function name="get_scale_for_stage"
                c:identifier="st_theme_context_get_scale_for_stage">
        <source-position filename="src/st/st-theme-context.h" line="66"/>
        <return-value transfer-ownership="none">
          <type name="gint" c:type="gint"/>
        </return-value>
      </function>
      <method name="get_font" c:identifier="st_theme_context_get_font">
        <doc xml:space="preserve"
             filename="src/st/st-theme-context.c"
             line="395">Gets the default font for the theme context. See st_theme_context_set_font().</doc>
        <source-position filename="src/st/st-theme-context.h" line="61"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-theme-context.c"
               line="401">the default font for the theme context.</doc>
          <type name="Pango.FontDescription"
                c:type="const PangoFontDescription*"/>
        </return-value>
        <parameters>
          <instance-parameter name="context" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-context.c"
                 line="397">a #StThemeContext</doc>
            <type name="ThemeContext" c:type="StThemeContext*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_root_node"
              c:identifier="st_theme_context_get_root_node">
        <doc xml:space="preserve"
             filename="src/st/st-theme-context.c"
             line="411">Gets the root node of the tree of theme style nodes that associated with this
context. For the node tree associated with a stage, this node represents
styles applied to the stage itself.</doc>
        <source-position filename="src/st/st-theme-context.h" line="63"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-theme-context.c"
               line="419">the root node of the context's style tree</doc>
          <type name="ThemeNode" c:type="StThemeNode*"/>
        </return-value>
        <parameters>
          <instance-parameter name="context" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-context.c"
                 line="413">a #StThemeContext</doc>
            <type name="ThemeContext" c:type="StThemeContext*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_theme" c:identifier="st_theme_context_get_theme">
        <doc xml:space="preserve"
             filename="src/st/st-theme-context.c"
             line="352">Gets the default theme for the context. See st_theme_context_set_theme()</doc>
        <source-position filename="src/st/st-theme-context.h" line="57"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-theme-context.c"
               line="358">the default theme for the context</doc>
          <type name="Theme" c:type="StTheme*"/>
        </return-value>
        <parameters>
          <instance-parameter name="context" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-context.c"
                 line="354">a #StThemeContext</doc>
            <type name="ThemeContext" c:type="StThemeContext*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="intern_node" c:identifier="st_theme_context_intern_node">
        <doc xml:space="preserve"
             filename="src/st/st-theme-context.c"
             line="431">Return an existing node matching @node, or if that isn't possible,
@node itself.</doc>
        <source-position filename="src/st/st-theme-context.h" line="64"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-theme-context.c"
               line="439">a node with the same properties as @node</doc>
          <type name="ThemeNode" c:type="StThemeNode*"/>
        </return-value>
        <parameters>
          <instance-parameter name="context" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-context.c"
                 line="433">a #StThemeContext</doc>
            <type name="ThemeContext" c:type="StThemeContext*"/>
          </instance-parameter>
          <parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-context.c"
                 line="434">a #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_font" c:identifier="st_theme_context_set_font">
        <doc xml:space="preserve"
             filename="src/st/st-theme-context.c"
             line="368">Sets the default font for the theme context. This is the font that
is inherited by the root node of the tree of theme nodes. If the
font is not overridden, then this font will be used. If the font is
partially modified (for example, with 'font-size: 110%', then that
modification is based on this font.</doc>
        <source-position filename="src/st/st-theme-context.h" line="59"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="context" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-context.c"
                 line="370">a #StThemeContext</doc>
            <type name="ThemeContext" c:type="StThemeContext*"/>
          </instance-parameter>
          <parameter name="font" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-context.c"
                 line="371">the default font for theme context</doc>
            <type name="Pango.FontDescription"
                  c:type="const PangoFontDescription*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_theme" c:identifier="st_theme_context_set_theme">
        <doc xml:space="preserve"
             filename="src/st/st-theme-context.c"
             line="323">Sets the default set of theme stylesheets for the context. This theme will
be used for the root node and for nodes descending from it, unless some other
style is explicitely specified.</doc>
        <source-position filename="src/st/st-theme-context.h" line="55"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="context" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-context.c"
                 line="325">a #StThemeContext</doc>
            <type name="ThemeContext" c:type="StThemeContext*"/>
          </instance-parameter>
          <parameter name="theme" transfer-ownership="none">
            <type name="Theme" c:type="StTheme*"/>
          </parameter>
        </parameters>
      </method>
      <property name="scale-factor"
                writable="1"
                transfer-ownership="none"
                default-value="1">
        <doc xml:space="preserve"
             filename="src/st/st-theme-context.c"
             line="120">The scaling factor used or high dpi scaling.</doc>
        <type name="gint" c:type="gint"/>
      </property>
      <glib:signal name="changed" when="last">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
    </class>
    <record name="ThemeContextClass"
            c:type="StThemeContextClass"
            disguised="1"
            opaque="1"
            glib:is-gtype-struct-for="ThemeContext">
      <source-position filename="src/st/st-theme-context.h" line="41"/>
    </record>
    <class name="ThemeNode"
           c:symbol-prefix="theme_node"
           c:type="StThemeNode"
           parent="GObject.Object"
           glib:type-name="StThemeNode"
           glib:get-type="st_theme_node_get_type"
           glib:type-struct="ThemeNodeClass">
      <source-position filename="src/st/st-theme-node.h" line="53"/>
      <constructor name="new" c:identifier="st_theme_node_new">
        <doc xml:space="preserve"
             filename="src/st/st-theme-node.c"
             line="199">Creates a new #StThemeNode. Once created, a node is immutable. Of any
of the attributes of the node (like the @element_class) change the node
and its child nodes must be destroyed and recreated.</doc>
        <source-position filename="src/st/st-theme-node.h" line="106"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/st/st-theme-node.c"
               line="219">the theme node</doc>
          <type name="ThemeNode" c:type="StThemeNode*"/>
        </return-value>
        <parameters>
          <parameter name="context" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="201">the context representing global state for this themed tree</doc>
            <type name="ThemeContext" c:type="StThemeContext*"/>
          </parameter>
          <parameter name="parent_node"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="202">the parent node of this node</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </parameter>
          <parameter name="theme"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="203">a theme (stylesheet set) that overrides the
  theme inherited from the parent node</doc>
            <type name="Theme" c:type="StTheme*"/>
          </parameter>
          <parameter name="element_type" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="205">the type of the GObject represented by this node
 in the tree (corresponding to an element if we were theming an XML
 document. %G_TYPE_NONE means this style was created for the stage
actor and matches a selector element name of 'stage'.</doc>
            <type name="GType" c:type="GType"/>
          </parameter>
          <parameter name="element_id"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="209">the ID to match CSS rules against</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="element_class"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="210">a whitespace-separated list of classes
  to match CSS rules against</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="pseudo_class"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="212">a whitespace-separated list of pseudo-classes
  (like 'hover' or 'visited') to match CSS rules against</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="inline_style" transfer-ownership="none">
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="important" transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </constructor>
      <method name="adjust_for_height"
              c:identifier="st_theme_node_adjust_for_height">
        <doc xml:space="preserve"
             filename="src/st/st-theme-node.c"
             line="3701">Adjusts a "for height" passed to clutter_actor_get_preferred_width() to
account for borders and padding. This is a convenience function meant
to be called from a get_preferred_width() method of a #ClutterActor
subclass. The value after adjustment is the height available for the actor's
content.</doc>
        <source-position filename="src/st/st-theme-node.h" line="228"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="3703">a #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
          <parameter name="for_height"
                     direction="inout"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="3704">the "for height" to adjust</doc>
            <type name="gfloat" c:type="float*"/>
          </parameter>
        </parameters>
      </method>
      <method name="adjust_for_width"
              c:identifier="st_theme_node_adjust_for_width">
        <doc xml:space="preserve"
             filename="src/st/st-theme-node.c"
             line="3768">Adjusts a "for width" passed to clutter_actor_get_preferred_height() to
account for borders and padding. This is a convenience function meant
to be called from a get_preferred_height() method of a #ClutterActor
subclass. The value after adjustment is the width available for the actor's
content.</doc>
        <source-position filename="src/st/st-theme-node.h" line="233"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="3770">a #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
          <parameter name="for_width"
                     direction="inout"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="3771">the "for width" to adjust</doc>
            <type name="gfloat" c:type="float*"/>
          </parameter>
        </parameters>
      </method>
      <method name="adjust_preferred_height"
              c:identifier="st_theme_node_adjust_preferred_height">
        <doc xml:space="preserve"
             filename="src/st/st-theme-node.c"
             line="3793">Adjusts the minimum and natural height computed for an actor by
adding on the necessary space for borders and padding and taking
into account any minimum or maximum height. This is a convenience
function meant to be called from the get_preferred_height() method
of a #ClutterActor subclass</doc>
        <source-position filename="src/st/st-theme-node.h" line="235"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="3795">a #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
          <parameter name="min_height_p"
                     direction="inout"
                     caller-allocates="0"
                     transfer-ownership="full"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="3796">the minimum height to adjust</doc>
            <type name="gfloat" c:type="float*"/>
          </parameter>
          <parameter name="natural_height_p"
                     direction="inout"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="3797">the natural height to adjust</doc>
            <type name="gfloat" c:type="float*"/>
          </parameter>
        </parameters>
      </method>
      <method name="adjust_preferred_width"
              c:identifier="st_theme_node_adjust_preferred_width">
        <doc xml:space="preserve"
             filename="src/st/st-theme-node.c"
             line="3726">Adjusts the minimum and natural width computed for an actor by
adding on the necessary space for borders and padding and taking
into account any minimum or maximum width. This is a convenience
function meant to be called from the get_preferred_width() method
of a #ClutterActor subclass</doc>
        <source-position filename="src/st/st-theme-node.h" line="230"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="3728">a #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
          <parameter name="min_width_p"
                     direction="inout"
                     caller-allocates="0"
                     transfer-ownership="full"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="3729">the minimum width to adjust</doc>
            <type name="gfloat" c:type="float*"/>
          </parameter>
          <parameter name="natural_width_p"
                     direction="inout"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="3730">the natural width to adjust</doc>
            <type name="gfloat" c:type="float*"/>
          </parameter>
        </parameters>
      </method>
      <method name="copy_cached_paint_state"
              c:identifier="st_theme_node_copy_cached_paint_state">
        <doc xml:space="preserve"
             filename="src/st/st-theme-node-drawing.c"
             line="2146">Copy cached painting state from @other to @node. This function can be used to
optimize redrawing cached background images when the style on an element changess
in a way that doesn't affect background drawing. This function must only be called
if st_theme_node_paint_equal (node, other) returns %TRUE.</doc>
        <source-position filename="src/st/st-theme-node.h" line="266"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node-drawing.c"
                 line="2148">a #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
          <parameter name="other" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node-drawing.c"
                 line="2149">a different #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </parameter>
        </parameters>
      </method>
      <method name="equal" c:identifier="st_theme_node_equal">
        <doc xml:space="preserve"
             filename="src/st/st-theme-node.c"
             line="340">Compare two #StThemeNodes. Two nodes which compare equal will match
the same CSS rules and have the same style properties. However, two
nodes that have ended up with identical style properties do not
necessarily compare equal.
In detail, @node_a and @node_b are considered equal iff
&lt;itemizedlist&gt;
  &lt;listitem&gt;
    &lt;para&gt;they share the same #StTheme and #StThemeContext&lt;/para&gt;
  &lt;/listitem&gt;
  &lt;listitem&gt;
    &lt;para&gt;they have the same parent&lt;/para&gt;
  &lt;/listitem&gt;
  &lt;listitem&gt;
    &lt;para&gt;they have the same element type&lt;/para&gt;
  &lt;/listitem&gt;
  &lt;listitem&gt;
    &lt;para&gt;their id, class, pseudo-class and inline-style match&lt;/para&gt;
  &lt;/listitem&gt;
&lt;/itemizedlist&gt;</doc>
        <source-position filename="src/st/st-theme-node.h" line="120"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-theme-node.c"
               line="365">%TRUE if @node_a equals @node_b</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="node_a" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="342">first #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
          <parameter name="node_b" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="343">second #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </parameter>
        </parameters>
      </method>
      <method name="geometry_equal"
              c:identifier="st_theme_node_geometry_equal">
        <doc xml:space="preserve"
             filename="src/st/st-theme-node.c"
             line="3963">Tests if two theme nodes have the same borders and padding; this can be
used to optimize having to relayout when the style applied to a Clutter
actor changes colors without changing the geometry.</doc>
        <source-position filename="src/st/st-theme-node.h" line="252"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="3965">a #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
          <parameter name="other" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="3966">a different #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_background_bumpmap"
              c:identifier="st_theme_node_get_background_bumpmap">
        <doc xml:space="preserve"
             filename="src/st/st-theme-node.c"
             line="2173">Returns @node's background bumpmap.</doc>
        <source-position filename="src/st/st-theme-node.h" line="173"/>
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="2175">a #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_background_color"
              c:identifier="st_theme_node_get_background_color">
        <doc xml:space="preserve"
             filename="src/st/st-theme-node.c"
             line="2139">Returns @node's background color.</doc>
        <source-position filename="src/st/st-theme-node.h" line="163"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="2141">a #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
          <parameter name="color"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="2142">location to store the color</doc>
            <type name="Clutter.Color" c:type="ClutterColor*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_background_gradient"
              c:identifier="st_theme_node_get_background_gradient">
        <doc xml:space="preserve"
             filename="src/st/st-theme-node.c"
             line="2235">The @start and @end arguments will only be set if @type is not #ST_GRADIENT_NONE.</doc>
        <source-position filename="src/st/st-theme-node.h" line="167"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="2237">A #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
          <parameter name="type"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="2238">Type of gradient</doc>
            <type name="GradientType" c:type="StGradientType*"/>
          </parameter>
          <parameter name="start"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="2239">Color at start of gradient</doc>
            <type name="Clutter.Color" c:type="ClutterColor*"/>
          </parameter>
          <parameter name="end"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="2240">Color at end of gradient</doc>
            <type name="Clutter.Color" c:type="ClutterColor*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_background_image"
              c:identifier="st_theme_node_get_background_image">
        <doc xml:space="preserve"
             filename="src/st/st-theme-node.c"
             line="2157">Returns @node's background image.</doc>
        <source-position filename="src/st/st-theme-node.h" line="172"/>
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="2159">a #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_background_image_shadow"
              c:identifier="st_theme_node_get_background_image_shadow">
        <doc xml:space="preserve"
             filename="src/st/st-theme-node.c"
             line="3475">Gets the value for the -st-background-image-shadow style property</doc>
        <source-position filename="src/st/st-theme-node.h" line="223"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-theme-node.c"
               line="3481">the node's background image shadow, or %NULL
  if node has no such shadow</doc>
          <type name="Shadow" c:type="StShadow*"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="3477">a #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_background_paint_box"
              c:identifier="st_theme_node_get_background_paint_box">
        <doc xml:space="preserve"
             filename="src/st/st-theme-node.c"
             line="3879">Gets the box used to paint the actor's background, including the area
occupied by properties which paint outside the actor's assigned allocation.</doc>
        <source-position filename="src/st/st-theme-node.h" line="248"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="3881">a #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
          <parameter name="allocation" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="3882">the box allocated to a #ClutterActor</doc>
            <type name="Clutter.ActorBox" c:type="const ClutterActorBox*"/>
          </parameter>
          <parameter name="paint_box"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="3883">computed box occupied when painting the actor's background</doc>
            <type name="Clutter.ActorBox" c:type="ClutterActorBox*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_border_color"
              c:identifier="st_theme_node_get_border_color">
        <doc xml:space="preserve"
             filename="src/st/st-theme-node.c"
             line="2262">Returns the color of @node's border on @side</doc>
        <source-position filename="src/st/st-theme-node.h" line="179"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="2264">a #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
          <parameter name="side" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="2265">a #StSide</doc>
            <type name="Side" c:type="StSide"/>
          </parameter>
          <parameter name="color"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="2266">location to store the color</doc>
            <type name="Clutter.Color" c:type="ClutterColor*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_border_image"
              c:identifier="st_theme_node_get_border_image">
        <doc xml:space="preserve"
             filename="src/st/st-theme-node.c"
             line="3005">Gets the value for the border-image style property</doc>
        <source-position filename="src/st/st-theme-node.h" line="219"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-theme-node.c"
               line="3011">the border image, or %NULL
  if there is no border image.</doc>
          <type name="BorderImage" c:type="StBorderImage*"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="3007">a #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_border_radius"
              c:identifier="st_theme_node_get_border_radius">
        <source-position filename="src/st/st-theme-node.h" line="177"/>
        <return-value transfer-ownership="none">
          <type name="gint" c:type="int"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
          <parameter name="corner" transfer-ownership="none">
            <type name="Corner" c:type="StCorner"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_border_width"
              c:identifier="st_theme_node_get_border_width">
        <source-position filename="src/st/st-theme-node.h" line="175"/>
        <return-value transfer-ownership="none">
          <type name="gint" c:type="int"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
          <parameter name="side" transfer-ownership="none">
            <type name="Side" c:type="StSide"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_box_shadow"
              c:identifier="st_theme_node_get_box_shadow">
        <doc xml:space="preserve"
             filename="src/st/st-theme-node.c"
             line="3442">Gets the value for the box-shadow style property</doc>
        <source-position filename="src/st/st-theme-node.h" line="220"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-theme-node.c"
               line="3448">the node's shadow, or %NULL
  if node has no shadow</doc>
          <type name="Shadow" c:type="StShadow*"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="3444">a #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_color" c:identifier="st_theme_node_get_color">
        <doc xml:space="preserve"
             filename="src/st/st-theme-node.c"
             line="770">Generically looks up a property containing a single color value. When
specific getters (like st_theme_node_get_background_color()) exist, they
should be used instead. They are cached, so more efficient, and have
handling for shortcut properties and other details of CSS.

If @property_name is not found, a warning will be logged and a
default color returned.

See also st_theme_node_lookup_color(), which provides more options,
and lets you handle the case where the theme does not specify the
indicated color.</doc>
        <source-position filename="src/st/st-theme-node.h" line="151"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="772">a #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
          <parameter name="property_name" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="773">The name of the color property</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="color"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="774">location to store the color that
  was determined.</doc>
            <type name="Clutter.Color" c:type="ClutterColor*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_content_box"
              c:identifier="st_theme_node_get_content_box">
        <doc xml:space="preserve"
             filename="src/st/st-theme-node.c"
             line="3834">Gets the box within an actor's allocation that contents the content
of an actor (excluding borders and padding). This is a convenience function
meant to be used from the allocate() or paint() methods of a #ClutterActor
subclass.</doc>
        <source-position filename="src/st/st-theme-node.h" line="240"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="3836">a #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
          <parameter name="allocation" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="3837">the box allocated to a #ClutterAlctor</doc>
            <type name="Clutter.ActorBox" c:type="const ClutterActorBox*"/>
          </parameter>
          <parameter name="content_box"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="3838">computed box occupied by the actor's content</doc>
            <type name="Clutter.ActorBox" c:type="ClutterActorBox*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_double" c:identifier="st_theme_node_get_double">
        <doc xml:space="preserve"
             filename="src/st/st-theme-node.c"
             line="856">Generically looks up a property containing a single numeric value
 without units.

See also st_theme_node_lookup_double(), which provides more options,
and lets you handle the case where the theme does not specify the
indicated value.</doc>
        <source-position filename="src/st/st-theme-node.h" line="154"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-theme-node.c"
               line="868">the value found. If @property_name is not
 found, a warning will be logged and 0 will be returned.</doc>
          <type name="gdouble" c:type="gdouble"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="858">a #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
          <parameter name="property_name" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="859">The name of the numeric property</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_element_classes"
              c:identifier="st_theme_node_get_element_classes">
        <source-position filename="src/st/st-theme-node.h" line="125"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-theme-node.c"
               line="317">the element's classes</doc>
          <array c:type="GStrv">
            <type name="utf8"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_element_id"
              c:identifier="st_theme_node_get_element_id">
        <source-position filename="src/st/st-theme-node.h" line="124"/>
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_element_type"
              c:identifier="st_theme_node_get_element_type">
        <source-position filename="src/st/st-theme-node.h" line="123"/>
        <return-value transfer-ownership="none">
          <type name="GType" c:type="GType"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_font" c:identifier="st_theme_node_get_font">
        <source-position filename="src/st/st-theme-node.h" line="216"/>
        <return-value transfer-ownership="none">
          <type name="Pango.FontDescription"
                c:type="const PangoFontDescription*"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_font_features"
              c:identifier="st_theme_node_get_font_features">
        <source-position filename="src/st/st-theme-node.h" line="217"/>
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_foreground_color"
              c:identifier="st_theme_node_get_foreground_color">
        <doc xml:space="preserve"
             filename="src/st/st-theme-node.c"
             line="2189">Returns @node's foreground color.</doc>
        <source-position filename="src/st/st-theme-node.h" line="165"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="2191">a #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
          <parameter name="color"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="2192">location to store the color</doc>
            <type name="Clutter.Color" c:type="ClutterColor*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_height" c:identifier="st_theme_node_get_height">
        <source-position filename="src/st/st-theme-node.h" line="196"/>
        <return-value transfer-ownership="none">
          <type name="gint" c:type="int"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_horizontal_padding"
              c:identifier="st_theme_node_get_horizontal_padding">
        <doc xml:space="preserve"
             filename="src/st/st-theme-node.c"
             line="3154">Gets the total horizonal padding (left + right padding)</doc>
        <source-position filename="src/st/st-theme-node.h" line="190"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-theme-node.c"
               line="3160">the total horizonal padding
  in pixels</doc>
          <type name="gdouble" c:type="double"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="3156">a #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_icon_colors"
              c:identifier="st_theme_node_get_icon_colors">
        <doc xml:space="preserve"
             filename="src/st/st-theme-node.c"
             line="3563">Gets the colors that should be used for colorizing symbolic icons according
the style of this node.</doc>
        <source-position filename="src/st/st-theme-node.h" line="225"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-theme-node.c"
               line="3570">the icon colors to use for this theme node</doc>
          <type name="IconColors" c:type="StIconColors*"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="3565">a #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_icon_style"
              c:identifier="st_theme_node_get_icon_style">
        <source-position filename="src/st/st-theme-node.h" line="201"/>
        <return-value transfer-ownership="none">
          <type name="IconStyle" c:type="StIconStyle"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_length" c:identifier="st_theme_node_get_length">
        <doc xml:space="preserve"
             filename="src/st/st-theme-node.c"
             line="1132">Generically looks up a property containing a single length value. When
specific getters (like st_theme_node_get_border_width()) exist, they
should be used instead. They are cached, so more efficient, and have
handling for shortcut properties and other details of CSS.

Unlike st_theme_node_get_color() and st_theme_node_get_double(),
this does not print a warning if the property is not found; it just
returns 0.

See also st_theme_node_lookup_length(), which provides more options.</doc>
        <source-position filename="src/st/st-theme-node.h" line="156"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-theme-node.c"
               line="1148">the length, in pixels, or 0 if the property was not found.</doc>
          <type name="gdouble" c:type="gdouble"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="1134">a #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
          <parameter name="property_name" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="1135">The name of the length property</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_letter_spacing"
              c:identifier="st_theme_node_get_letter_spacing">
        <doc xml:space="preserve"
             filename="src/st/st-theme-node.c"
             line="2495">Gets the value for the letter-spacing style property, in pixels.</doc>
        <source-position filename="src/st/st-theme-node.h" line="209"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-theme-node.c"
               line="2501">the value of the letter-spacing property, if
  found, or zero if such property has not been found.</doc>
          <type name="gdouble" c:type="double"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="2497">a #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_margin" c:identifier="st_theme_node_get_margin">
        <source-position filename="src/st/st-theme-node.h" line="192"/>
        <return-value transfer-ownership="none">
          <type name="gdouble" c:type="double"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
          <parameter name="side" transfer-ownership="none">
            <type name="Side" c:type="StSide"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_max_height"
              c:identifier="st_theme_node_get_max_height">
        <source-position filename="src/st/st-theme-node.h" line="200"/>
        <return-value transfer-ownership="none">
          <type name="gint" c:type="int"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_max_width" c:identifier="st_theme_node_get_max_width">
        <source-position filename="src/st/st-theme-node.h" line="199"/>
        <return-value transfer-ownership="none">
          <type name="gint" c:type="int"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_min_height"
              c:identifier="st_theme_node_get_min_height">
        <source-position filename="src/st/st-theme-node.h" line="198"/>
        <return-value transfer-ownership="none">
          <type name="gint" c:type="int"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_min_width" c:identifier="st_theme_node_get_min_width">
        <source-position filename="src/st/st-theme-node.h" line="197"/>
        <return-value transfer-ownership="none">
          <type name="gint" c:type="int"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_outline_color"
              c:identifier="st_theme_node_get_outline_color">
        <doc xml:space="preserve"
             filename="src/st/st-theme-node.c"
             line="1767">Returns the color of @node's outline.</doc>
        <source-position filename="src/st/st-theme-node.h" line="184"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="1769">a #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
          <parameter name="color"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="1770">location to store the color</doc>
            <type name="Clutter.Color" c:type="ClutterColor*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_outline_width"
              c:identifier="st_theme_node_get_outline_width">
        <source-position filename="src/st/st-theme-node.h" line="183"/>
        <return-value transfer-ownership="none">
          <type name="gint" c:type="int"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_padding" c:identifier="st_theme_node_get_padding">
        <source-position filename="src/st/st-theme-node.h" line="187"/>
        <return-value transfer-ownership="none">
          <type name="gdouble" c:type="double"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
          <parameter name="side" transfer-ownership="none">
            <type name="Side" c:type="StSide"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_paint_box" c:identifier="st_theme_node_get_paint_box">
        <doc xml:space="preserve"
             filename="src/st/st-theme-node.c"
             line="3915">Gets the box used to paint the actor, including the area occupied
by properties which paint outside the actor's assigned allocation.
When painting @node to an offscreen buffer, this function can be
used to determine the necessary size of the buffer.</doc>
        <source-position filename="src/st/st-theme-node.h" line="244"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="3917">a #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
          <parameter name="allocation" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="3918">the box allocated to a #ClutterActor</doc>
            <type name="Clutter.ActorBox" c:type="const ClutterActorBox*"/>
          </parameter>
          <parameter name="paint_box"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="3919">computed box occupied when painting the actor</doc>
            <type name="Clutter.ActorBox" c:type="ClutterActorBox*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_parent" c:identifier="st_theme_node_get_parent">
        <doc xml:space="preserve"
             filename="src/st/st-theme-node.c"
             line="265">Gets the parent themed element node.</doc>
        <source-position filename="src/st/st-theme-node.h" line="116"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-theme-node.c"
               line="271">the parent #StThemeNode, or %NULL if this
 is the root node of the tree of theme elements.</doc>
          <type name="ThemeNode" c:type="StThemeNode*"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="267">a #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_pseudo_classes"
              c:identifier="st_theme_node_get_pseudo_classes">
        <source-position filename="src/st/st-theme-node.h" line="126"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-theme-node.c"
               line="330">the element's pseudo-classes</doc>
          <array c:type="GStrv">
            <type name="utf8"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_shadow" c:identifier="st_theme_node_get_shadow">
        <doc xml:space="preserve"
             filename="src/st/st-theme-node.c"
             line="3413">Generically looks up a property containing a set of shadow values. When
specific getters (like st_theme_node_get_box_shadow()) exist, they
should be used instead. They are cached, so more efficient, and have
handling for shortcut properties and other details of CSS.

Like st_theme_get_length(), this does not print a warning if the property is
not found; it just returns %NULL

See also st_theme_node_lookup_shadow (), which provides more options.</doc>
        <source-position filename="src/st/st-theme-node.h" line="158"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/st/st-theme-node.c"
               line="3428">the shadow, or %NULL if the property was not found.</doc>
          <type name="Shadow" c:type="StShadow*"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="3415">a #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
          <parameter name="property_name" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="3416">The name of the shadow property</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_text_align"
              c:identifier="st_theme_node_get_text_align">
        <source-position filename="src/st/st-theme-node.h" line="207"/>
        <return-value transfer-ownership="none">
          <type name="TextAlign" c:type="StTextAlign"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_text_decoration"
              c:identifier="st_theme_node_get_text_decoration">
        <source-position filename="src/st/st-theme-node.h" line="205"/>
        <return-value transfer-ownership="none">
          <type name="TextDecoration" c:type="StTextDecoration"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_text_shadow"
              c:identifier="st_theme_node_get_text_shadow">
        <doc xml:space="preserve"
             filename="src/st/st-theme-node.c"
             line="3516">Gets the value for the text-shadow style property</doc>
        <source-position filename="src/st/st-theme-node.h" line="221"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-theme-node.c"
               line="3522">the node's text-shadow, or %NULL
  if node has no text-shadow</doc>
          <type name="Shadow" c:type="StShadow*"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="3518">a #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_theme" c:identifier="st_theme_node_get_theme">
        <doc xml:space="preserve"
             filename="src/st/st-theme-node.c"
             line="282">Gets the theme stylesheet set that styles this node</doc>
        <source-position filename="src/st/st-theme-node.h" line="118"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-theme-node.c"
               line="288">the theme stylesheet set</doc>
          <type name="Theme" c:type="StTheme*"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="284">a #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_transition_duration"
              c:identifier="st_theme_node_get_transition_duration">
        <doc xml:space="preserve"
             filename="src/st/st-theme-node.c"
             line="2307">Get the value of the transition-duration property, which
specifies the transition time between the previous #StThemeNode
and @node.</doc>
        <source-position filename="src/st/st-theme-node.h" line="203"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-theme-node.c"
               line="2315">the node's transition duration in milliseconds</doc>
          <type name="gint" c:type="int"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="2309">an #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_vertical_padding"
              c:identifier="st_theme_node_get_vertical_padding">
        <doc xml:space="preserve"
             filename="src/st/st-theme-node.c"
             line="3173">Gets the total vertical padding (top + bottom padding)</doc>
        <source-position filename="src/st/st-theme-node.h" line="191"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-theme-node.c"
               line="3179">the total vertical padding
  in pixels</doc>
          <type name="gdouble" c:type="double"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="3175">a #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_width" c:identifier="st_theme_node_get_width">
        <source-position filename="src/st/st-theme-node.h" line="195"/>
        <return-value transfer-ownership="none">
          <type name="gint" c:type="int"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="hash" c:identifier="st_theme_node_hash">
        <source-position filename="src/st/st-theme-node.h" line="121"/>
        <return-value transfer-ownership="none">
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="lookup_color" c:identifier="st_theme_node_lookup_color">
        <doc xml:space="preserve"
             filename="src/st/st-theme-node.c"
             line="709">Generically looks up a property containing a single color value. When
specific getters (like st_theme_node_get_background_color()) exist, they
should be used instead. They are cached, so more efficient, and have
handling for shortcut properties and other details of CSS.

See also st_theme_node_get_color(), which provides a simpler API.</doc>
        <source-position filename="src/st/st-theme-node.h" line="133"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-theme-node.c"
               line="729">%TRUE if the property was found in the properties for this
 theme node (or in the properties of parent nodes when inheriting.)</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="711">a #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
          <parameter name="property_name" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="712">The name of the color property</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="inherit" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="713">if %TRUE, if a value is not found for the property on the
  node, then it will be looked up on the parent node, and then on the
  parent's parent, and so forth. Note that if the property has a
  value of 'inherit' it will be inherited even if %FALSE is passed
  in for @inherit; this only affects the default behavior for inheritance.</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
          <parameter name="color"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="718">location to store the color that was
  determined. If the property is not found, the value in this location
  will not be changed.</doc>
            <type name="Clutter.Color" c:type="ClutterColor*"/>
          </parameter>
        </parameters>
      </method>
      <method name="lookup_double" c:identifier="st_theme_node_lookup_double">
        <doc xml:space="preserve"
             filename="src/st/st-theme-node.c"
             line="801">Generically looks up a property containing a single numeric value
 without units.

See also st_theme_node_get_double(), which provides a simpler API.</doc>
        <source-position filename="src/st/st-theme-node.h" line="137"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-theme-node.c"
               line="819">%TRUE if the property was found in the properties for this
 theme node (or in the properties of parent nodes when inheriting.)</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="803">a #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
          <parameter name="property_name" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="804">The name of the numeric property</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="inherit" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="805">if %TRUE, if a value is not found for the property on the
  node, then it will be looked up on the parent node, and then on the
  parent's parent, and so forth. Note that if the property has a
  value of 'inherit' it will be inherited even if %FALSE is passed
  in for @inherit; this only affects the default behavior for inheritance.</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
          <parameter name="value"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="810">location to store the value that was determined.
  If the property is not found, the value in this location
  will not be changed.</doc>
            <type name="gdouble" c:type="double*"/>
          </parameter>
        </parameters>
      </method>
      <method name="lookup_length" c:identifier="st_theme_node_lookup_length">
        <doc xml:space="preserve"
             filename="src/st/st-theme-node.c"
             line="1089">Generically looks up a property containing a single length value. When
specific getters (like st_theme_node_get_border_width()) exist, they
should be used instead. They are cached, so more efficient, and have
handling for shortcut properties and other details of CSS.

See also st_theme_node_get_length(), which provides a simpler API.</doc>
        <source-position filename="src/st/st-theme-node.h" line="141"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-theme-node.c"
               line="1110">%TRUE if the property was found in the properties for this
 theme node (or in the properties of parent nodes when inheriting.)</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="1091">a #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
          <parameter name="property_name" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="1092">The name of the length property</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="inherit" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="1093">if %TRUE, if a value is not found for the property on the
  node, then it will be looked up on the parent node, and then on the
  parent's parent, and so forth. Note that if the property has a
  value of 'inherit' it will be inherited even if %FALSE is passed
  in for @inherit; this only affects the default behavior for inheritance.</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
          <parameter name="length"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="1098">location to store the length that was determined.
  If the property is not found, the value in this location
  will not be changed. The returned length is resolved
  to pixels.</doc>
            <type name="gdouble" c:type="gdouble*"/>
          </parameter>
        </parameters>
      </method>
      <method name="lookup_shadow" c:identifier="st_theme_node_lookup_shadow">
        <doc xml:space="preserve"
             filename="src/st/st-theme-node.c"
             line="3323">If the property is not found, the value in the shadow variable will not
be changed.

Generically looks up a property containing a set of shadow values. When
specific getters (like st_theme_node_get_box_shadow ()) exist, they
should be used instead. They are cached, so more efficient, and have
handling for shortcut properties and other details of CSS.

See also st_theme_node_get_shadow(), which provides a simpler API.</doc>
        <source-position filename="src/st/st-theme-node.h" line="145"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-theme-node.c"
               line="3344">%TRUE if the property was found in the properties for this
theme node (or in the properties of parent nodes when inheriting.), %FALSE
if the property was not found, or was explicitly set to 'none'.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="3325">a #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
          <parameter name="property_name" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="3326">The name of the shadow property</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="inherit" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="3327">if %TRUE, if a value is not found for the property on the
  node, then it will be looked up on the parent node, and then on the
  parent's parent, and so forth. Note that if the property has a
  value of 'inherit' it will be inherited even if %FALSE is passed
  in for @inherit; this only affects the default behavior for inheritance.</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
          <parameter name="shadow"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="3332">location to store the shadow</doc>
            <type name="Shadow" c:type="StShadow**"/>
          </parameter>
        </parameters>
      </method>
      <method name="paint"
              c:identifier="st_theme_node_paint"
              introspectable="0">
        <source-position filename="src/st/st-theme-node.h" line="259"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
          <parameter name="framebuffer" transfer-ownership="none">
            <type name="Cogl.Framebuffer" c:type="CoglFramebuffer*"/>
          </parameter>
          <parameter name="box" transfer-ownership="none">
            <type name="Clutter.ActorBox" c:type="const ClutterActorBox*"/>
          </parameter>
          <parameter name="paint_opacity" transfer-ownership="none">
            <type name="guint8" c:type="guint8"/>
          </parameter>
          <parameter name="background_blur_effect" transfer-ownership="none">
            <type name="BackgroundBlurEffect"
                  c:type="StBackgroundBlurEffect*"/>
          </parameter>
          <parameter name="background_bumpmap_effect"
                     transfer-ownership="none">
            <type name="BackgroundBumpmapEffect"
                  c:type="StBackgroundBumpmapEffect*"/>
          </parameter>
        </parameters>
      </method>
      <method name="paint_equal" c:identifier="st_theme_node_paint_equal">
        <doc xml:space="preserve"
             filename="src/st/st-theme-node.c"
             line="4006">Check if st_theme_node_paint() will paint identically for @node as it does
for @other. Note that in some cases this function may return %TRUE even
if there is no visible difference in the painting.</doc>
        <source-position filename="src/st/st-theme-node.h" line="254"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-theme-node.c"
               line="4015">%TRUE if the two theme nodes paint identically. %FALSE if the
  two nodes potentially paint differently.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="4008">a #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </instance-parameter>
          <parameter name="other" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-theme-node.c"
                 line="4009">a different #StThemeNode</doc>
            <type name="ThemeNode" c:type="StThemeNode*"/>
          </parameter>
        </parameters>
      </method>
    </class>
    <record name="ThemeNodeClass"
            c:type="StThemeNodeClass"
            disguised="1"
            opaque="1"
            glib:is-gtype-struct-for="ThemeNode">
      <source-position filename="src/st/st-theme-node.h" line="53"/>
    </record>
    <function-macro name="VIEWPORT"
                    c:identifier="ST_VIEWPORT"
                    introspectable="0">
      <source-position filename="src/st/st-viewport.h" line="33"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="VIEWPORT_CLASS"
                    c:identifier="ST_VIEWPORT_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-viewport.h" line="35"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="VIEWPORT_GET_CLASS"
                    c:identifier="ST_VIEWPORT_GET_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-viewport.h" line="37"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <class name="Viewport"
           c:symbol-prefix="viewport"
           c:type="StViewport"
           parent="Widget"
           glib:type-name="StViewport"
           glib:get-type="st_viewport_get_type"
           glib:type-struct="ViewportClass">
      <doc xml:space="preserve"
           filename="src/st/st-viewport.h"
           line="43">The #StViewport struct contains only private data</doc>
      <source-position filename="src/st/st-viewport.h" line="65"/>
      <implements name="Atk.ImplementorIface"/>
      <implements name="Clutter.Animatable"/>
      <implements name="Clutter.Container"/>
      <implements name="Clutter.Scriptable"/>
      <implements name="Scrollable"/>
      <field name="parent_instance" readable="0" private="1">
        <type name="Widget" c:type="StWidget"/>
      </field>
      <field name="priv" readable="0" private="1">
        <type name="ViewportPrivate" c:type="StViewportPrivate*"/>
      </field>
    </class>
    <record name="ViewportClass"
            c:type="StViewportClass"
            glib:is-gtype-struct-for="Viewport">
      <doc xml:space="preserve"
           filename="src/st/st-viewport.h"
           line="56">The #StViewportClass struct contains only private data</doc>
      <source-position filename="src/st/st-viewport.h" line="65"/>
      <field name="parent_class" readable="0" private="1">
        <type name="WidgetClass" c:type="StWidgetClass"/>
      </field>
    </record>
    <record name="ViewportPrivate"
            c:type="StViewportPrivate"
            disguised="1"
            opaque="1">
      <source-position filename="src/st/st-viewport.h" line="40"/>
    </record>
    <function-macro name="WIDGET" c:identifier="ST_WIDGET" introspectable="0">
      <source-position filename="src/st/st-widget.h" line="45"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="WIDGET_ACCESSIBLE"
                    c:identifier="ST_WIDGET_ACCESSIBLE"
                    introspectable="0">
      <source-position filename="src/st/st-widget-accessible.h" line="35"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="WIDGET_ACCESSIBLE_CLASS"
                    c:identifier="ST_WIDGET_ACCESSIBLE_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-widget-accessible.h" line="43"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="WIDGET_ACCESSIBLE_GET_CLASS"
                    c:identifier="ST_WIDGET_ACCESSIBLE_GET_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-widget-accessible.h" line="51"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="WIDGET_CLASS"
                    c:identifier="ST_WIDGET_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-widget.h" line="47"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="WIDGET_GET_CLASS"
                    c:identifier="ST_WIDGET_GET_CLASS"
                    introspectable="0">
      <source-position filename="src/st/st-widget.h" line="49"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <class name="Widget"
           c:symbol-prefix="widget"
           c:type="StWidget"
           parent="Clutter.Actor"
           glib:type-name="StWidget"
           glib:get-type="st_widget_get_type"
           glib:type-struct="WidgetClass">
      <doc xml:space="preserve"
           filename="src/st/st-widget.h"
           line="55">Base class for stylable actors. The contents of the #StWidget
structure are private and should only be accessed through the
public API.</doc>
      <source-position filename="src/st/st-widget.h" line="98"/>
      <implements name="Atk.ImplementorIface"/>
      <implements name="Clutter.Animatable"/>
      <implements name="Clutter.Container"/>
      <implements name="Clutter.Scriptable"/>
      <function name="get_default_direction"
                c:identifier="st_widget_get_default_direction">
        <source-position filename="src/st/st-widget.h" line="148"/>
        <return-value transfer-ownership="none">
          <type name="TextDirection" c:type="StTextDirection"/>
        </return-value>
      </function>
      <function name="set_default_direction"
                c:identifier="st_widget_set_default_direction">
        <source-position filename="src/st/st-widget.h" line="149"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="dir" transfer-ownership="none">
            <type name="TextDirection" c:type="StTextDirection"/>
          </parameter>
        </parameters>
      </function>
      <virtual-method name="get_focus_chain" invoker="get_focus_chain">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="2988">Gets a list of the focusable children of @widget, in "Tab"
order. By default, this returns all visible
(as in clutter_actor_is_visible()) children of @widget.</doc>
        <source-position filename="src/st/st-widget.h" line="97"/>
        <return-value transfer-ownership="container">
          <doc xml:space="preserve"
               filename="src/st/st-widget.c"
               line="2996">
  @widget's focusable children</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="Clutter.Actor"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="2990">An #StWidget</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="navigate_focus">
        <source-position filename="src/st/st-widget.h" line="92"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.h"
                 line="88">the "top level" container</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
          <parameter name="from"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.h"
                 line="89">the actor that the focus is coming from</doc>
            <type name="Clutter.Actor" c:type="ClutterActor*"/>
          </parameter>
          <parameter name="direction" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.h"
                 line="90">the direction focus is moving in</doc>
            <type name="Gtk.DirectionType" c:type="GtkDirectionType"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="popup_menu" invoker="popup_menu">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="1931">Asks the widget to pop-up a context menu.</doc>
        <source-position filename="src/st/st-widget.h" line="82"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1933">A #StWidget</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="style_changed" invoker="style_changed">
        <source-position filename="src/st/st-widget.h" line="81"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <method name="add_accessible_state"
              c:identifier="st_widget_add_accessible_state">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="2529">This method adds @state as one of the accessible states for
@widget. The list of states of a widget describes the current state
of user interface element @widget and is provided so that assistive
technologies know how to present @widget to the user.

Usually you will have no need to add accessible states for an
object, as the accessible object can extract most of the states
from the object itself (ie: a #StButton knows when it is pressed).
This method is only required when one cannot extract the
information automatically from the object itself (i.e.: a generic
container used as a toggle menu item will not automatically include
the toggled state).</doc>
        <source-position filename="src/st/st-widget.h" line="192"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="2531">A #StWidget</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
          <parameter name="state" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="2532">#AtkStateType state to add</doc>
            <type name="Atk.StateType" c:type="AtkStateType"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_style_class_name"
              c:identifier="st_widget_add_style_class_name">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="1184">Adds @style_class to @actor's style class name list, if it is not
already present.</doc>
        <source-position filename="src/st/st-widget.h" line="117"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="actor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1186">a #StWidget</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
          <parameter name="style_class" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1187">a style class name string</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_style_pseudo_class"
              c:identifier="st_widget_add_style_pseudo_class">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="1349">Adds @pseudo_class to @actor's pseudo class list, if it is not
already present.</doc>
        <source-position filename="src/st/st-widget.h" line="107"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="actor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1351">a #StWidget</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
          <parameter name="pseudo_class" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1352">a pseudo class string</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="change_style_pseudo_class"
              c:identifier="st_widget_change_style_pseudo_class">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="1327">Adds @pseudo_class to @actor's pseudo class list if @add is true,
removes if @add is false.</doc>
        <source-position filename="src/st/st-widget.h" line="104"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="actor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1329">a #StWidget</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
          <parameter name="pseudo_class" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1330">a pseudo class string</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="add" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1331">whether to add or remove pseudo class</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="destroy_children"
              c:identifier="st_widget_destroy_children"
              deprecated="1"
              deprecated-version="3.0">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="3009">Destroys all child actors from @widget.</doc>
        <doc-deprecated xml:space="preserve">Use clutter_actor_destroy_all_children instead</doc-deprecated>
        <source-position filename="src/st/st-widget.h" line="180"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="3011">An #StWidget</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="ensure_style" c:identifier="st_widget_ensure_style">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="1700">Ensures that @widget has read its style information.</doc>
        <source-position filename="src/st/st-widget.h" line="146"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1702">A #StWidget</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_accessible_name"
              c:identifier="st_widget_get_accessible_name"
              glib:get-property="accessible-name">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="2444">Gets the accessible name for this widget. See
st_widget_set_accessible_name() for more information.</doc>
        <source-position filename="src/st/st-widget.h" line="198"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-widget.c"
               line="2451">a character string representing the accessible name
of the widget.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="2446">widget to get the accessible name for</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_accessible_role"
              c:identifier="st_widget_get_accessible_role"
              glib:get-property="accessible-role">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="2495">Gets the #AtkRole for this widget. See
st_widget_set_accessible_role() for more information.</doc>
        <source-position filename="src/st/st-widget.h" line="191"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-widget.c"
               line="2502">accessible #AtkRole for this widget</doc>
          <type name="Atk.Role" c:type="AtkRole"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="2497">widget to get the accessible role for</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_can_focus"
              c:identifier="st_widget_get_can_focus"
              glib:get-property="can-focus">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="1915">Returns the current value of the can-focus property. See
st_widget_set_can_focus() for more information.</doc>
        <source-position filename="src/st/st-widget.h" line="157"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-widget.c"
               line="1922">current value of can-focus on @widget</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1917">A #StWidget</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_direction" c:identifier="st_widget_get_direction">
        <source-position filename="src/st/st-widget.h" line="151"/>
        <return-value transfer-ownership="none">
          <type name="TextDirection" c:type="StTextDirection"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_focus_chain" c:identifier="st_widget_get_focus_chain">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="2988">Gets a list of the focusable children of @widget, in "Tab"
order. By default, this returns all visible
(as in clutter_actor_is_visible()) children of @widget.</doc>
        <source-position filename="src/st/st-widget.h" line="172"/>
        <return-value transfer-ownership="container">
          <doc xml:space="preserve"
               filename="src/st/st-widget.c"
               line="2996">
  @widget's focusable children</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="Clutter.Actor"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="2990">An #StWidget</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_hover"
              c:identifier="st_widget_get_hover"
              glib:get-property="hover">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="1872">If #StWidget:track-hover is set, this returns whether the pointer
is currently over the widget.</doc>
        <source-position filename="src/st/st-widget.h" line="143"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-widget.c"
               line="1879">current value of hover on @widget</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1874">A #StWidget</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_important"
              c:identifier="st_widget_get_important"
              glib:get-property="important">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="1472">Returns if the @actor is flagged set as important</doc>
        <source-position filename="src/st/st-widget.h" line="131"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="actor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1474">a #StWidget</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_label_actor"
              c:identifier="st_widget_get_label_actor"
              glib:get-property="label-actor">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="2370">Gets the label that identifies @widget if it is defined</doc>
        <source-position filename="src/st/st-widget.h" line="163"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-widget.c"
               line="2376">the label that identifies the widget</doc>
          <type name="Clutter.Actor" c:type="ClutterActor*"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="2372">a #StWidget</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_style"
              c:identifier="st_widget_get_style"
              glib:get-property="style">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="1422">Get the current inline style string. See st_widget_set_style().</doc>
        <source-position filename="src/st/st-widget.h" line="127"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-widget.c"
               line="1428">The inline style string, or %NULL. The string is owned by the
#StWidget and should not be modified or freed.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="actor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1424">a #StWidget</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_style_class_name"
              c:identifier="st_widget_get_style_class_name">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="1228">Get the current style class name</doc>
        <source-position filename="src/st/st-widget.h" line="121"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-widget.c"
               line="1234">the class name string. The string is owned by the #StWidget and
should not be modified or freed.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="actor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1230">a #StWidget</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_style_pseudo_class"
              c:identifier="st_widget_get_style_pseudo_class">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="1264">Get the current style pseudo class list.

Note that an actor can have multiple pseudo classes; if you just
want to test for the presence of a specific pseudo class, use
st_widget_has_style_pseudo_class().</doc>
        <source-position filename="src/st/st-widget.h" line="111"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-widget.c"
               line="1274">the pseudo class list string. The string is owned by the
#StWidget and should not be modified or freed.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="actor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1266">a #StWidget</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_theme"
              c:identifier="st_widget_get_theme"
              glib:get-property="theme">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="1052">Gets the overriding theme set on the actor. See st_widget_set_theme()</doc>
        <source-position filename="src/st/st-widget.h" line="135"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-widget.c"
               line="1058">the overriding theme, or %NULL</doc>
          <type name="Theme" c:type="StTheme*"/>
        </return-value>
        <parameters>
          <instance-parameter name="actor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1054">a #StWidget</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_theme_node" c:identifier="st_widget_get_theme_node">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="541">Gets the theme node holding style information for the widget.
The theme node is used to access standard and custom CSS
properties of the widget.

Note: this should only be called on a widget that has been
added to the stage</doc>
        <source-position filename="src/st/st-widget.h" line="169"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-widget.c"
               line="552">the theme node for the widget.
  This is owned by the widget. When attributes of the widget
  or the environment that affect the styling change (for example
  the style_class property of the widget), it will be recreated,
  and the ::style-changed signal will be emitted on the widget.</doc>
          <type name="ThemeNode" c:type="StThemeNode*"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="543">a #StWidget</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_track_hover"
              c:identifier="st_widget_get_track_hover"
              glib:get-property="track-hover">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="1797">Returns the current value of the track-hover property. See
st_widget_set_track_hover() for more information.</doc>
        <source-position filename="src/st/st-widget.h" line="139"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-widget.c"
               line="1804">current value of track-hover on @widget</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1799">A #StWidget</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="has_style_class_name"
              c:identifier="st_widget_has_style_class_name">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="1245">Tests if @actor's style class list includes @style_class.</doc>
        <source-position filename="src/st/st-widget.h" line="122"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-widget.c"
               line="1252">whether or not @actor's style class list includes
@style_class.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="actor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1247">a #StWidget</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
          <parameter name="style_class" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1248">a style class string</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="has_style_pseudo_class"
              c:identifier="st_widget_has_style_pseudo_class">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="1285">Tests if @actor's pseudo class list includes @pseudo_class.</doc>
        <source-position filename="src/st/st-widget.h" line="112"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-widget.c"
               line="1292">whether or not @actor's pseudo class list includes
@pseudo_class.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="actor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1287">a #StWidget</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
          <parameter name="pseudo_class" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1288">a pseudo class string</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="move_before" c:identifier="st_widget_move_before">
        <source-position filename="src/st/st-widget.h" line="184"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
          <parameter name="actor" transfer-ownership="none">
            <type name="Clutter.Actor" c:type="ClutterActor*"/>
          </parameter>
          <parameter name="sibling" transfer-ownership="none">
            <type name="Clutter.Actor" c:type="ClutterActor*"/>
          </parameter>
        </parameters>
      </method>
      <method name="move_child" c:identifier="st_widget_move_child">
        <source-position filename="src/st/st-widget.h" line="181"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
          <parameter name="actor" transfer-ownership="none">
            <type name="Clutter.Actor" c:type="ClutterActor*"/>
          </parameter>
          <parameter name="pos" transfer-ownership="none">
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </method>
      <method name="navigate_focus" c:identifier="st_widget_navigate_focus">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="2223">Tries to update the keyboard focus within @widget in response to a
keyboard event.

If @from is a descendant of @widget, this attempts to move the
keyboard focus to the next descendant of @widget (in the order
implied by @direction) that has the #StWidget:can-focus property
set. If @from is %NULL, or outside of @widget, this attempts to
focus either @widget itself, or its first descendant in the order
implied by @direction.

If a container type is marked #StWidget:can-focus, the expected
behavior is that it will only take up a single slot on the focus
chain as a whole, rather than allowing navigation between its child
actors (or having a distinction between itself being focused and
one of its children being focused).

Some widget classes might have slightly different behavior from the
above, where that would make more sense.

If @wrap_around is %TRUE and @from is a child of @widget, but the
widget has no further children that can accept the focus in the
given direction, then st_widget_navigate_focus() will try a second
time, using a %NULL @from, which should cause it to reset the focus
to the first available widget in the given direction.</doc>
        <source-position filename="src/st/st-widget.h" line="158"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-widget.c"
               line="2255">%TRUE if clutter_actor_grab_key_focus() has been
called on an actor. %FALSE if not.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="2225">the "top level" container</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
          <parameter name="from"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="2226">the actor that the focus is coming from</doc>
            <type name="Clutter.Actor" c:type="ClutterActor*"/>
          </parameter>
          <parameter name="direction" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="2227">the direction focus is moving in</doc>
            <type name="Gtk.DirectionType" c:type="GtkDirectionType"/>
          </parameter>
          <parameter name="wrap_around" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="2228">whether focus should wrap around</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="paint_background"
              c:identifier="st_widget_paint_background">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="374">Paint the background of the widget. This is meant to be called by
subclasses of StWidget that need to paint the background without
painting children.</doc>
        <source-position filename="src/st/st-widget.h" line="173"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="376">The #StWidget</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
          <parameter name="paint_context" transfer-ownership="none">
            <type name="Clutter.PaintContext" c:type="ClutterPaintContext*"/>
          </parameter>
        </parameters>
      </method>
      <method name="peek_theme_node" c:identifier="st_widget_peek_theme_node">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="629">Returns the theme node for the widget if it has already been
computed, %NULL if the widget hasn't been added to a  stage or the theme
node hasn't been computed. If %NULL is returned, then ::style-changed
will be reliably emitted before the widget is allocated or painted.</doc>
        <source-position filename="src/st/st-widget.h" line="170"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-widget.c"
               line="638">the theme node for the widget.
  This is owned by the widget. When attributes of the widget
  or the environment that affect the styling change (for example
  the style_class property of the widget), it will be recreated,
  and the ::style-changed signal will be emitted on the widget.</doc>
          <type name="ThemeNode" c:type="StThemeNode*"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="631">a #StWidget</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="popup_menu" c:identifier="st_widget_popup_menu">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="1931">Asks the widget to pop-up a context menu.</doc>
        <source-position filename="src/st/st-widget.h" line="144"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1933">A #StWidget</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="remove_accessible_state"
              c:identifier="st_widget_remove_accessible_state">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="2558">This method removes @state as on of the accessible states for
@widget. See st_widget_add_accessible_state() for more information.</doc>
        <source-position filename="src/st/st-widget.h" line="194"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="2560">A #StWidget</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
          <parameter name="state" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="2561">#AtkState state to remove</doc>
            <type name="Atk.StateType" c:type="AtkStateType"/>
          </parameter>
        </parameters>
      </method>
      <method name="remove_style_class_name"
              c:identifier="st_widget_remove_style_class_name">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="1206">Removes @style_class from @actor's style class name, if it is
present.</doc>
        <source-position filename="src/st/st-widget.h" line="119"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="actor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1208">a #StWidget</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
          <parameter name="style_class" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1209">a style class name string</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="remove_style_pseudo_class"
              c:identifier="st_widget_remove_style_pseudo_class">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="1371">Removes @pseudo_class from @actor's pseudo class, if it is present.</doc>
        <source-position filename="src/st/st-widget.h" line="109"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="actor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1373">a #StWidget</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
          <parameter name="pseudo_class" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1374">a pseudo class string</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_accessible" c:identifier="st_widget_set_accessible">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="2652">This method allows to set a customly created accessible object to
this widget. For example if you define a new subclass of
#StWidgetAccessible at the javascript code.

NULL is a valid value for @accessible. That contemplates the
hypothetical case of not needing anymore a custom accessible object
for the widget. Next call of st_widget_get_accessible() would
create and return a default accessible.

It assumes that the call to atk_object_initialize that bound the
gobject with the custom accessible object was already called, so
not a responsibility of this method.</doc>
        <source-position filename="src/st/st-widget.h" line="200"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="2654">A #StWidget</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
          <parameter name="accessible" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="2655">an accessible (#AtkObject)</doc>
            <type name="Atk.Object" c:type="AtkObject*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_accessible_name"
              c:identifier="st_widget_set_accessible_name"
              glib:set-property="accessible-name">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="2416">This method sets @name as the accessible name for @widget.

Usually you will have no need to set the accessible name for an
object, as usually there is a label for most of the interface
elements. So in general it is better to just use
@st_widget_set_label_actor. This method is only required when you
need to set an accessible name and there is no available label
object.</doc>
        <source-position filename="src/st/st-widget.h" line="196"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="2418">widget to set the accessible name for</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
          <parameter name="name"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="2419">a character string to be set as the accessible name</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_accessible_role"
              c:identifier="st_widget_set_accessible_role"
              glib:set-property="accessible-role">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="2462">This method sets @role as the accessible role for @widget. This
role describes what kind of user interface element @widget is and
is provided so that assistive technologies know how to present
@widget to the user.

Usually you will have no need to set the accessible role for an
object, as this information is extracted from the context of the
object (ie: a #StButton has by default a push button role). This
method is only required when you need to redefine the role
currently associated with the widget, for instance if it is being
used in an unusual way (ie: a #StButton used as a togglebutton), or
if a generic object is used directly (ie: a container as a menu
item).

If @role is #ATK_ROLE_INVALID, the role will not be changed
and the accessible's default role will be used instead.</doc>
        <source-position filename="src/st/st-widget.h" line="189"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="2464">widget to set the accessible role for</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
          <parameter name="role" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="2465">The role to use</doc>
            <type name="Atk.Role" c:type="AtkRole"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_can_focus"
              c:identifier="st_widget_set_can_focus"
              glib:set-property="can-focus">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="1889">Marks @widget as being able to receive keyboard focus via
keyboard navigation.</doc>
        <source-position filename="src/st/st-widget.h" line="155"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1891">A #StWidget</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
          <parameter name="can_focus" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1892">%TRUE if the widget can receive keyboard focus
  via keyboard navigation</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_direction" c:identifier="st_widget_set_direction">
        <source-position filename="src/st/st-widget.h" line="152"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
          <parameter name="dir" transfer-ownership="none">
            <type name="TextDirection" c:type="StTextDirection"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_hover"
              c:identifier="st_widget_set_hover"
              glib:set-property="hover">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="1814">Sets @widget's hover property and adds or removes "hover" from its
pseudo class accordingly

If you have set #StWidget:track-hover, you should not need to call
this directly. You can call st_widget_sync_hover() if the hover
state might be out of sync due to another actor's pointer grab.</doc>
        <source-position filename="src/st/st-widget.h" line="140"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1816">A #StWidget</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
          <parameter name="hover" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1817">whether the pointer is hovering over the widget</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_important"
              c:identifier="st_widget_set_important"
              glib:set-property="important">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="1439">When an actor is set to important, and the active theme does not
account for it, a fallback lookup is made to the default cinnamon theme
which (presumably) will always have support for all stock elements
of the desktop.

This property is inherited by the actor's children.</doc>
        <source-position filename="src/st/st-widget.h" line="129"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="actor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1441">a #StWidget</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
          <parameter name="important" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1442">whether the actor is to be considered important.</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_label_actor"
              c:identifier="st_widget_set_label_actor"
              glib:set-property="label-actor">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="2386">Sets @label as the #ClutterActor that identifies (labels)
@widget. @label can be %NULL to indicate that @widget is not
labelled any more</doc>
        <source-position filename="src/st/st-widget.h" line="164"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="2388">a #StWidget</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
          <parameter name="label"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="2389">a #ClutterActor</doc>
            <type name="Clutter.Actor" c:type="ClutterActor*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_style"
              c:identifier="st_widget_set_style"
              glib:set-property="style">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="1392">Set the inline style string for this widget. The inline style string is an
optional ';'-separated list of CSS properties that override the style as
determined from the stylesheets of the current theme.</doc>
        <source-position filename="src/st/st-widget.h" line="125"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="actor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1394">a #StWidget</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
          <parameter name="style"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1395">a inline style string, or %NULL</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_style_class_name"
              c:identifier="st_widget_set_style_class_name">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="1161">Set the style class name list. @style_class_list can either be
%NULL, for no classes, or a space-separated list of style class
names. See also st_widget_add_style_class_name() and
st_widget_remove_style_class_name().</doc>
        <source-position filename="src/st/st-widget.h" line="115"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="actor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1163">a #StWidget</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
          <parameter name="style_class_list"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1164">a new style class list string</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_style_pseudo_class"
              c:identifier="st_widget_set_style_pseudo_class">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="1304">Set the style pseudo class list. @pseudo_class_list can either be
%NULL, for no classes, or a space-separated list of pseudo class
names. See also st_widget_add_style_pseudo_class() and
st_widget_remove_style_pseudo_class().</doc>
        <source-position filename="src/st/st-widget.h" line="102"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="actor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1306">a #StWidget</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
          <parameter name="pseudo_class_list"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1307">a new pseudo class list string</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_theme"
              c:identifier="st_widget_set_theme"
              glib:set-property="theme">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="1022">Overrides the theme that would be inherited from the actor's parent
or the stage with an entirely new theme (set of stylesheets).</doc>
        <source-position filename="src/st/st-widget.h" line="133"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="actor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1024">a #StWidget</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
          <parameter name="theme" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1025">a new style class string</doc>
            <type name="Theme" c:type="StTheme*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_track_hover"
              c:identifier="st_widget_set_track_hover"
              glib:set-property="track-hover">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="1757">Enables hover tracking on the #StWidget.

If hover tracking is enabled, and the widget is visible and
reactive, then @widget's #StWidget:hover property will be updated
automatically to reflect whether the pointer is in @widget (or one
of its children), and @widget's #StWidget:pseudo-class will have
the "hover" class added and removed from it accordingly.

Note that currently it is not possible to correctly track the hover
state when another actor has a pointer grab. You can use
st_widget_sync_hover() to update the property manually in this
case.</doc>
        <source-position filename="src/st/st-widget.h" line="137"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1759">A #StWidget</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
          <parameter name="track_hover" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1760">%TRUE if the widget should track the pointer hover state</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="style_changed" c:identifier="st_widget_style_changed">
        <source-position filename="src/st/st-widget.h" line="168"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="sync_hover" c:identifier="st_widget_sync_hover">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="1847">Sets @widget's hover state according to the current pointer
position. This can be used to ensure that it is correct after
(or during) a pointer grab.</doc>
        <source-position filename="src/st/st-widget.h" line="142"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="widget" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="1849">A #StWidget</doc>
            <type name="Widget" c:type="StWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <property name="accessible-name"
                writable="1"
                transfer-ownership="none"
                setter="set_accessible_name"
                getter="get_accessible_name"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="978">Object instance's name for assistive technology access.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="accessible-role"
                writable="1"
                transfer-ownership="none"
                setter="set_accessible_role"
                getter="get_accessible_role"
                default-value="ATK_ROLE_INVALID">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="964">The accessible role of this object</doc>
        <type name="Atk.Role"/>
      </property>
      <property name="can-focus"
                writable="1"
                transfer-ownership="none"
                setter="set_can_focus"
                getter="get_can_focus"
                default-value="FALSE">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="923">Whether or not the widget can be focused via keyboard navigation.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="hover"
                writable="1"
                transfer-ownership="none"
                setter="set_hover"
                getter="get_hover"
                default-value="FALSE">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="907">Whether or not the pointer is currently hovering over the widget. This is
only tracked automatically if #StWidget:track-hover is %TRUE, but you can
adjust it manually in any case.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="important"
                writable="1"
                construct="1"
                transfer-ownership="none"
                setter="set_important"
                getter="get_important"
                default-value="FALSE">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="937">Whether or not the fallback theme should be used for lookups in case the user theme fails.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="label-actor"
                writable="1"
                transfer-ownership="none"
                setter="set_label_actor"
                getter="get_label_actor">
        <type name="Clutter.Actor"/>
      </property>
      <property name="pseudo-class" writable="1" transfer-ownership="none">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="835">The pseudo-class of the actor. Typical values include "hover", "active",
"focus".</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="style"
                writable="1"
                transfer-ownership="none"
                setter="set_style"
                getter="get_style">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="861">Inline style information for the actor as a ';'-separated list of
CSS properties.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="style-class" writable="1" transfer-ownership="none">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="848">The style-class of the actor for use in styling.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="theme"
                writable="1"
                transfer-ownership="none"
                setter="set_theme"
                getter="get_theme">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="875">A theme set on this actor overriding the global theming for this actor
and its descendants</doc>
        <type name="Theme"/>
      </property>
      <property name="track-hover"
                writable="1"
                transfer-ownership="none"
                setter="set_track_hover"
                getter="get_track_hover"
                default-value="FALSE">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="889">Determines whether the widget tracks pointer hover state. If
%TRUE (and the widget is visible and reactive), the
#StWidget:hover property and "hover" style pseudo class will be
adjusted automatically as the pointer moves in and out of the
widget.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <field name="parent_instance" readable="0" private="1">
        <type name="Clutter.Actor" c:type="ClutterActor"/>
      </field>
      <field name="priv" readable="0" private="1">
        <type name="WidgetPrivate" c:type="StWidgetPrivate*"/>
      </field>
      <glib:signal name="popup-menu" when="last">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="1006">Emitted when the user has requested a context menu (eg, via a
keybinding)</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="style-changed" when="last">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="991">Emitted when the style information that the widget derives from the
theme changes</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
    </class>
    <class name="WidgetAccessible"
           c:symbol-prefix="widget_accessible"
           c:type="StWidgetAccessible"
           parent="Atk.GObjectAccessible"
           glib:type-name="StWidgetAccessible"
           glib:get-type="st_widget_accessible_get_type"
           glib:type-struct="WidgetAccessibleClass">
      <source-position filename="src/st/st-widget-accessible.h" line="70"/>
      <implements name="Atk.Action"/>
      <implements name="Atk.Component"/>
      <field name="parent" introspectable="0">
        <type c:type="CallyActor"/>
      </field>
      <field name="priv" readable="0" private="1">
        <type name="WidgetAccessiblePrivate"
              c:type="StWidgetAccessiblePrivate*"/>
      </field>
    </class>
    <record name="WidgetAccessibleClass"
            c:type="StWidgetAccessibleClass"
            glib:is-gtype-struct-for="WidgetAccessible">
      <source-position filename="src/st/st-widget-accessible.h" line="70"/>
      <field name="parent_class" introspectable="0">
        <type c:type="CallyActorClass"/>
      </field>
    </record>
    <record name="WidgetAccessiblePrivate"
            c:type="StWidgetAccessiblePrivate"
            disguised="1"
            opaque="1">
      <source-position filename="src/st/st-widget-accessible.h" line="57"/>
    </record>
    <record name="WidgetClass"
            c:type="StWidgetClass"
            glib:is-gtype-struct-for="Widget">
      <doc xml:space="preserve"
           filename="src/st/st-widget.h"
           line="70">Base class for stylable actors.</doc>
      <source-position filename="src/st/st-widget.h" line="98"/>
      <field name="parent_class" readable="0" private="1">
        <type name="Clutter.ActorClass" c:type="ClutterActorClass"/>
      </field>
      <field name="style_changed">
        <callback name="style_changed">
          <source-position filename="src/st/st-widget.h" line="81"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="self" transfer-ownership="none">
              <type name="Widget" c:type="StWidget*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="popup_menu">
        <callback name="popup_menu">
          <source-position filename="src/st/st-widget.h" line="82"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="self" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="src/st/st-widget.c"
                   line="1933">A #StWidget</doc>
              <type name="Widget" c:type="StWidget*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="navigate_focus">
        <callback name="navigate_focus">
          <source-position filename="src/st/st-widget.h" line="92"/>
          <return-value transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="self" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="src/st/st-widget.h"
                   line="88">the "top level" container</doc>
              <type name="Widget" c:type="StWidget*"/>
            </parameter>
            <parameter name="from"
                       transfer-ownership="none"
                       nullable="1"
                       allow-none="1">
              <doc xml:space="preserve"
                   filename="src/st/st-widget.h"
                   line="89">the actor that the focus is coming from</doc>
              <type name="Clutter.Actor" c:type="ClutterActor*"/>
            </parameter>
            <parameter name="direction" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="src/st/st-widget.h"
                   line="90">the direction focus is moving in</doc>
              <type name="Gtk.DirectionType" c:type="GtkDirectionType"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_accessible_type">
        <callback name="get_accessible_type">
          <source-position filename="src/st/st-widget.h" line="95"/>
          <return-value transfer-ownership="none">
            <type name="GType" c:type="GType"/>
          </return-value>
        </callback>
      </field>
      <field name="get_focus_chain">
        <callback name="get_focus_chain">
          <source-position filename="src/st/st-widget.h" line="97"/>
          <return-value transfer-ownership="container">
            <doc xml:space="preserve"
                 filename="src/st/st-widget.c"
                 line="2996">
  @widget's focusable children</doc>
            <type name="GLib.List" c:type="GList*">
              <type name="Clutter.Actor"/>
            </type>
          </return-value>
          <parameters>
            <parameter name="widget" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="src/st/st-widget.c"
                   line="2990">An #StWidget</doc>
              <type name="Widget" c:type="StWidget*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <record name="WidgetPrivate"
            c:type="StWidgetPrivate"
            disguised="1"
            opaque="1">
      <source-position filename="src/st/st-widget.h" line="52"/>
    </record>
    <function name="describe_actor" c:identifier="st_describe_actor">
      <doc xml:space="preserve"
           filename="src/st/st-widget.c"
           line="2293">Creates a string describing @actor, for use in debugging. This
includes the class name and actor name (if any), plus if @actor
is an #StWidget, its style class and pseudo class names.</doc>
      <source-position filename="src/st/st-widget.h" line="177"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="src/st/st-widget.c"
             line="2301">the debug name.</doc>
        <type name="utf8" c:type="char*"/>
      </return-value>
      <parameters>
        <parameter name="actor" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-widget.c"
               line="2295">a #ClutterActor</doc>
          <type name="Clutter.Actor" c:type="ClutterActor*"/>
        </parameter>
      </parameters>
    </function>
    <function name="paint_background_blur_effect"
              c:identifier="st_paint_background_blur_effect">
      <doc xml:space="preserve"
           filename="src/st/st-background-effect.c"
           line="85">paints a blur effect by snapshotting the screen and processing it</doc>
      <source-position filename="src/st/st-background-effect.h" line="92"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="src/st/st-background-effect.c"
             line="93">%TRUE if successful</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="background_blur_effect" transfer-ownership="none">
          <type name="BackgroundBlurEffect" c:type="StBackgroundBlurEffect*"/>
        </parameter>
        <parameter name="fb" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-background-effect.c"
               line="88">a #CoglFramebuffer</doc>
          <type name="Cogl.Framebuffer" c:type="CoglFramebuffer*"/>
        </parameter>
        <parameter name="box" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-background-effect.c"
               line="89">a #ClutterActorBox</doc>
          <type name="Clutter.ActorBox" c:type="const ClutterActorBox*"/>
        </parameter>
      </parameters>
    </function>
    <function name="paint_background_bumpmap_effect"
              c:identifier="st_paint_background_bumpmap_effect">
      <doc xml:space="preserve"
           filename="src/st/st-background-effect.c"
           line="298">paints a bumpmap effect by snapshotting the screen and processing it</doc>
      <source-position filename="src/st/st-background-effect.h" line="95"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="src/st/st-background-effect.c"
             line="306">%TRUE if successful</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="background_blur_effect" transfer-ownership="none">
          <type name="BackgroundBumpmapEffect"
                c:type="StBackgroundBumpmapEffect*"/>
        </parameter>
        <parameter name="fb" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-background-effect.c"
               line="301">a #CoglFramebuffer</doc>
          <type name="Cogl.Framebuffer" c:type="CoglFramebuffer*"/>
        </parameter>
        <parameter name="box" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/st/st-background-effect.c"
               line="302">a #ClutterActorBox</doc>
          <type name="Clutter.ActorBox" c:type="const ClutterActorBox*"/>
        </parameter>
      </parameters>
    </function>
    <docsection name="st-adjustment">
      <doc xml:space="preserve"
           filename="src/st/st-adjustment.c"
           line="21">The #StAdjustment object represents a range of values bounded between a
minimum and maximum, together with step and page increments and a page size.</doc>
    </docsection>
    <docsection name="st-bin">
      <doc xml:space="preserve"
           filename="src/st/st-bin.c"
           line="21">#StBin is a simple container capable of having only one
#ClutterActor as a child.

#StBin inherits from #StWidget, so it is fully themable.</doc>
    </docsection>
    <docsection name="st-box-layout">
      <doc xml:space="preserve"
           filename="src/st/st-box-layout.c"
           line="37">The #StBoxLayout arranges its children along a single line, where each
child can be allocated either its preferred size or larger if the expand
option is set. If the fill option is set, the actor will be allocated more
than its requested size. If the fill option is not set, but the expand option
is enabled, then the position of the actor within the available space can
be determined by the alignment child property.</doc>
    </docsection>
    <docsection name="st-box-layout-child">
      <doc xml:space="preserve"
           filename="src/st/st-box-layout-child.c"
           line="20">#StBoxLayoutChild is a #ClutterChildMeta implementation that stores the
child properties for children inside a #StBoxLayout.</doc>
    </docsection>
    <docsection name="st-button">
      <doc xml:space="preserve"
           filename="src/st/st-button.c"
           line="22">A button widget with support for either a text label or icon, toggle mode
and transitions effects between states.</doc>
    </docsection>
    <docsection name="st-clipboard">
      <doc xml:space="preserve"
           filename="src/st/st-clipboard.c"
           line="20">#StCliboard is a very simple object representation of the clipboard
available to applications. Text is always assumed to be UTF-8 and non-text
items are not handled.</doc>
    </docsection>
    <docsection name="st-drawing-area">
      <doc xml:space="preserve"
           filename="src/st/st-drawing-area.c"
           line="21">#StDrawingArea is similar to #ClutterCairoTexture in that
it allows drawing via Cairo; the primary difference is that
it is dynamically sized.  To use, connect to the #StDrawingArea::repaint
signal, and inside the signal handler, call
st_drawing_area_get_context() to get the Cairo context to draw to.  The
#StDrawingArea::repaint signal will be emitted by default when the area is
resized or the CSS style changes; you can use the
st_drawing_area_queue_repaint() as well.</doc>
    </docsection>
    <docsection name="st-entry">
      <doc xml:space="preserve"
           filename="src/st/st-entry.c"
           line="22">#StEntry is a simple widget for displaying text. It derives from
#StWidget to add extra style and placement functionality over
#ClutterText. The internal #ClutterText is publicly accessibly to allow
applications to set further properties.

#StEntry supports the following pseudo style states:
&lt;itemizedlist&gt;
 &lt;listitem&gt;
  &lt;para&gt;focus: the widget has focus&lt;/para&gt;
 &lt;/listitem&gt;
 &lt;listitem&gt;
  &lt;para&gt;indeterminate: the widget is showing the hint text or actor&lt;/para&gt;
 &lt;/listitem&gt;
 &lt;listitem&gt;
  &lt;para&gt;hover: the widget is showing the hint text and is underneath the
               pointer&lt;/para&gt;
 &lt;/listitem&gt;
&lt;/itemizedlist&gt;</doc>
    </docsection>
    <docsection name="st-focus-manager">
      <doc xml:space="preserve"
           filename="src/st/st-focus-manager.c"
           line="21">#StFocusManager handles keyboard focus for all actors on the stage.</doc>
    </docsection>
    <docsection name="st-group">
      <doc xml:space="preserve"
           filename="src/st/st-group.c"
           line="21">SECTION:clutter-group
A #StGroup is an Actor which contains multiple child actors positioned
relative to the #StGroup position. Other operations such as scaling,
rotating and clipping of the group will apply to the child actors.

A #StGroup's size is defined by the size and position of its children;
it will be the smallest non-negative size that covers the right and bottom
edges of all of its children.

Setting the size on a Group using #ClutterActor methods like
clutter_actor_set_size() will override the natural size of the Group,
however this will not affect the size of the children and they may still
be painted outside of the allocation of the group. One way to constrain
the visible area of a #StGroup to a specified allocation is to
explicitly set the size of the #StGroup and then use the
#ClutterActor:clip-to-allocation property.</doc>
    </docsection>
    <docsection name="st-icon">
      <doc xml:space="preserve"
           filename="src/st/st-icon.c"
           line="21">#StIcon is a simple styled texture actor that displays an image from
a stylesheet.</doc>
    </docsection>
    <docsection name="st-label">
      <doc xml:space="preserve"
           filename="src/st/st-label.c"
           line="22">#StLabel is a simple widget for displaying text. It derives from
#StWidget to add extra style and placement functionality over
#ClutterText. The internal #ClutterText is publicly accessibly to allow
applications to set further properties.</doc>
    </docsection>
    <docsection name="st-polygon">
      <doc xml:space="preserve"
           filename="src/st/st-polygon.c"
           line="21">#StPolygon is similar to #ClutterCairoTexture in that
it allows drawing via Cairo; the primary difference is that
it is dynamically sized.
The #StPolygon::repaint signal will be emitted by default when
the area is resized or the CSS style changes; you can use the
st_polygon_queue_repaint() as well.</doc>
    </docsection>
    <docsection name="st-scroll-bar">
      <doc xml:space="preserve"
           filename="src/st/st-scroll-bar.c"
           line="23">The #StScrollBar allows users to scroll scrollable actors, either by
the step or page amount, or by manually dragging the handle.</doc>
    </docsection>
    <docsection name="st-scroll-view">
      <doc xml:space="preserve"
           filename="src/st/st-scroll-view.c"
           line="23">#StScrollView is a single child container for actors that implement
#StScrollable. It provides scrollbars around the edge of the child to
allow the user to move around the scrollable area.</doc>
    </docsection>
    <docsection name="st-scrollable">
      <doc xml:space="preserve"
           filename="src/st/st-scrollable.c"
           line="24">The #StScrollable interface is exposed by actors that support scrolling.

The interface contains methods for getting and setting the adjustments
for scrolling; these adjustments will be used to hook the scrolled
position up to scrollbars or other external controls. When a #StScrollable
is added to a parent container, the parent container is responsible
for setting the adjustments. The parent container then sets the adjustments
back to %NULL when the scrollable is removed.

For #StScrollable supporting height-for-width size negotiation, size
negotiation works as follows:

In response to get_preferred_width(), the scrollable should report
the minimum width at which horizontal scrolling is needed for the
preferred width, and natural width of the actor when not
horizontally scrolled as the natural width.

The for_width passed into get_preferred_height() is the width at which
the scrollable will be allocated; this will be smaller than the minimum
width when scrolling horizontally, so the scrollable may want to adjust
it up to the minimum width before computing a preferred height. (Other
scrollables may want to fit as much content into the allocated area
as possible and only scroll what absolutely needs to scroll - consider,
for example, the line-wrapping behavior of a text editor where there
is a long line without any spaces.) As for width, get_preferred_height()
should return the minimum size at which no scrolling is needed for the
minimum height, and the natural size of the actor when not vertically scrolled
as the natural height.

In allocate() the allocation box passed in will be actual allocated
size of the actor so will be smaller than the reported minimum
width and/or height when scrolling is present. Any scrollable actor
must support being allocated at any size down to 0x0 without
crashing, however if the actor has content around the scrolled area
and has an absolute minimum size that's bigger than 0x0 its
acceptable for it to misdraw between 0x0 and the absolute minimum
size. It's up to the application author to avoid letting the user
resize the scroll view small enough so that the scrolled area
vanishes.

In response to allocate, in addition to normal handling, the
scrollable should also set the limits of the the horizontal and
vertical adjustments that were set on it earlier. The standard
settings are:

 lower: 0
 page_size: allocated size (width or height)
 upper: MAX (total size of the scrolled area,allocated_size)
 step_increment: natural row/column height or a fixed fraction of the page size
 page_increment: page_size - step_increment</doc>
    </docsection>
    <docsection name="st-shadow">
      <doc xml:space="preserve"
           filename="src/st/st-shadow.c"
           line="29">#StShadow is a boxed type for storing attributes of the -st-shadow
property, modelled liberally after the CSS3 box-shadow property.
See http://www.css3.info/preview/box-shadow/</doc>
    </docsection>
    <docsection name="st-shadow-helper">
      <doc xml:space="preserve"
           filename="src/st/st-shadow.c"
           line="182">An helper for implementing a drop shadow on a actor.
The actor is expected to recreate the helper whenever its contents
or size change. Then, it would call st_shadow_helper_paint() inside
its paint() virtual function.</doc>
    </docsection>
    <docsection name="st-table">
      <doc xml:space="preserve"
           filename="src/st/st-table.c"
           line="22">#StTable is a mult-child layout container based on a table arrangement
with rows and columns. #StTable adds several child properties to it's
children that control their position and size in the table.</doc>
    </docsection>
    <docsection name="st-table-child">
      <doc xml:space="preserve"
           filename="src/st/st-table-child.c"
           line="32">The #ClutterChildMeta implementation for the #StTable container widget.</doc>
    </docsection>
    <docsection name="st-types">
      <doc xml:space="preserve"
           filename="src/st/st-types.h"
           line="30">Common types for StWidgets.</doc>
    </docsection>
    <docsection name="st-viewport">
      <doc xml:space="preserve"
           filename="src/st/st-viewport.c"
           line="38">The #StViewport is a generic #StScrollable implementation.</doc>
    </docsection>
    <docsection name="st-widget">
      <doc xml:space="preserve"
           filename="src/st/st-widget.c"
           line="90">#StWidget is a simple abstract class on top of #ClutterActor. It
provides basic themeing properties.

Actors in the St library should subclass #StWidget if they plan
to obey to a certain #StStyle.</doc>
    </docsection>
  </namespace>
</repository>
