<?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:glib="http://www.gtk.org/introspection/glib/1.0">
  <include name="Gdk" version="3.0"/>
  <include name="Gio" version="2.0"/>
  <include name="Gtk" version="3.0"/>
  <include name="GtkSource" version="3.0"/>
  <c:include name="gstyle-private.h"/>
  <namespace name="Gstyle"
             version="1.0"
             shared-library="libgstyle-private.so.1.0"
             c:identifier-prefixes="Gstyle"
             c:symbol-prefixes="gstyle">
    <constant name="COLOR_SCALE_CUSTOM_DATA_BYTE_SIZE"
              value="0"
              c:type="GSTYLE_COLOR_SCALE_CUSTOM_DATA_BYTE_SIZE">
      <type name="gint" c:type="gint"/>
    </constant>
    <constant name="COLOR_SCALE_CUSTOM_DATA_PIXEL_SIZE"
              value="256"
              c:type="GSTYLE_COLOR_SCALE_CUSTOM_DATA_PIXEL_SIZE">
      <type name="gint" c:type="gint"/>
    </constant>
    <glib:boxed glib:name="Cielab"
                c:symbol-prefix="cielab"
                glib:type-name="GstyleCielab"
                glib:get-type="gstyle_cielab_get_type">
      <method name="copy" c:identifier="gstyle_cielab_copy">
        <doc xml:space="preserve">Makes a copy of a #GstyleCielab.

The result must be freed through gstyle_cielab_free().</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">a newly allocated #GstyleCielab, with the same contents as @self</doc>
          <type name="Cielab" c:type="GstyleCielab*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">a #GstyleCielab</doc>
            <type name="Cielab" c:type="const GstyleCielab*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="free" c:identifier="gstyle_cielab_free">
        <doc xml:space="preserve">Frees a #GstyleCielab created with gstyle_cielab_copy().</doc>
        <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">a #GstyleCielab</doc>
            <type name="Cielab" c:type="GstyleCielab*"/>
          </instance-parameter>
        </parameters>
      </method>
    </glib:boxed>
    <class name="Color"
           c:symbol-prefix="color"
           c:type="GstyleColor"
           parent="GObject.Object"
           glib:type-name="GstyleColor"
           glib:get-type="gstyle_color_get_type"
           glib:type-struct="ColorClass">
      <constructor name="new" c:identifier="gstyle_color_new">
        <doc xml:space="preserve">A #GstyleColor object from #GstyleColorKind and rgba components.</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">A #GstyleColor.</doc>
          <type name="Color" c:type="GstyleColor*"/>
        </return-value>
        <parameters>
          <parameter name="name"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve">The name of the color. Can be %NULL</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve">The kind of representation as a #GstyleColorKind</doc>
            <type name="ColorKind" c:type="GstyleColorKind"/>
          </parameter>
          <parameter name="red" transfer-ownership="none">
            <doc xml:space="preserve">The red component in a [0-255] range</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
          <parameter name="green" transfer-ownership="none">
            <doc xml:space="preserve">The green component in a [0-255] range</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
          <parameter name="blue" transfer-ownership="none">
            <doc xml:space="preserve">The blue component in a [0-255] range</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
          <parameter name="alpha" transfer-ownership="none">
            <doc xml:space="preserve">The alpha component in a [0-100] range</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_from_hsla"
                   c:identifier="gstyle_color_new_from_hsla">
        <return-value transfer-ownership="full">
          <type name="Color" c:type="GstyleColor*"/>
        </return-value>
        <parameters>
          <parameter name="name" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="kind" transfer-ownership="none">
            <type name="ColorKind" c:type="GstyleColorKind"/>
          </parameter>
          <parameter name="hue" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="saturation" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="lightness" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="alpha" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_from_rgba"
                   c:identifier="gstyle_color_new_from_rgba">
        <doc xml:space="preserve">A #GstyleColor object from a #GstyleColorKind and a #GdkRGBA object.</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">A #GstyleColor.</doc>
          <type name="Color" c:type="GstyleColor*"/>
        </return-value>
        <parameters>
          <parameter name="name"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve">The name of the color. Can be %NULL</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve">The kind of representation as a #GstyleColorKind</doc>
            <type name="ColorKind" c:type="GstyleColorKind"/>
          </parameter>
          <parameter name="rgba" transfer-ownership="none">
            <doc xml:space="preserve">A #GdkRGBA</doc>
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_from_string"
                   c:identifier="gstyle_color_new_from_string">
        <doc xml:space="preserve">A #GstyleColor object from a color string.</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">A #GstyleColor or %NULL if the string can't be parsed.</doc>
          <type name="Color" c:type="GstyleColor*"/>
        </return-value>
        <parameters>
          <parameter name="name"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve">The name of the color. Can be NULL</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="color_string" transfer-ownership="none">
            <doc xml:space="preserve">A null terminated string to parse</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </constructor>
      <function name="convert_cielab_to_rgb"
                c:identifier="gstyle_color_convert_cielab_to_rgb">
        <doc xml:space="preserve">Convert CIELAB components to RGB ones.
The alpha component is not used because it doesn't change in the conversion.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="lab" transfer-ownership="none">
            <doc xml:space="preserve">A #GstyleCieLab struct.</doc>
            <type name="Cielab" c:type="GstyleCielab*"/>
          </parameter>
          <parameter name="rgba"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="none">
            <doc xml:space="preserve">An #GdkRGBA.</doc>
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
        </parameters>
      </function>
      <function name="convert_cielab_to_xyz"
                c:identifier="gstyle_color_convert_cielab_to_xyz">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="lab" transfer-ownership="none">
            <type name="Cielab" c:type="GstyleCielab*"/>
          </parameter>
          <parameter name="xyz" transfer-ownership="none">
            <type name="XYZ" c:type="GstyleXYZ*"/>
          </parameter>
        </parameters>
      </function>
      <function name="convert_hsl_to_rgb"
                c:identifier="gstyle_color_convert_hsl_to_rgb">
        <doc xml:space="preserve">Convert RGB components to HSL ones.
The alpha component is not used because it doesn't change in the conversion.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="hue" transfer-ownership="none">
            <doc xml:space="preserve">The hue component of a hsl color in range  [0.0-360.0[</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="saturation" transfer-ownership="none">
            <doc xml:space="preserve">The saturation component of a hsl color in range [0.0-100.0]</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="lightness" transfer-ownership="none">
            <doc xml:space="preserve">The lightness component of a hsl color in range [0.0-100.0]</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="rgba" transfer-ownership="none">
            <doc xml:space="preserve">A #GdkRGBA.</doc>
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
        </parameters>
      </function>
      <function name="convert_hsv_to_rgb"
                c:identifier="gstyle_color_convert_hsv_to_rgb">
        <doc xml:space="preserve">Convert HSV components to RGB ones.
The alpha component is not used because it doesn't change in the conversion.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="hue" transfer-ownership="none">
            <doc xml:space="preserve">The hue component of a hsv color in range  [0.0-1.0[</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="saturation" transfer-ownership="none">
            <doc xml:space="preserve">The saturation component of a hsv color in range [0.0-1.0]</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve">The value component of a hsv color in range [0.0-1.0]</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="rgba" transfer-ownership="none">
            <doc xml:space="preserve">A #GdkRGBA.</doc>
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
        </parameters>
      </function>
      <function name="convert_hsv_to_xyz"
                c:identifier="gstyle_color_convert_hsv_to_xyz">
        <doc xml:space="preserve">Convert HSV components to XYZ ones.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="hue" transfer-ownership="none">
            <doc xml:space="preserve">The hue component of a hsv color in range  [0.0-1.0[</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="saturation" transfer-ownership="none">
            <doc xml:space="preserve">The saturation component of a hsv color in range [0.0-1.0]</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve">The value component of a hsv color in range [0.0-1.0]</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="xyz"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve">An #GstyleXYZ.</doc>
            <type name="XYZ" c:type="GstyleXYZ*"/>
          </parameter>
        </parameters>
      </function>
      <function name="convert_rgb_to_cielab"
                c:identifier="gstyle_color_convert_rgb_to_cielab">
        <doc xml:space="preserve">Convert RGB components to CIELAB ones.
The alpha component is not used because it doesn't change in the conversion.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="rgba" transfer-ownership="none">
            <doc xml:space="preserve">An #GdkRGBA.</doc>
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
          <parameter name="lab"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve">A #GstyleCieLab struct.</doc>
            <type name="Cielab" c:type="GstyleCielab*"/>
          </parameter>
        </parameters>
      </function>
      <function name="convert_rgb_to_hsl"
                c:identifier="gstyle_color_convert_rgb_to_hsl">
        <doc xml:space="preserve">Convert rgb components to HSL ones.
The alpha component is not used because it doesn't change in the conversion.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="rgba" transfer-ownership="none">
            <doc xml:space="preserve">A #GdkRGBA struct.</doc>
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
          <parameter name="hue"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve">The hue component of a hsl color in range  [0.0-360.0[</doc>
            <type name="gdouble" c:type="gdouble*"/>
          </parameter>
          <parameter name="saturation"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve">The saturation component of a hsl color in range [0.0-100.0]</doc>
            <type name="gdouble" c:type="gdouble*"/>
          </parameter>
          <parameter name="lightness"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve">The lightness component of a hsl color in range [0.0-100.0]</doc>
            <type name="gdouble" c:type="gdouble*"/>
          </parameter>
        </parameters>
      </function>
      <function name="convert_rgb_to_hsv"
                c:identifier="gstyle_color_convert_rgb_to_hsv">
        <doc xml:space="preserve">Convert RGB components to HSV ones.
The alpha component is not used because it doesn't change in the conversion.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="rgba" transfer-ownership="none">
            <doc xml:space="preserve">An #GdkRGBA.</doc>
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
          <parameter name="hue"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve">The hue component of a hsv color in range  [0.0-1.0[</doc>
            <type name="gdouble" c:type="gdouble*"/>
          </parameter>
          <parameter name="saturation"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve">The saturation component of a hsv color in range [0.0-1.0]</doc>
            <type name="gdouble" c:type="gdouble*"/>
          </parameter>
          <parameter name="value"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve">The value component of a hsv color in range [0.0-1.0]</doc>
            <type name="gdouble" c:type="gdouble*"/>
          </parameter>
        </parameters>
      </function>
      <function name="convert_rgb_to_xyz"
                c:identifier="gstyle_color_convert_rgb_to_xyz">
        <doc xml:space="preserve">Convert RGB components to XYZ ones.
The alpha component is not used because it doesn't change in the conversion.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="rgba" transfer-ownership="none">
            <doc xml:space="preserve">An #GdkRGBA.</doc>
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
          <parameter name="xyz" transfer-ownership="none">
            <doc xml:space="preserve">A #GstyleXYZ.</doc>
            <type name="XYZ" c:type="GstyleXYZ*"/>
          </parameter>
        </parameters>
      </function>
      <function name="convert_xyz_to_cielab"
                c:identifier="gstyle_color_convert_xyz_to_cielab">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="xyz" transfer-ownership="none">
            <type name="XYZ" c:type="GstyleXYZ*"/>
          </parameter>
          <parameter name="lab" transfer-ownership="none">
            <type name="Cielab" c:type="GstyleCielab*"/>
          </parameter>
        </parameters>
      </function>
      <function name="convert_xyz_to_hsv"
                c:identifier="gstyle_color_convert_xyz_to_hsv">
        <doc xml:space="preserve">Convert XYZ components to HSV ones.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="xyz" transfer-ownership="none">
            <doc xml:space="preserve">An #GstyleXYZ.</doc>
            <type name="XYZ" c:type="GstyleXYZ*"/>
          </parameter>
          <parameter name="hue"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve">The hue component of a hsv color in range  [0.0-1.0[</doc>
            <type name="gdouble" c:type="gdouble*"/>
          </parameter>
          <parameter name="saturation"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve">The saturation component of a hsv color in range [0.0-1.0]</doc>
            <type name="gdouble" c:type="gdouble*"/>
          </parameter>
          <parameter name="value"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve">The value component of a hsv color in range [0.0-1.0]</doc>
            <type name="gdouble" c:type="gdouble*"/>
          </parameter>
        </parameters>
      </function>
      <function name="convert_xyz_to_rgb"
                c:identifier="gstyle_color_convert_xyz_to_rgb">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="xyz" transfer-ownership="none">
            <type name="XYZ" c:type="GstyleXYZ*"/>
          </parameter>
          <parameter name="rgba" transfer-ownership="none">
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
        </parameters>
      </function>
      <function name="delta_e" c:identifier="gstyle_color_delta_e">
        <doc xml:space="preserve">Compute the color difference between lab1 and lab2,
based on the deltaE CIEDE2000 formula.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">the deltaE value.</doc>
          <type name="gdouble" c:type="gdouble"/>
        </return-value>
        <parameters>
          <parameter name="lab1" transfer-ownership="none">
            <doc xml:space="preserve">A #GstyleCielab.</doc>
            <type name="Cielab" c:type="GstyleCielab*"/>
          </parameter>
          <parameter name="lab2" transfer-ownership="none">
            <doc xml:space="preserve">A #GstyleCielab.</doc>
            <type name="Cielab" c:type="GstyleCielab*"/>
          </parameter>
        </parameters>
      </function>
      <function name="fuzzy_parse_color_string"
                c:identifier="gstyle_color_fuzzy_parse_color_string">
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">A #GPtrArray of #GstyleColor for a fuzzy search.</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="Color"/>
          </array>
        </return-value>
        <parameters>
          <parameter name="color_string" transfer-ownership="none">
            <doc xml:space="preserve">color name to search for</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="parse" c:identifier="gstyle_color_parse">
        <doc xml:space="preserve">Get an pointer array of #GstyleColorItem indicating the color and position.
of color strings in the parsed string.</doc>
        <return-value transfer-ownership="full" nullable="1">
          <doc xml:space="preserve">A newly allocated
  #GPtrArray containing #GstyleColorItem elements. This should be freed when
  the caller is done with it using g_ptr_array_free().</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="ColorItem"/>
          </array>
        </return-value>
        <parameters>
          <parameter name="string" transfer-ownership="none">
            <doc xml:space="preserve">A null terminated string to parse.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="parse_color_string"
                c:identifier="gstyle_color_parse_color_string">
        <doc xml:space="preserve">Get a #GdkRGBA and a #GstyleColorKind from a color string.
If you want to keep the args unit format,
use gstyle_color_new_from_string instead.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">%TRUE on success, %FALSE if an error occurred.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <parameter name="color_string" transfer-ownership="none">
            <doc xml:space="preserve">A null-terminated color string to parse</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="rgba"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="none">
            <doc xml:space="preserve">The #GdkRGBA to fill in</doc>
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
          <parameter name="kind"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve">The kind of representation as a #GstyleColorKind</doc>
            <type name="ColorKind" c:type="GstyleColorKind*"/>
          </parameter>
        </parameters>
      </function>
      <method name="copy" c:identifier="gstyle_color_copy">
        <doc xml:space="preserve">A full copy of a #GstyleColor.</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">A #GstyleColor.</doc>
          <type name="Color" c:type="GstyleColor*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">A #GstyleColor</doc>
            <type name="Color" c:type="GstyleColor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="fill" c:identifier="gstyle_color_fill">
        <doc xml:space="preserve">Fill @dst_color with the rgba, name and kind of @src_color.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="src_color" transfer-ownership="none">
            <doc xml:space="preserve">Source #GstyleColor</doc>
            <type name="Color" c:type="GstyleColor*"/>
          </instance-parameter>
          <parameter name="dst_color" transfer-ownership="none">
            <doc xml:space="preserve">Destination #GstyleColor to fill with @src_color data</doc>
            <type name="Color" c:type="GstyleColor*"/>
          </parameter>
        </parameters>
      </method>
      <method name="fill_rgba" c:identifier="gstyle_color_fill_rgba">
        <doc xml:space="preserve">Fill a #GdkRGBA object from a #GstyleColor.</doc>
        <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">A #GstyleColor</doc>
            <type name="Color" c:type="GstyleColor*"/>
          </instance-parameter>
          <parameter name="rgba"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="none">
            <doc xml:space="preserve">the #GdkRGBA to fill in</doc>
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_kind" c:identifier="gstyle_color_get_kind">
        <doc xml:space="preserve">Get the #GstyleColorKind of a #GstyleColor.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">A #GstyleColorKind.</doc>
          <type name="ColorKind" c:type="GstyleColorKind"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">A #GstyleColor</doc>
            <type name="Color" c:type="GstyleColor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_name" c:identifier="gstyle_color_get_name">
        <doc xml:space="preserve">Get the name of a #GstyleColor.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">A string own by the callee.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">A #GstyleColor</doc>
            <type name="Color" c:type="GstyleColor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_rgba" c:identifier="gstyle_color_get_rgba">
        <doc xml:space="preserve">Get a #GdkRGBA object from a #GstyleColor.</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">A #GdkRGBA.</doc>
          <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">A #GstyleColor</doc>
            <type name="Color" c:type="GstyleColor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_alpha" c:identifier="gstyle_color_set_alpha">
        <doc xml:space="preserve">Set the alpha value the the #GstyleColor.</doc>
        <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">A #GstyleColor</doc>
            <type name="Color" c:type="GstyleColor*"/>
          </instance-parameter>
          <parameter name="alpha" transfer-ownership="none">
            <doc xml:space="preserve">the new alpha value in [0,1] range</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_kind" c:identifier="gstyle_color_set_kind">
        <doc xml:space="preserve">Set the #GstyleColorKind of a #GstyleColor.</doc>
        <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">A #GstyleColor</doc>
            <type name="Color" c:type="GstyleColor*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve">A #GstyleColorKind</doc>
            <type name="ColorKind" c:type="GstyleColorKind"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_name" c:identifier="gstyle_color_set_name">
        <doc xml:space="preserve">Set the name of a #GstyleColor.</doc>
        <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">A #GstyleColor.</doc>
            <type name="Color" c:type="GstyleColor*"/>
          </instance-parameter>
          <parameter name="name"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve">A string</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_rgba" c:identifier="gstyle_color_set_rgba">
        <doc xml:space="preserve">Set #GstyleColor color from a #GdkRGBA.</doc>
        <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">A #GstyleColor</doc>
            <type name="Color" c:type="GstyleColor*"/>
          </instance-parameter>
          <parameter name="rgba" transfer-ownership="none">
            <doc xml:space="preserve">A #GdkRGBA</doc>
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
        </parameters>
      </method>
      <method name="to_hsla" c:identifier="gstyle_color_to_hsla">
        <doc xml:space="preserve">Get the hsla components from a #GstyleColor.</doc>
        <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">A #GstyleColor</doc>
            <type name="Color" c:type="GstyleColor*"/>
          </instance-parameter>
          <parameter name="hue"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve">The hue component of a hsla color in range [0.0-360.0[</doc>
            <type name="gdouble" c:type="gdouble*"/>
          </parameter>
          <parameter name="saturation"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve">The saturation component of a hsla color in range [0.0-100.0]</doc>
            <type name="gdouble" c:type="gdouble*"/>
          </parameter>
          <parameter name="lightness"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve">The lightness component of a hsla color in range [0.0-100.0]</doc>
            <type name="gdouble" c:type="gdouble*"/>
          </parameter>
          <parameter name="alpha"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     nullable="1">
            <doc xml:space="preserve">The alpha component of a hsla color in range [0.0-100.0]</doc>
            <type name="gdouble" c:type="gdouble*"/>
          </parameter>
        </parameters>
      </method>
      <method name="to_string" c:identifier="gstyle_color_to_string">
        <doc xml:space="preserve">Get the string representation of a #GstyleColor.

Notice that:
 - asking for an HEX3 format take only the 4 left bits of each components into account.
 - asking for a predefined named color format return the closest color according to
   CIE2000 deltaE calculation, unless the original kind is already a named color.</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">A null-terminated string.</doc>
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">A #GstyleColor</doc>
            <type name="Color" c:type="GstyleColor*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve">The kind of representation as a #GstyleColorKind</doc>
            <type name="ColorKind" c:type="GstyleColorKind"/>
          </parameter>
        </parameters>
      </method>
      <property name="kind"
                writable="1"
                construct="1"
                transfer-ownership="none">
        <type name="ColorKind"/>
      </property>
      <property name="name"
                writable="1"
                construct="1"
                transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="rgba"
                writable="1"
                construct="1"
                transfer-ownership="none">
        <type name="Gdk.RGBA"/>
      </property>
    </class>
    <record name="ColorClass"
            c:type="GstyleColorClass"
            glib:is-gtype-struct-for="Color">
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
    </record>
    <enumeration name="ColorComponent" c:type="GstyleColorComponent">
      <member name="style_color_component_hsv_h"
              value="0"
              c:identifier="GSTYLE_COLOR_COMPONENT_HSV_H">
      </member>
      <member name="style_color_component_hsv_s"
              value="1"
              c:identifier="GSTYLE_COLOR_COMPONENT_HSV_S">
      </member>
      <member name="style_color_component_hsv_v"
              value="2"
              c:identifier="GSTYLE_COLOR_COMPONENT_HSV_V">
      </member>
      <member name="style_color_component_lab_l"
              value="3"
              c:identifier="GSTYLE_COLOR_COMPONENT_LAB_L">
      </member>
      <member name="style_color_component_lab_a"
              value="4"
              c:identifier="GSTYLE_COLOR_COMPONENT_LAB_A">
      </member>
      <member name="style_color_component_lab_b"
              value="5"
              c:identifier="GSTYLE_COLOR_COMPONENT_LAB_B">
      </member>
      <member name="style_color_component_rgb_red"
              value="6"
              c:identifier="GSTYLE_COLOR_COMPONENT_RGB_RED">
      </member>
      <member name="style_color_component_rgb_green"
              value="7"
              c:identifier="GSTYLE_COLOR_COMPONENT_RGB_GREEN">
      </member>
      <member name="style_color_component_rgb_blue"
              value="8"
              c:identifier="GSTYLE_COLOR_COMPONENT_RGB_BLUE">
      </member>
      <member name="_gstyle_color_component"
              value="9"
              c:identifier="N_GSTYLE_COLOR_COMPONENT">
      </member>
      <member name="style_color_component_none"
              value="10"
              c:identifier="GSTYLE_COLOR_COMPONENT_NONE">
      </member>
    </enumeration>
    <enumeration name="ColorFilter"
                 glib:type-name="GstyleColorFilter"
                 glib:get-type="gstyle_color_filter_get_type"
                 c:type="GstyleColorFilter">
      <member name="none"
              value="0"
              c:identifier="GSTYLE_COLOR_FILTER_NONE"
              glib:nick="none">
      </member>
      <member name="achromatopsia"
              value="1"
              c:identifier="GSTYLE_COLOR_FILTER_ACHROMATOPSIA"
              glib:nick="achromatopsia">
      </member>
      <member name="achromatomaly"
              value="2"
              c:identifier="GSTYLE_COLOR_FILTER_ACHROMATOMALY"
              glib:nick="achromatomaly">
      </member>
      <member name="deuteranopia"
              value="3"
              c:identifier="GSTYLE_COLOR_FILTER_DEUTERANOPIA"
              glib:nick="deuteranopia">
      </member>
      <member name="deuteranomaly"
              value="4"
              c:identifier="GSTYLE_COLOR_FILTER_DEUTERANOMALY"
              glib:nick="deuteranomaly">
      </member>
      <member name="protanopia"
              value="5"
              c:identifier="GSTYLE_COLOR_FILTER_PROTANOPIA"
              glib:nick="protanopia">
      </member>
      <member name="protanomaly"
              value="6"
              c:identifier="GSTYLE_COLOR_FILTER_PROTANOMALY"
              glib:nick="protanomaly">
      </member>
      <member name="tritanopia"
              value="7"
              c:identifier="GSTYLE_COLOR_FILTER_TRITANOPIA"
              glib:nick="tritanopia">
      </member>
      <member name="tritanomaly"
              value="8"
              c:identifier="GSTYLE_COLOR_FILTER_TRITANOMALY"
              glib:nick="tritanomaly">
      </member>
      <member name="websafe"
              value="9"
              c:identifier="GSTYLE_COLOR_FILTER_WEBSAFE"
              glib:nick="websafe">
      </member>
      <function name="achromatomaly"
                c:identifier="gstyle_color_filter_achromatomaly">
        <doc xml:space="preserve">A achromatomaly (Blue Cone Monochromacy) color filter usable with #GstyleColorScale and GstyleColorPlane.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="rgba" transfer-ownership="none">
            <doc xml:space="preserve">The source #GdkRGBA color</doc>
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
          <parameter name="filter_rgba"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="none">
            <doc xml:space="preserve">the filtered #GdkRGBA color</doc>
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve">A user data pointer</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </function>
      <function name="achromatopsia"
                c:identifier="gstyle_color_filter_achromatopsia">
        <doc xml:space="preserve">A achromatopsia (color agnosia) color filter usable with #GstyleColorScale and GstyleColorPlane.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="rgba" transfer-ownership="none">
            <doc xml:space="preserve">The source #GdkRGBA color</doc>
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
          <parameter name="filter_rgba"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="none">
            <doc xml:space="preserve">the filtered #GdkRGBA color</doc>
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve">A user data pointer</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </function>
      <function name="deuteranomaly"
                c:identifier="gstyle_color_filter_deuteranomaly">
        <doc xml:space="preserve">A deuteranomaly (green-weak) color filter usable with #GstyleColorScale and GstyleColorPlane.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="rgba" transfer-ownership="none">
            <doc xml:space="preserve">The source #GdkRGBA color</doc>
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
          <parameter name="filter_rgba"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="none">
            <doc xml:space="preserve">the filtered #GdkRGBA color</doc>
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve">A user data pointer</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </function>
      <function name="deuteranopia"
                c:identifier="gstyle_color_filter_deuteranopia">
        <doc xml:space="preserve">A deuteranopia (green-blind) color filter usable with #GstyleColorScale and GstyleColorPlane.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="rgba" transfer-ownership="none">
            <doc xml:space="preserve">The source #GdkRGBA color</doc>
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
          <parameter name="filter_rgba"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="none">
            <doc xml:space="preserve">the filtered #GdkRGBA color</doc>
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve">A user data pointer</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </function>
      <function name="protanomaly"
                c:identifier="gstyle_color_filter_protanomaly">
        <doc xml:space="preserve">A protanomaly (red-weak) color filter usable with #GstyleColorScale and GstyleColorPlane.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="rgba" transfer-ownership="none">
            <doc xml:space="preserve">The source #GdkRGBA color</doc>
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
          <parameter name="filter_rgba"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="none">
            <doc xml:space="preserve">the filtered #GdkRGBA color</doc>
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve">A user data pointer</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </function>
      <function name="protanopia"
                c:identifier="gstyle_color_filter_protanopia">
        <doc xml:space="preserve">A protanopia (red-blind) color filter usable with #GstyleColorScale and GstyleColorPlane.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="rgba" transfer-ownership="none">
            <doc xml:space="preserve">The source #GdkRGBA color</doc>
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
          <parameter name="filter_rgba"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="none">
            <doc xml:space="preserve">the filtered #GdkRGBA color</doc>
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve">A user data pointer</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </function>
      <function name="tritanomaly"
                c:identifier="gstyle_color_filter_tritanomaly">
        <doc xml:space="preserve">A tritanomaly (blue-weak) color filter usable with #GstyleColorScale and GstyleColorPlane.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="rgba" transfer-ownership="none">
            <doc xml:space="preserve">The source #GdkRGBA color</doc>
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
          <parameter name="filter_rgba"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="none">
            <doc xml:space="preserve">the filtered #GdkRGBA color</doc>
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve">A user data pointer</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </function>
      <function name="tritanopia"
                c:identifier="gstyle_color_filter_tritanopia">
        <doc xml:space="preserve">A tritanopia (blue-blind) color filter usable with #GstyleColorScale and GstyleColorPlane.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="rgba" transfer-ownership="none">
            <doc xml:space="preserve">The source #GdkRGBA color</doc>
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
          <parameter name="filter_rgba"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="none">
            <doc xml:space="preserve">the filtered #GdkRGBA color</doc>
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve">A user data pointer</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </function>
      <function name="websafe" c:identifier="gstyle_color_filter_websafe">
        <doc xml:space="preserve">A WebSafe color filter usable with #GstyleColorScale and GstyleColorPlane.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="rgba" transfer-ownership="none">
            <doc xml:space="preserve">The source #GdkRGBA color</doc>
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
          <parameter name="filter_rgba"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="none">
            <doc xml:space="preserve">the filtered #GdkRGBA color</doc>
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve">A user data pointer</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </function>
    </enumeration>
    <callback name="ColorFilterFunc" c:type="GstyleColorFilterFunc">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="rgba" transfer-ownership="none">
          <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
        </parameter>
        <parameter name="filter_rgba" transfer-ownership="none">
          <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
        </parameter>
        <parameter name="user_data"
                   transfer-ownership="none"
                   nullable="1"
                   allow-none="1"
                   closure="2">
          <type name="gpointer" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <glib:boxed glib:name="ColorItem"
                c:symbol-prefix="color_item"
                glib:type-name="GstyleColorItem"
                glib:get-type="gstyle_color_item_get_type">
      <constructor name="new" c:identifier="gstyle_color_item_new">
        <doc xml:space="preserve">Return a new #GstyleColorItem.
It must be freed with gstyle_color_item_free().</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">a #GstyleColorItem.</doc>
          <type name="ColorItem" c:type="GstyleColorItem*"/>
        </return-value>
        <parameters>
          <parameter name="color"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve">A #GstyleColor or NULL</doc>
            <type name="Color" c:type="GstyleColor*"/>
          </parameter>
          <parameter name="start" transfer-ownership="none">
            <doc xml:space="preserve">start offset of the item</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="len" transfer-ownership="none">
            <doc xml:space="preserve">length of the item</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </constructor>
      <method name="copy" c:identifier="gstyle_color_item_copy">
        <doc xml:space="preserve">Makes a deep copy of a #GstyleColorItem

The result must be freed with gstyle_color_item_free()
or un-refed with gstyle_color_item_unref().</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">A newly allocated #GstyleColorItem, with the same contents as @self</doc>
          <type name="ColorItem" c:type="GstyleColorItem*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">a #GstyleColorItem</doc>
            <type name="ColorItem" c:type="GstyleColorItem*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="free" c:identifier="gstyle_color_item_free">
        <doc xml:space="preserve">Free a #GstyleColorItem created with gstyle_color_item_copy().</doc>
        <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">a #GstyleColorItem</doc>
            <type name="ColorItem" c:type="GstyleColorItem*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_color" c:identifier="gstyle_color_item_get_color">
        <doc xml:space="preserve">Get the #GstyleColor inside the #GstyleColorItem.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">A #GstyleColor.</doc>
          <type name="Color" c:type="const GstyleColor*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">A #GstyleColorItem</doc>
            <type name="ColorItem" c:type="GstyleColorItem*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_len" c:identifier="gstyle_color_item_get_len">
        <doc xml:space="preserve">Get the size of the #GstyleColorItem.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">the #GstyleColorItem size in bytes.</doc>
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">A #GstyleColorItem</doc>
            <type name="ColorItem" c:type="GstyleColorItem*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_start" c:identifier="gstyle_color_item_get_start">
        <doc xml:space="preserve">Get the start position of the #GstyleColorItem.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">a position in bytes, in the analysed buffer, starting from offset 0.</doc>
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">A #GstyleColorItem</doc>
            <type name="ColorItem" c:type="GstyleColorItem*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="ref" c:identifier="gstyle_color_item_ref">
        <doc xml:space="preserve">Increments the reference count of @self by one.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">@self</doc>
          <type name="ColorItem" c:type="GstyleColorItem*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">An #GstyleColorItem</doc>
            <type name="ColorItem" c:type="GstyleColorItem*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_color" c:identifier="gstyle_color_item_set_color">
        <doc xml:space="preserve">Set the #GstyleColor inside the #GstyleColorItem.</doc>
        <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">A #GstyleColorItem</doc>
            <type name="ColorItem" c:type="GstyleColorItem*"/>
          </instance-parameter>
          <parameter name="color"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve">A #GstyleColor or %NULL</doc>
            <type name="Color" c:type="GstyleColor*"/>
          </parameter>
        </parameters>
      </method>
      <method name="unref" c:identifier="gstyle_color_item_unref">
        <doc xml:space="preserve">Decrements the reference count of @GstyleColorItem by one, freeing the structure
when the reference count reaches zero.</doc>
        <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">An #GstyleColorItem</doc>
            <type name="ColorItem" c:type="GstyleColorItem*"/>
          </instance-parameter>
        </parameters>
      </method>
    </glib:boxed>
    <enumeration name="ColorKind"
                 glib:type-name="GstyleColorKind"
                 glib:get-type="gstyle_color_kind_get_type"
                 c:type="GstyleColorKind">
      <member name="unknow"
              value="0"
              c:identifier="GSTYLE_COLOR_KIND_UNKNOW"
              glib:nick="unknow">
      </member>
      <member name="original"
              value="1"
              c:identifier="GSTYLE_COLOR_KIND_ORIGINAL"
              glib:nick="original">
      </member>
      <member name="rgbhex6"
              value="2"
              c:identifier="GSTYLE_COLOR_KIND_RGB_HEX6"
              glib:nick="rgbhex6">
      </member>
      <member name="rgbhex3"
              value="3"
              c:identifier="GSTYLE_COLOR_KIND_RGB_HEX3"
              glib:nick="rgbhex3">
      </member>
      <member name="rgb"
              value="4"
              c:identifier="GSTYLE_COLOR_KIND_RGB"
              glib:nick="rgb">
      </member>
      <member name="rgbpercent"
              value="5"
              c:identifier="GSTYLE_COLOR_KIND_RGB_PERCENT"
              glib:nick="rgbpercent">
      </member>
      <member name="rgba"
              value="6"
              c:identifier="GSTYLE_COLOR_KIND_RGBA"
              glib:nick="rgba">
      </member>
      <member name="rgbapercent"
              value="7"
              c:identifier="GSTYLE_COLOR_KIND_RGBA_PERCENT"
              glib:nick="rgbapercent">
      </member>
      <member name="hsl"
              value="8"
              c:identifier="GSTYLE_COLOR_KIND_HSL"
              glib:nick="hsl">
      </member>
      <member name="hsla"
              value="9"
              c:identifier="GSTYLE_COLOR_KIND_HSLA"
              glib:nick="hsla">
      </member>
      <member name="predefined"
              value="10"
              c:identifier="GSTYLE_COLOR_KIND_PREDEFINED"
              glib:nick="predefined">
      </member>
    </enumeration>
    <class name="ColorPanel"
           c:symbol-prefix="color_panel"
           c:type="GstyleColorPanel"
           parent="Gtk.Box"
           glib:type-name="GstyleColorPanel"
           glib:get-type="gstyle_color_panel_get_type"
           glib:type-struct="ColorPanelClass">
      <implements name="Atk.ImplementorIface"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.Orientable"/>
      <constructor name="new" c:identifier="gstyle_color_panel_new">
        <return-value transfer-ownership="none">
          <type name="ColorPanel" c:type="GstyleColorPanel*"/>
        </return-value>
      </constructor>
      <method name="get_filter" c:identifier="gstyle_color_panel_get_filter">
        <doc xml:space="preserve">Get the current color filter.</doc>
        <return-value transfer-ownership="none">
          <type name="ColorFilter" c:type="GstyleColorFilter"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">A #GstyleColorPanel.</doc>
            <type name="ColorPanel" c:type="GstyleColorPanel*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_palette_widget"
              c:identifier="gstyle_color_panel_get_palette_widget">
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve">The #GstylePaletteWidget used by the panel.</doc>
          <type name="PaletteWidget" c:type="GstylePaletteWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">A #GstyleColorPanel.</doc>
            <type name="ColorPanel" c:type="GstyleColorPanel*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_rgba" c:identifier="gstyle_color_panel_get_rgba">
        <doc xml:space="preserve">Fill @rgba with the current color plane rgba.</doc>
        <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">A #GstyleColorPanel.</doc>
            <type name="ColorPanel" c:type="GstyleColorPanel*"/>
          </instance-parameter>
          <parameter name="rgba"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="none">
            <doc xml:space="preserve">A #GdkRGBA adress.</doc>
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_xyz" c:identifier="gstyle_color_panel_get_xyz">
        <doc xml:space="preserve">Fill @xyz with the current color plane xyz.</doc>
        <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">A #GstyleColorPanel.</doc>
            <type name="ColorPanel" c:type="GstyleColorPanel*"/>
          </instance-parameter>
          <parameter name="xyz"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve">A #GstyleXYZ adress.</doc>
            <type name="XYZ" c:type="GstyleXYZ*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_filter" c:identifier="gstyle_color_panel_set_filter">
        <doc xml:space="preserve">Set the color filter to use.</doc>
        <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">A #GstyleColorPanel</doc>
            <type name="ColorPanel" c:type="GstyleColorPanel*"/>
          </instance-parameter>
          <parameter name="filter" transfer-ownership="none">
            <doc xml:space="preserve">A #GstyleColorFilter</doc>
            <type name="ColorFilter" c:type="GstyleColorFilter"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_prefs_pages"
              c:identifier="gstyle_color_panel_set_prefs_pages">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="ColorPanel" c:type="GstyleColorPanel*"/>
          </instance-parameter>
          <parameter name="components_page" transfer-ownership="none">
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
          <parameter name="colorstrings_page" transfer-ownership="none">
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
          <parameter name="palettes_page" transfer-ownership="none">
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
          <parameter name="palettes_list_page" transfer-ownership="none">
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_rgba" c:identifier="gstyle_color_panel_set_rgba">
        <doc xml:space="preserve">Set the color plane and sliders to rgba.</doc>
        <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">A #GstyleColorPanel.</doc>
            <type name="ColorPanel" c:type="GstyleColorPanel*"/>
          </instance-parameter>
          <parameter name="rgba" transfer-ownership="none">
            <doc xml:space="preserve">A #GdkRGBA.</doc>
            <type name="Gdk.RGBA" c:type="const GdkRGBA*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_xyz" c:identifier="gstyle_color_panel_set_xyz">
        <doc xml:space="preserve">Set the color plane and sliders to the xyz value.</doc>
        <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">A #GstyleColorPanel.</doc>
            <type name="ColorPanel" c:type="GstyleColorPanel*"/>
          </instance-parameter>
          <parameter name="xyz" transfer-ownership="none">
            <doc xml:space="preserve">A #GstyleXYZ.</doc>
            <type name="XYZ" c:type="const GstyleXYZ*"/>
          </parameter>
        </parameters>
      </method>
      <method name="show_palette"
              c:identifier="gstyle_color_panel_show_palette">
        <doc xml:space="preserve">Show the @palette and update its name in the bar.</doc>
        <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">A #GstyleColorPanel.</doc>
            <type name="ColorPanel" c:type="GstyleColorPanel*"/>
          </instance-parameter>
          <parameter name="palette" transfer-ownership="none">
            <doc xml:space="preserve">A GstylePalette.</doc>
            <type name="Palette" c:type="GstylePalette*"/>
          </parameter>
        </parameters>
      </method>
      <property name="filter"
                writable="1"
                construct="1"
                transfer-ownership="none">
        <type name="ColorFilter"/>
      </property>
      <property name="hsv-visible"
                writable="1"
                construct="1"
                transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="lab-visible"
                writable="1"
                construct="1"
                transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="rgb-unit"
                writable="1"
                construct="1"
                transfer-ownership="none">
        <type name="ColorUnit"/>
      </property>
      <property name="rgb-visible"
                writable="1"
                construct="1"
                transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="rgba"
                writable="1"
                construct="1"
                transfer-ownership="none">
        <type name="Gdk.RGBA"/>
      </property>
      <property name="strings-visible"
                writable="1"
                construct="1"
                transfer-ownership="none">
        <type name="ColorPanelStringsVisibleFlags"/>
      </property>
      <property name="xyz"
                writable="1"
                construct="1"
                transfer-ownership="none">
        <type name="XYZ"/>
      </property>
      <glib:signal name="update-prefs" when="last">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="object" transfer-ownership="none">
            <type name="ColorPanelPrefs"/>
          </parameter>
        </parameters>
      </glib:signal>
    </class>
    <record name="ColorPanelClass"
            c:type="GstyleColorPanelClass"
            glib:is-gtype-struct-for="ColorPanel">
      <field name="parent_class">
        <type name="Gtk.BoxClass" c:type="GtkBoxClass"/>
      </field>
    </record>
    <enumeration name="ColorPanelPrefs"
                 glib:type-name="GstyleColorPanelPrefs"
                 glib:get-type="gstyle_color_panel_prefs_get_type"
                 c:type="GstyleColorPanelPrefs">
      <member name="components"
              value="0"
              c:identifier="GSTYLE_COLOR_PANEL_PREFS_COMPONENTS"
              glib:nick="components">
      </member>
      <member name="colorstrings"
              value="1"
              c:identifier="GSTYLE_COLOR_PANEL_PREFS_COLOR_STRINGS"
              glib:nick="colorstrings">
      </member>
      <member name="palettes"
              value="2"
              c:identifier="GSTYLE_COLOR_PANEL_PREFS_PALETTES"
              glib:nick="palettes">
      </member>
      <member name="paletteslist"
              value="3"
              c:identifier="GSTYLE_COLOR_PANEL_PREFS_PALETTES_LIST"
              glib:nick="paletteslist">
      </member>
    </enumeration>
    <bitfield name="ColorPanelStringsVisibleFlags"
              glib:type-name="GstyleColorPanelStringsVisibleFlags"
              glib:get-type="gstyle_color_panel_strings_visible_flags_get_type"
              c:type="GstyleColorPanelStringsVisibleFlags">
      <member name="none"
              value="0"
              c:identifier="GSTYLE_COLOR_PANEL_STRINGS_VISIBLE_FLAGS_NONE"
              glib:nick="none">
      </member>
      <member name="hex3"
              value="1"
              c:identifier="GSTYLE_COLOR_PANEL_STRINGS_VISIBLE_FLAGS_HEX3"
              glib:nick="hex3">
      </member>
      <member name="hex6"
              value="2"
              c:identifier="GSTYLE_COLOR_PANEL_STRINGS_VISIBLE_FLAGS_HEX6"
              glib:nick="hex6">
      </member>
      <member name="rgb"
              value="4"
              c:identifier="GSTYLE_COLOR_PANEL_STRINGS_VISIBLE_FLAGS_RGB"
              glib:nick="rgb">
      </member>
      <member name="rgba"
              value="8"
              c:identifier="GSTYLE_COLOR_PANEL_STRINGS_VISIBLE_FLAGS_RGBA"
              glib:nick="rgba">
      </member>
      <member name="hsl"
              value="16"
              c:identifier="GSTYLE_COLOR_PANEL_STRINGS_VISIBLE_FLAGS_HSL"
              glib:nick="hsl">
      </member>
      <member name="hsla"
              value="32"
              c:identifier="GSTYLE_COLOR_PANEL_STRINGS_VISIBLE_FLAGS_HSLA"
              glib:nick="hsla">
      </member>
    </bitfield>
    <class name="ColorPlane"
           c:symbol-prefix="color_plane"
           c:type="GstyleColorPlane"
           parent="Gtk.DrawingArea"
           glib:type-name="GstyleColorPlane"
           glib:get-type="gstyle_color_plane_get_type"
           glib:type-struct="ColorPlaneClass">
      <implements name="Atk.ImplementorIface"/>
      <implements name="Gtk.Buildable"/>
      <constructor name="new" c:identifier="gstyle_color_plane_new">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">a new #GstyleColorPlane</doc>
          <type name="ColorPlane" c:type="GstyleColorPlane*"/>
        </return-value>
      </constructor>
      <method name="get_component_adjustment"
              c:identifier="gstyle_color_plane_get_component_adjustment">
        <doc xml:space="preserve">Return the color component adjustment designated by
the #GstyleColorComponent value.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">#GtkAdjustment.</doc>
          <type name="Gtk.Adjustment" c:type="GtkAdjustment*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">A #GstyleColorPlane</doc>
            <type name="ColorPlane" c:type="GstyleColorPlane*"/>
          </instance-parameter>
          <parameter name="comp" transfer-ownership="none">
            <doc xml:space="preserve">A #GstyleColorComponent enum value</doc>
            <type name="ColorComponent" c:type="GstyleColorComponent"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_filter_func"
              c:identifier="gstyle_color_plane_get_filter_func"
              introspectable="0">
        <doc xml:space="preserve">Get a pointer to the current filter function or %NULL
if no filter is actually set.</doc>
        <return-value nullable="1">
          <doc xml:space="preserve">A GstyleColorFilterFunc function pointer.</doc>
          <type name="ColorFilterFunc" c:type="GstyleColorFilterFunc"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">A #GstyleColorPlane</doc>
            <type name="ColorPlane" c:type="GstyleColorPlane*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_filtered_rgba"
              c:identifier="gstyle_color_plane_get_filtered_rgba">
        <doc xml:space="preserve">Fill @rgba with filtered value at cursor position.</doc>
        <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">A #GstyleColorPlane</doc>
            <type name="ColorPlane" c:type="GstyleColorPlane*"/>
          </instance-parameter>
          <parameter name="rgba"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="none">
            <doc xml:space="preserve">A #GdkRGBA adress</doc>
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_rgba" c:identifier="gstyle_color_plane_get_rgba">
        <doc xml:space="preserve">Fill @rgba with value at cursor position.
The alpha component is always equal to 1.</doc>
        <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">A #GstyleColorPlane</doc>
            <type name="ColorPlane" c:type="GstyleColorPlane*"/>
          </instance-parameter>
          <parameter name="rgba"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="none">
            <doc xml:space="preserve">A #GdkRGBA adress</doc>
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_xyz" c:identifier="gstyle_color_plane_get_xyz">
        <doc xml:space="preserve">Fill @xyz with value at cursor position.
The alpha component is always equal to 1.</doc>
        <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">A #GstyleColorPlane</doc>
            <type name="ColorPlane" c:type="GstyleColorPlane*"/>
          </instance-parameter>
          <parameter name="xyz"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve">A #GstyleXYZ adress</doc>
            <type name="XYZ" c:type="GstyleXYZ*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_filter_func"
              c:identifier="gstyle_color_plane_set_filter_func">
        <doc xml:space="preserve">Set a filter to be used to change the drawing of the color plane.</doc>
        <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">A #GstyleColorPlane</doc>
            <type name="ColorPlane" c:type="GstyleColorPlane*"/>
          </instance-parameter>
          <parameter name="filter_cb"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="notified"
                     closure="1">
            <doc xml:space="preserve">A GstyleColorFilterFunc filter function or
  %NULL to unset the current filter. In this case, user_data is ignored</doc>
            <type name="ColorFilterFunc" c:type="GstyleColorFilterFunc"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve">user data to pass when calling the filter function</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_mode" c:identifier="gstyle_color_plane_set_mode">
        <doc xml:space="preserve">Set the displayed mode to use.</doc>
        <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">a #GstyleColorPlane.</doc>
            <type name="ColorPlane" c:type="GstyleColorPlane*"/>
          </instance-parameter>
          <parameter name="mode" transfer-ownership="none">
            <doc xml:space="preserve">a #GstylewColorPlaneMode.</doc>
            <type name="ColorPlaneMode" c:type="GstyleColorPlaneMode"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_preferred_unit"
              c:identifier="gstyle_color_plane_set_preferred_unit">
        <doc xml:space="preserve">Set percent or value  as the preferred unit for rgb adjustment range.
[0, 100] for percent unit or [0, 255] for value.</doc>
        <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">A #GstyleColorPlane</doc>
            <type name="ColorPlane" c:type="GstyleColorPlane*"/>
          </instance-parameter>
          <parameter name="preferred_unit" transfer-ownership="none">
            <doc xml:space="preserve">A #GstyleColorUnit enum value</doc>
            <type name="ColorUnit" c:type="GstyleColorUnit"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_rgba" c:identifier="gstyle_color_plane_set_rgba">
        <doc xml:space="preserve">Set cursor position from @rgba value.</doc>
        <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">A #GstyleColorPlane</doc>
            <type name="ColorPlane" c:type="GstyleColorPlane*"/>
          </instance-parameter>
          <parameter name="rgba" transfer-ownership="none">
            <doc xml:space="preserve">A #GdkRGBA</doc>
            <type name="Gdk.RGBA" c:type="const GdkRGBA*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_xyz" c:identifier="gstyle_color_plane_set_xyz">
        <doc xml:space="preserve">Set cursor position from @rgba value.</doc>
        <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">A #GstyleColorPlane.</doc>
            <type name="ColorPlane" c:type="GstyleColorPlane*"/>
          </instance-parameter>
          <parameter name="xyz" transfer-ownership="none">
            <doc xml:space="preserve">A #GstyleXYZ struct.</doc>
            <type name="XYZ" c:type="const GstyleXYZ*"/>
          </parameter>
        </parameters>
      </method>
      <property name="mode"
                writable="1"
                construct="1"
                transfer-ownership="none">
        <type name="ColorPlaneMode"/>
      </property>
      <property name="rgba"
                writable="1"
                construct="1"
                transfer-ownership="none">
        <type name="Gdk.RGBA"/>
      </property>
      <property name="xyz"
                writable="1"
                construct="1"
                transfer-ownership="none">
        <type name="XYZ"/>
      </property>
      <field name="parent_instance">
        <type name="Gtk.DrawingArea" c:type="GtkDrawingArea"/>
      </field>
    </class>
    <record name="ColorPlaneClass"
            c:type="GstyleColorPlaneClass"
            glib:is-gtype-struct-for="ColorPlane">
      <field name="parent">
        <type name="Gtk.DrawingAreaClass" c:type="GtkDrawingAreaClass"/>
      </field>
    </record>
    <enumeration name="ColorPlaneMode"
                 glib:type-name="GstyleColorPlaneMode"
                 glib:get-type="gstyle_color_plane_mode_get_type"
                 c:type="GstyleColorPlaneMode">
      <member name="hue"
              value="0"
              c:identifier="GSTYLE_COLOR_PLANE_MODE_HUE"
              glib:nick="hue">
      </member>
      <member name="saturation"
              value="1"
              c:identifier="GSTYLE_COLOR_PLANE_MODE_SATURATION"
              glib:nick="saturation">
      </member>
      <member name="brightness"
              value="2"
              c:identifier="GSTYLE_COLOR_PLANE_MODE_BRIGHTNESS"
              glib:nick="brightness">
      </member>
      <member name="cielab_l"
              value="3"
              c:identifier="GSTYLE_COLOR_PLANE_MODE_CIELAB_L"
              glib:nick="cielab-l">
      </member>
      <member name="cielab_a"
              value="4"
              c:identifier="GSTYLE_COLOR_PLANE_MODE_CIELAB_A"
              glib:nick="cielab-a">
      </member>
      <member name="cielab_b"
              value="5"
              c:identifier="GSTYLE_COLOR_PLANE_MODE_CIELAB_B"
              glib:nick="cielab-b">
      </member>
      <member name="red"
              value="6"
              c:identifier="GSTYLE_COLOR_PLANE_MODE_RED"
              glib:nick="red">
      </member>
      <member name="green"
              value="7"
              c:identifier="GSTYLE_COLOR_PLANE_MODE_GREEN"
              glib:nick="green">
      </member>
      <member name="blue"
              value="8"
              c:identifier="GSTYLE_COLOR_PLANE_MODE_BLUE"
              glib:nick="blue">
      </member>
    </enumeration>
    <class name="ColorScale"
           c:symbol-prefix="color_scale"
           c:type="GstyleColorScale"
           parent="Gtk.Scale"
           glib:type-name="GstyleColorScale"
           glib:get-type="gstyle_color_scale_get_type"
           glib:type-struct="ColorScaleClass">
      <implements name="Atk.ImplementorIface"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.Orientable"/>
      <constructor name="new" c:identifier="gstyle_color_scale_new">
        <return-value transfer-ownership="none">
          <type name="ColorScale" c:type="GstyleColorScale*"/>
        </return-value>
        <parameters>
          <parameter name="adjustment" transfer-ownership="none">
            <type name="Gtk.Adjustment" c:type="GtkAdjustment*"/>
          </parameter>
        </parameters>
      </constructor>
      <method name="add_color_stop"
              c:identifier="gstyle_color_scale_add_color_stop">
        <doc xml:space="preserve">Set a color stop for the #GstyleColorScale.
If there's no color stop at offset 0, a black opaque color stop is automatically added.
If there's no color stop at offset 1, a white opaque color stop is automatically added.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">the id of the color stop or -1 if there's an existing
stop color at the same offset</doc>
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">A #GstyleColorScale</doc>
            <type name="ColorScale" c:type="GstyleColorScale*"/>
          </instance-parameter>
          <parameter name="offset" transfer-ownership="none">
            <doc xml:space="preserve">position in the range [0, 1] of the color stop</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="red" transfer-ownership="none">
            <doc xml:space="preserve">red component of the color stop</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="green" transfer-ownership="none">
            <doc xml:space="preserve">red component of the color stop</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="blue" transfer-ownership="none">
            <doc xml:space="preserve">red component of the color stop</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="alpha" transfer-ownership="none">
            <doc xml:space="preserve">red component of the color stop</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_rgba_color_stop"
              c:identifier="gstyle_color_scale_add_rgba_color_stop">
        <doc xml:space="preserve">Set a color stop for the color scale.
If there's no color stop at offset 0, a black opaque color stop is automatically added.
If there's no color stop at offset 1, a white opaque color stop is automatically added.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">the id of the color stop or -1 if there's an existing
stop color at the same offset</doc>
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">A #GstyleColorScale</doc>
            <type name="ColorScale" c:type="GstyleColorScale*"/>
          </instance-parameter>
          <parameter name="offset" transfer-ownership="none">
            <doc xml:space="preserve">position in the range [0, 1] of the color stop</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="rgba" transfer-ownership="none">
            <doc xml:space="preserve">A #GdkRGBA</doc>
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
        </parameters>
      </method>
      <method name="clear_color_stops"
              c:identifier="gstyle_color_scale_clear_color_stops">
        <doc xml:space="preserve">CLear all the color stops from the color scale.</doc>
        <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">A #GstyleColorScale</doc>
            <type name="ColorScale" c:type="GstyleColorScale*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_filter_func"
              c:identifier="gstyle_color_scale_get_filter_func"
              introspectable="0">
        <doc xml:space="preserve">Get a pointer to the current filter function or %NULL
if no filter is actually set.</doc>
        <return-value nullable="1">
          <doc xml:space="preserve">A GstyleColorFilterFunc function pointer.</doc>
          <type name="ColorFilterFunc" c:type="GstyleColorFilterFunc"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">A #GstyleColorScale</doc>
            <type name="ColorScale" c:type="GstyleColorScale*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_kind" c:identifier="gstyle_color_scale_get_kind">
        <doc xml:space="preserve">Get the kind of gradient displayed in the scale.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">a #GstyleColorKind.</doc>
          <type name="ColorScaleKind" c:type="GstyleColorScaleKind"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">A #GstyleColorScale</doc>
            <type name="ColorScale" c:type="GstyleColorScale*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="remove_color_stop"
              c:identifier="gstyle_color_scale_remove_color_stop">
        <doc xml:space="preserve">Remove an existing color stop for the color scale.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">%TRUE if the color stop exist and is removed, %FALSE otherwise.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">A #GstyleColorScale</doc>
            <type name="ColorScale" c:type="GstyleColorScale*"/>
          </instance-parameter>
          <parameter name="id" transfer-ownership="none">
            <doc xml:space="preserve">id of a color stop as returned by gstyle_color_scale_add_* functions</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_custom_data"
              c:identifier="gstyle_color_scale_set_custom_data">
        <doc xml:space="preserve">Set the data used to draw the color ramp if your have
GSTYLE_COLOR_SCALE_KIND_CUSTOM_DATA kind selected.

the location point to a memory array of 256 contiguous pixels
using the CAIRO_FORMAT_RGB24 format (so 256 * 4 bytes)
This result in using an guint32 for each pixel.</doc>
        <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">A #GstyleColorScale</doc>
            <type name="ColorScale" c:type="GstyleColorScale*"/>
          </instance-parameter>
          <parameter name="data" transfer-ownership="none">
            <doc xml:space="preserve">data location</doc>
            <type name="guint32" c:type="guint32*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_filter_func"
              c:identifier="gstyle_color_scale_set_filter_func">
        <doc xml:space="preserve">Set a filter to be used to change the drawing of the color scale
when kind is set to custom-data (GSTYLE_COLOR_SCALE_KIND_CUSTOM_DATA)
The data are filtered just after calling gstyle_color_scale_set_custom_data.
So that if you remove or change the filter, you need to call it again.</doc>
        <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">A #GstyleColorScale</doc>
            <type name="ColorScale" c:type="GstyleColorScale*"/>
          </instance-parameter>
          <parameter name="filter_cb"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="notified"
                     closure="1">
            <doc xml:space="preserve">A GstyleColorFilterFunc filter function or
  %NULL to unset the current filter. In this case, user_data is ignored.</doc>
            <type name="ColorFilterFunc" c:type="GstyleColorFilterFunc"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve">user data to pass when calling the filter function</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_kind" c:identifier="gstyle_color_scale_set_kind">
        <doc xml:space="preserve">Set the kind of gradient displayed in the scale.
If you set the kind to GSTYLE_COLOR_SCALE_KIND_CUSTOM_STOPS,
all the previously added color stops are cleared.

if you set the kind to GSTYLE_COLOR_SCALE_KIND_CUSTOM_DATA,
the previous data are freed.</doc>
        <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">A #GstyleColorScale</doc>
            <type name="ColorScale" c:type="GstyleColorScale*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve">A #GstyleColorKind</doc>
            <type name="ColorScaleKind" c:type="GstyleColorScaleKind"/>
          </parameter>
        </parameters>
      </method>
      <property name="kind"
                writable="1"
                construct="1"
                transfer-ownership="none">
        <type name="ColorScaleKind"/>
      </property>
    </class>
    <record name="ColorScaleClass"
            c:type="GstyleColorScaleClass"
            glib:is-gtype-struct-for="ColorScale">
      <field name="parent_class">
        <type name="Gtk.ScaleClass" c:type="GtkScaleClass"/>
      </field>
    </record>
    <enumeration name="ColorScaleKind"
                 glib:type-name="GstyleColorScaleKind"
                 glib:get-type="gstyle_color_scale_kind_get_type"
                 c:type="GstyleColorScaleKind">
      <member name="hue"
              value="0"
              c:identifier="GSTYLE_COLOR_SCALE_KIND_HUE"
              glib:nick="hue">
      </member>
      <member name="grey"
              value="1"
              c:identifier="GSTYLE_COLOR_SCALE_KIND_GREY"
              glib:nick="grey">
      </member>
      <member name="alpha"
              value="2"
              c:identifier="GSTYLE_COLOR_SCALE_KIND_ALPHA"
              glib:nick="alpha">
      </member>
      <member name="red"
              value="3"
              c:identifier="GSTYLE_COLOR_SCALE_KIND_RED"
              glib:nick="red">
      </member>
      <member name="green"
              value="4"
              c:identifier="GSTYLE_COLOR_SCALE_KIND_GREEN"
              glib:nick="green">
      </member>
      <member name="blue"
              value="5"
              c:identifier="GSTYLE_COLOR_SCALE_KIND_BLUE"
              glib:nick="blue">
      </member>
      <member name="custom_stops"
              value="6"
              c:identifier="GSTYLE_COLOR_SCALE_KIND_CUSTOM"
              glib:nick="custom-stops">
      </member>
      <member name="custom_data"
              value="7"
              c:identifier="GSTYLE_COLOR_SCALE_KIND_CUSTOM"
              glib:nick="custom-data">
      </member>
    </enumeration>
    <enumeration name="ColorUnit"
                 glib:type-name="GstyleColorUnit"
                 glib:get-type="gstyle_color_unit_get_type"
                 c:type="GstyleColorUnit">
      <member name="none"
              value="0"
              c:identifier="GSTYLE_COLOR_UNIT_NONE"
              glib:nick="none">
      </member>
      <member name="percent"
              value="1"
              c:identifier="GSTYLE_COLOR_UNIT_PERCENT"
              glib:nick="percent">
      </member>
      <member name="value"
              value="2"
              c:identifier="GSTYLE_COLOR_UNIT_VALUE"
              glib:nick="value">
      </member>
    </enumeration>
    <class name="ColorWidget"
           c:symbol-prefix="color_widget"
           c:type="GstyleColorWidget"
           parent="Gtk.Bin"
           glib:type-name="GstyleColorWidget"
           glib:get-type="gstyle_color_widget_get_type"
           glib:type-struct="ColorWidgetClass">
      <implements name="Atk.ImplementorIface"/>
      <implements name="Gtk.Buildable"/>
      <constructor name="new" c:identifier="gstyle_color_widget_new">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">A new #GstyleColorWidget.</doc>
          <type name="ColorWidget" c:type="GstyleColorWidget*"/>
        </return-value>
      </constructor>
      <constructor name="new_with_color"
                   c:identifier="gstyle_color_widget_new_with_color">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">A new #GstyleColorWidget.with @color affected.</doc>
          <type name="ColorWidget" c:type="GstyleColorWidget*"/>
        </return-value>
        <parameters>
          <parameter name="color" transfer-ownership="none">
            <doc xml:space="preserve">A #GstyleColor</doc>
            <type name="Color" c:type="GstyleColor*"/>
          </parameter>
        </parameters>
      </constructor>
      <method name="copy" c:identifier="gstyle_color_widget_copy">
        <doc xml:space="preserve">Copy the given ##GstyleColorWidget.
Notice that the underlaying #GstyleColor is shared
between the two widgets (the copy increase the ref count)</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">a new #GstyleColorWidget.</doc>
          <type name="ColorWidget" c:type="GstyleColorWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">A #GstyleColorWidget</doc>
            <type name="ColorWidget" c:type="GstyleColorWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_color" c:identifier="gstyle_color_widget_get_color">
        <doc xml:space="preserve">Get the #GstyleColor of the #GstyleColorWidget.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">The current affected #GstyleColor.</doc>
          <type name="Color" c:type="GstyleColor*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">a #GstyleColorWidget</doc>
            <type name="ColorWidget" c:type="GstyleColorWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_fallback_name_kind"
              c:identifier="gstyle_color_widget_get_fallback_name_kind">
        <doc xml:space="preserve">Get the kind of the #GstyleColorWidget fallback name.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">the #GstyleColorKind used for the fallback name.</doc>
          <type name="ColorKind" c:type="GstyleColorKind"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">a #GstyleColorWidget</doc>
            <type name="ColorWidget" c:type="GstyleColorWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_fallback_name_visible"
              c:identifier="gstyle_color_widget_get_fallback_name_visible">
        <doc xml:space="preserve">Get the visibily of the #GstyleColorWidget fallback name.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">%TRUE if the name should be visible, %FALSE otherwise.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">a #GstyleColorWidget</doc>
            <type name="ColorWidget" c:type="GstyleColorWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_filter_func"
              c:identifier="gstyle_color_widget_get_filter_func"
              introspectable="0">
        <doc xml:space="preserve">Get a pointer to the current filter function or %NULL
if no filter is actually set.</doc>
        <return-value nullable="1">
          <doc xml:space="preserve">A GstyleColorFilterFunc function pointer.</doc>
          <type name="ColorFilterFunc" c:type="GstyleColorFilterFunc"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">A #GstyleColorPlane</doc>
            <type name="ColorWidget" c:type="GstyleColorWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_filtered_color"
              c:identifier="gstyle_color_widget_get_filtered_color">
        <doc xml:space="preserve">If a #GstyleColorFilterFunc is set, Get the filtered #GstyleColor
of the #GstyleColorWidget, otherwise, get the regular #GstyleColor.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">The affected #GstyleColor or filtered one.</doc>
          <type name="Color" c:type="GstyleColor*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">a #GstyleColorWidget</doc>
            <type name="ColorWidget" c:type="GstyleColorWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_name_visible"
              c:identifier="gstyle_color_widget_get_name_visible">
        <doc xml:space="preserve">Get the visibily of the #GstyleColorWidget name.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">%TRUE if the name should be visible, %FALSE otherwise.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">a #GstyleColorWidget</doc>
            <type name="ColorWidget" c:type="GstyleColorWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_color" c:identifier="gstyle_color_widget_set_color">
        <doc xml:space="preserve">Set the #GstyleColor for the #GstyleColorWidget.</doc>
        <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">A #GstyleColorWidget</doc>
            <type name="ColorWidget" c:type="GstyleColorWidget*"/>
          </instance-parameter>
          <parameter name="color"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve">A #GstyleColor or %NULL</doc>
            <type name="Color" c:type="GstyleColor*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_fallback_name_kind"
              c:identifier="gstyle_color_widget_set_fallback_name_kind">
        <doc xml:space="preserve">Set the kind of the #GstyleColorWidget fallback name.</doc>
        <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">a #GstyleColorWidget</doc>
            <type name="ColorWidget" c:type="GstyleColorWidget*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve">a #GstyleColorKind</doc>
            <type name="ColorKind" c:type="GstyleColorKind"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_fallback_name_visible"
              c:identifier="gstyle_color_widget_set_fallback_name_visible">
        <doc xml:space="preserve">Set the visibily of the #GstyleColorWidget fallback name.</doc>
        <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">a #GstyleColorWidget</doc>
            <type name="ColorWidget" c:type="GstyleColorWidget*"/>
          </instance-parameter>
          <parameter name="visible" transfer-ownership="none">
            <doc xml:space="preserve">fallback name visibility</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_filter_func"
              c:identifier="gstyle_color_widget_set_filter_func">
        <doc xml:space="preserve">Set a filter to be used to change the color drawn.</doc>
        <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">A #GstyleColorPlane</doc>
            <type name="ColorWidget" c:type="GstyleColorWidget*"/>
          </instance-parameter>
          <parameter name="filter_func"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="notified"
                     closure="1">
            <doc xml:space="preserve">A GstyleColorFilterFunc filter function or
  %NULL to unset the current filter. In this case, user_data is ignored</doc>
            <type name="ColorFilterFunc" c:type="GstyleColorFilterFunc"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve">user data to pass when calling the filter function</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_name_visible"
              c:identifier="gstyle_color_widget_set_name_visible">
        <doc xml:space="preserve">Set the visibily of the #GstyleColorWidget name.</doc>
        <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">a #GstyleColorWidget</doc>
            <type name="ColorWidget" c:type="GstyleColorWidget*"/>
          </instance-parameter>
          <parameter name="visible" transfer-ownership="none">
            <doc xml:space="preserve">name visibility</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <property name="color"
                writable="1"
                construct="1"
                transfer-ownership="none">
        <type name="Color"/>
      </property>
      <property name="dnd-lock"
                writable="1"
                construct="1"
                transfer-ownership="none">
        <type name="ColorWidgetDndLockFlags"/>
      </property>
      <property name="fallback-name-kind"
                writable="1"
                construct="1"
                transfer-ownership="none">
        <type name="ColorKind"/>
      </property>
      <property name="fallback-name-visible"
                writable="1"
                construct="1"
                transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="name-visible"
                writable="1"
                construct="1"
                transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </property>
    </class>
    <record name="ColorWidgetClass"
            c:type="GstyleColorWidgetClass"
            glib:is-gtype-struct-for="ColorWidget">
      <field name="parent_class">
        <type name="Gtk.BinClass" c:type="GtkBinClass"/>
      </field>
    </record>
    <bitfield name="ColorWidgetDndLockFlags"
              glib:type-name="GstyleColorWidgetDndLockFlags"
              glib:get-type="gstyle_color_widget_dnd_lock_flags_get_type"
              c:type="GstyleColorWidgetDndLockFlags">
      <member name="none"
              value="0"
              c:identifier="GSTYLE_COLOR_WIDGET_DND_LOCK_FLAGS_NONE"
              glib:nick="none">
      </member>
      <member name="kind"
              value="1"
              c:identifier="GSTYLE_COLOR_WIDGET_DND_LOCK_FLAGS_KIND"
              glib:nick="kind">
      </member>
      <member name="name"
              value="2"
              c:identifier="GSTYLE_COLOR_WIDGET_DND_LOCK_FLAGS_NAME"
              glib:nick="name">
      </member>
      <member name="alpha"
              value="4"
              c:identifier="GSTYLE_COLOR_WIDGET_DND_LOCK_FLAGS_ALPHA"
              glib:nick="alpha">
      </member>
      <member name="COLOR"
              value="8"
              c:identifier="GSTYLE_COLOR_WIDGET_DND_LOCK_FLAGS_COLOR"
              glib:nick="COLOR">
      </member>
      <member name="all"
              value="15"
              c:identifier="GSTYLE_COLOR_WIDGET_DND_LOCK_FLAGS_ALL"
              glib:nick="all">
      </member>
    </bitfield>
    <class name="Eyedropper"
           c:symbol-prefix="eyedropper"
           c:type="GstyleEyedropper"
           parent="Gtk.Window"
           glib:type-name="GstyleEyedropper"
           glib:get-type="gstyle_eyedropper_get_type"
           glib:type-struct="EyedropperClass">
      <implements name="Atk.ImplementorIface"/>
      <implements name="Gtk.Buildable"/>
      <constructor name="new" c:identifier="gstyle_eyedropper_new">
        <return-value transfer-ownership="none">
          <type name="Eyedropper" c:type="GstyleEyedropper*"/>
        </return-value>
        <parameters>
          <parameter name="event" transfer-ownership="none">
            <type name="Gdk.Event" c:type="GdkEvent*"/>
          </parameter>
        </parameters>
      </constructor>
      <property name="source-event"
                readable="0"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="Gdk.Event"/>
      </property>
      <glib:signal name="color-picked" when="last">
        <doc xml:space="preserve">This signal is emitted when you click to pick a color.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="rgba" transfer-ownership="none">
            <doc xml:space="preserve">a #GdkRGBA color.</doc>
            <type name="Gdk.RGBA"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="grab-released" when="last">
        <doc xml:space="preserve">This signal is emitted when you release the grab by hitting 'Esc'.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
    </class>
    <record name="EyedropperClass"
            c:type="GstyleEyedropperClass"
            glib:is-gtype-struct-for="Eyedropper">
      <field name="parent_class">
        <type name="Gtk.WindowClass" c:type="GtkWindowClass"/>
      </field>
    </record>
    <glib:boxed glib:name="HSV"
                c:symbol-prefix="hsv"
                glib:type-name="GstyleHSV"
                glib:get-type="gstyle_hsv_get_type">
      <method name="copy" c:identifier="gstyle_hsv_copy">
        <doc xml:space="preserve">Makes a copy of a #GstyleHSV

The result must be freed through gstyle_hsv_free().</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">a newly allocated #GstyleHSV with the same content as @self.</doc>
          <type name="HSV" c:type="GstyleHSV*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">a #GstyleHSV</doc>
            <type name="HSV" c:type="const GstyleHSV*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="free" c:identifier="gstyle_hsv_free">
        <doc xml:space="preserve">Frees a #GstyleHSV created with gstyle_hsv_copy().</doc>
        <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">a #GstyleHSV</doc>
            <type name="HSV" c:type="GstyleHSV*"/>
          </instance-parameter>
        </parameters>
      </method>
    </glib:boxed>
    <class name="Palette"
           c:symbol-prefix="palette"
           c:type="GstylePalette"
           parent="GObject.Object"
           glib:type-name="GstylePalette"
           glib:get-type="gstyle_palette_get_type"
           glib:type-struct="PaletteClass">
      <implements name="Gio.ListModel"/>
      <constructor name="new" c:identifier="gstyle_palette_new">
        <return-value transfer-ownership="full">
          <type name="Palette" c:type="GstylePalette*"/>
        </return-value>
      </constructor>
      <constructor name="new_from_buffer"
                   c:identifier="gstyle_palette_new_from_buffer"
                   throws="1">
        <doc xml:space="preserve">Create a new #GstylePalette from a text buffer.
if @begin is %NULL, the buffer start iter is used.
if @end is %NULL, the buffer end is used.</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">A #GstylePalette or %NULL if an error occur.</doc>
          <type name="Palette" c:type="GstylePalette*"/>
        </return-value>
        <parameters>
          <parameter name="buffer" transfer-ownership="none">
            <doc xml:space="preserve">a #GtkTextBUffer</doc>
            <type name="Gtk.TextBuffer" c:type="GtkTextBuffer*"/>
          </parameter>
          <parameter name="begin"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve">a begin #GtkTextIter</doc>
            <type name="Gtk.TextIter" c:type="GtkTextIter*"/>
          </parameter>
          <parameter name="end"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve">a end #GtkTextIter</doc>
            <type name="Gtk.TextIter" c:type="GtkTextIter*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve">A #GCancellable</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_from_file"
                   c:identifier="gstyle_palette_new_from_file"
                   throws="1">
        <doc xml:space="preserve">Load a palette from an .xml or .gpl file.</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">A #GstylePalette.</doc>
          <type name="Palette" c:type="GstylePalette*"/>
        </return-value>
        <parameters>
          <parameter name="file" transfer-ownership="none">
            <doc xml:space="preserve">a #GFile</doc>
            <type name="Gio.File" c:type="GFile*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve">A #GCancellable</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </constructor>
      <function name="error_quark" c:identifier="gstyle_palette_error_quark">
        <return-value transfer-ownership="none">
          <type name="GLib.Quark" c:type="GQuark"/>
        </return-value>
      </function>
      <method name="add" c:identifier="gstyle_palette_add" throws="1">
        <doc xml:space="preserve">Add a #GstyleColor to the palette.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">%TRUE on succes, %FALSE otherwise.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">a #GstylePalette</doc>
            <type name="Palette" c:type="GstylePalette*"/>
          </instance-parameter>
          <parameter name="color" transfer-ownership="none">
            <doc xml:space="preserve">A #GstyleColor</doc>
            <type name="Color" c:type="GstyleColor*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_at_index"
              c:identifier="gstyle_palette_add_at_index"
              throws="1">
        <doc xml:space="preserve">Add a #GstyleColor to the palette.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">%TRUE on succes, %FALSE otherwise.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">a #GstylePalette</doc>
            <type name="Palette" c:type="GstylePalette*"/>
          </instance-parameter>
          <parameter name="color" transfer-ownership="none">
            <doc xml:space="preserve">A #GstyleColor</doc>
            <type name="Color" c:type="GstyleColor*"/>
          </parameter>
          <parameter name="position" transfer-ownership="none">
            <doc xml:space="preserve">Position to insert the new color, from 0 to gstyle_palette_get_len() -1,
  or -1 to append it</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_changed" c:identifier="gstyle_palette_get_changed">
        <doc xml:space="preserve">Return the changed state of the palette.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">Changed state.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">a #GstylePalette</doc>
            <type name="Palette" c:type="GstylePalette*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_color_at_index"
              c:identifier="gstyle_palette_get_color_at_index">
        <doc xml:space="preserve">Return the #gstyleColor at @index position
or %NULL if the index is out of bounds.</doc>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve">a #GstyleColor.</doc>
          <type name="Color" c:type="const GstyleColor*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">a #GstylePalette</doc>
            <type name="Palette" c:type="GstylePalette*"/>
          </instance-parameter>
          <parameter name="index" transfer-ownership="none">
            <doc xml:space="preserve">position of the #GstyleColor to get</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_colors" c:identifier="gstyle_palette_get_colors">
        <doc xml:space="preserve">Return an array of colors contained in the palette.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">a #GPtrArray of #GstyleColor.</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="Color"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">a #GstylePalette</doc>
            <type name="Palette" c:type="GstylePalette*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_file" c:identifier="gstyle_palette_get_file">
        <doc xml:space="preserve">Return the #GFile used to create the palette.</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">a #GFile.</doc>
          <type name="Gio.File" c:type="GFile*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">a #GstylePalette</doc>
            <type name="Palette" c:type="GstylePalette*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_id" c:identifier="gstyle_palette_get_id">
        <doc xml:space="preserve">Return the palette id.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">The palette id string.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">a #GstylePalette</doc>
            <type name="Palette" c:type="GstylePalette*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_index" c:identifier="gstyle_palette_get_index">
        <doc xml:space="preserve">Search for a #GstyleColor in the palette and
return its index or -1 if not found.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">An index in the palette or -1.</doc>
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">a #GstylePalette</doc>
            <type name="Palette" c:type="GstylePalette*"/>
          </instance-parameter>
          <parameter name="color" transfer-ownership="none">
            <doc xml:space="preserve">A #GstyleColor</doc>
            <type name="Color" c:type="GstyleColor*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_len" c:identifier="gstyle_palette_get_len">
        <doc xml:space="preserve">Return The number of colors in the palette.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">Palette's length.</doc>
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">a #GstylePalette</doc>
            <type name="Palette" c:type="GstylePalette*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_name" c:identifier="gstyle_palette_get_name">
        <doc xml:space="preserve">Return the name of the palette.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">The palette's name.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">a #GstylePalette</doc>
            <type name="Palette" c:type="GstylePalette*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="lookup" c:identifier="gstyle_palette_lookup">
        <doc xml:space="preserve">Search for one or several #GstyleColor named @name in the palette.</doc>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve">a #GstyleColor pointer array.</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="Color"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">a #GstylePalette</doc>
            <type name="Palette" c:type="GstylePalette*"/>
          </instance-parameter>
          <parameter name="name" transfer-ownership="none">
            <doc xml:space="preserve">A #GstyleColor name</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="remove" c:identifier="gstyle_palette_remove">
        <doc xml:space="preserve">Try to remove a #GstyleColor from the palette.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">%TRUE on succes, %FALSE otherwise.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">a #GstylePalette</doc>
            <type name="Palette" c:type="GstylePalette*"/>
          </instance-parameter>
          <parameter name="color" transfer-ownership="none">
            <doc xml:space="preserve">A #GstyleColor</doc>
            <type name="Color" c:type="GstyleColor*"/>
          </parameter>
        </parameters>
      </method>
      <method name="remove_at_index"
              c:identifier="gstyle_palette_remove_at_index">
        <doc xml:space="preserve">Try to remove the #GstyleColor at @position from the palette</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">%TRUE on succes, %FALSE otherwise.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">a #GstylePalette</doc>
            <type name="Palette" c:type="GstylePalette*"/>
          </instance-parameter>
          <parameter name="position" transfer-ownership="none">
            <doc xml:space="preserve">A position to remove the #GstyleColor from</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </method>
      <method name="save_to_xml"
              c:identifier="gstyle_palette_save_to_xml"
              throws="1">
        <doc xml:space="preserve">Save a palette to Gnome-Builder .xml palette format.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">%TRUE if succesfull, %FALSE otherwise.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">a #GstylePalette</doc>
            <type name="Palette" c:type="GstylePalette*"/>
          </instance-parameter>
          <parameter name="file" transfer-ownership="none">
            <doc xml:space="preserve">a #GFile</doc>
            <type name="Gio.File" c:type="GFile*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_changed" c:identifier="gstyle_palette_set_changed">
        <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">a #GstylePalette</doc>
            <type name="Palette" c:type="GstylePalette*"/>
          </instance-parameter>
          <parameter name="changed" transfer-ownership="none">
            <doc xml:space="preserve">changed state</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_id" c:identifier="gstyle_palette_set_id">
        <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">a #GstylePalette</doc>
            <type name="Palette" c:type="GstylePalette*"/>
          </instance-parameter>
          <parameter name="id" transfer-ownership="none">
            <doc xml:space="preserve">palette id</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_name" c:identifier="gstyle_palette_set_name">
        <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">a #GstylePalette</doc>
            <type name="Palette" c:type="GstylePalette*"/>
          </instance-parameter>
          <parameter name="name" transfer-ownership="none">
            <doc xml:space="preserve">palette name</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <property name="changed" writable="1" transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="colors" transfer-ownership="none">
        <type name="Gio.File"/>
      </property>
      <property name="domain"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="file"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="Gio.File"/>
      </property>
      <property name="id" writable="1" construct="1" transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="len" transfer-ownership="none">
        <type name="guint" c:type="guint"/>
      </property>
      <property name="name"
                writable="1"
                construct="1"
                transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
    </class>
    <record name="PaletteClass"
            c:type="GstylePaletteClass"
            glib:is-gtype-struct-for="Palette">
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
    </record>
    <enumeration name="PaletteError" c:type="GstylePaletteError">
      <member name="dup_color_name"
              value="0"
              c:identifier="GSTYLE_PALETTE_ERROR_DUP_COLOR_NAME">
      </member>
      <member name="empty" value="1" c:identifier="GSTYLE_PALETTE_ERROR_EMPTY">
      </member>
      <member name="file" value="2" c:identifier="GSTYLE_PALETTE_ERROR_FILE">
      </member>
      <member name="format"
              value="3"
              c:identifier="GSTYLE_PALETTE_ERROR_FORMAT">
      </member>
      <member name="parse" value="4" c:identifier="GSTYLE_PALETTE_ERROR_PARSE">
      </member>
    </enumeration>
    <class name="PaletteWidget"
           c:symbol-prefix="palette_widget"
           c:type="GstylePaletteWidget"
           parent="Gtk.Bin"
           glib:type-name="GstylePaletteWidget"
           glib:get-type="gstyle_palette_widget_get_type"
           glib:type-struct="PaletteWidgetClass">
      <implements name="Atk.ImplementorIface"/>
      <implements name="Gtk.Buildable"/>
      <constructor name="new" c:identifier="gstyle_palette_widget_new">
        <doc xml:space="preserve">Create a new #GstylePaletteWidget.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">A #GstylePaletteWidget.</doc>
          <type name="PaletteWidget" c:type="GstylePaletteWidget*"/>
        </return-value>
      </constructor>
      <method name="add" c:identifier="gstyle_palette_widget_add">
        <doc xml:space="preserve">Add @palette to the widget list.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">%TRUE on succes, %FALSE if @palette is already in the list.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">A #GstylePaletteWidget</doc>
            <type name="PaletteWidget" c:type="GstylePaletteWidget*"/>
          </instance-parameter>
          <parameter name="palette" transfer-ownership="none">
            <doc xml:space="preserve">A #GstylePalette</doc>
            <type name="Palette" c:type="GstylePalette*"/>
          </parameter>
        </parameters>
      </method>
      <method name="fuzzy_parse_color_string"
              c:identifier="gstyle_palette_widget_fuzzy_parse_color_string">
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">A #GPtrArray of #GstyleColor for a fuzzy search.</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="Color"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="PaletteWidget" c:type="GstylePaletteWidget*"/>
          </instance-parameter>
          <parameter name="color_string" transfer-ownership="none">
            <doc xml:space="preserve">color name to search for</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_dnd_lock"
              c:identifier="gstyle_palette_widget_get_dnd_lock">
        <doc xml:space="preserve">Get the dnd lock flags of the palette widget.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">The #GstylePaletteWidgetDndLockFlags.</doc>
          <type name="PaletteWidgetDndLockFlags"
                c:type="GstylePaletteWidgetDndLockFlags"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">A #GstylePaletteWidget</doc>
            <type name="PaletteWidget" c:type="GstylePaletteWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_list" c:identifier="gstyle_palette_widget_get_list">
        <doc xml:space="preserve">Return a #GList of the palettes.</doc>
        <return-value transfer-ownership="container">
          <doc xml:space="preserve">#GList of #GstylePalette.</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="Palette"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">A #GstylePaletteWidget</doc>
            <type name="PaletteWidget" c:type="GstylePaletteWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_n_palettes"
              c:identifier="gstyle_palette_widget_get_n_palettes">
        <doc xml:space="preserve">Get the number of #GstylePalette in the palettes list.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">number of palettes in the list.</doc>
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">A #GstylePaletteWidget</doc>
            <type name="PaletteWidget" c:type="GstylePaletteWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_palette_at_index"
              c:identifier="gstyle_palette_widget_get_palette_at_index">
        <doc xml:space="preserve">Get the #GstylePalette ref at position @index in the palettes list.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">A #GstylePalette or %NULL if index is out of bounds.</doc>
          <type name="Palette" c:type="GstylePalette*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">A #GstylePaletteWidget</doc>
            <type name="PaletteWidget" c:type="GstylePaletteWidget*"/>
          </instance-parameter>
          <parameter name="index" transfer-ownership="none">
            <doc xml:space="preserve">A position in the palette list, from 0 to (n - 1) palettes</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_palette_by_id"
              c:identifier="gstyle_palette_widget_get_palette_by_id">
        <doc xml:space="preserve">Return the corresponding #GstylePalette if in the #GstylePaletteWidget list.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">A #GstylePalette if in the list, %NULL otherwise.</doc>
          <type name="Palette" c:type="GstylePalette*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">A #GstylePaletteWidget</doc>
            <type name="PaletteWidget" c:type="GstylePaletteWidget*"/>
          </instance-parameter>
          <parameter name="id" transfer-ownership="none">
            <doc xml:space="preserve">A palette id string</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_placeholder"
              c:identifier="gstyle_palette_widget_get_placeholder">
        <doc xml:space="preserve">Get the current placeholder GtkWidget.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">A #GtkObject.</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">A #GstylePaletteWidget.</doc>
            <type name="PaletteWidget" c:type="GstylePaletteWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_selected_palette"
              c:identifier="gstyle_palette_widget_get_selected_palette">
        <doc xml:space="preserve">Return the selected #GstylePalette.</doc>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve">a #GstylePalette or %NULL if none are selected or loaded.</doc>
          <type name="Palette" c:type="GstylePalette*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">A #GstylePaletteWidget</doc>
            <type name="PaletteWidget" c:type="GstylePaletteWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_sort_mode"
              c:identifier="gstyle_palette_widget_get_sort_mode">
        <doc xml:space="preserve">Get the sort mode of the palette widget.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">The #GstylePaletteWidgetSortMode.</doc>
          <type name="PaletteWidgetSortMode"
                c:type="GstylePaletteWidgetSortMode"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">A #GstylePaletteWidget</doc>
            <type name="PaletteWidget" c:type="GstylePaletteWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_store" c:identifier="gstyle_palette_widget_get_store">
        <doc xml:space="preserve">Return a #GListStore containing the palettes.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">#GListStore.</doc>
          <type name="Gio.ListStore" c:type="GListStore*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">A #GstylePaletteWidget</doc>
            <type name="PaletteWidget" c:type="GstylePaletteWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_view_mode"
              c:identifier="gstyle_palette_widget_get_view_mode">
        <doc xml:space="preserve">Get the view mode of the palette widget.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">The #GstylePaletteWidgetViewMode.</doc>
          <type name="PaletteWidgetViewMode"
                c:type="GstylePaletteWidgetViewMode"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">A #GstylePaletteWidget</doc>
            <type name="PaletteWidget" c:type="GstylePaletteWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="remove" c:identifier="gstyle_palette_widget_remove">
        <doc xml:space="preserve">Remove @palette in the widget list.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">%TRUE on succes, %FALSE if @palette is not in the list.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">A #GstylePaletteWidget</doc>
            <type name="PaletteWidget" c:type="GstylePaletteWidget*"/>
          </instance-parameter>
          <parameter name="palette" transfer-ownership="none">
            <doc xml:space="preserve">A #GstylePalette</doc>
            <type name="Palette" c:type="GstylePalette*"/>
          </parameter>
        </parameters>
      </method>
      <method name="remove_all"
              c:identifier="gstyle_palette_widget_remove_all">
        <doc xml:space="preserve">Remove all palettes in the widget list.</doc>
        <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">A #GstylePaletteWidget</doc>
            <type name="PaletteWidget" c:type="GstylePaletteWidget*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="remove_by_id"
              c:identifier="gstyle_palette_widget_remove_by_id">
        <doc xml:space="preserve">Remove palette with @id  from the widget list.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">%TRUE on succes, %FALSE if not in the palettes list.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">A #GstylePaletteWidget</doc>
            <type name="PaletteWidget" c:type="GstylePaletteWidget*"/>
          </instance-parameter>
          <parameter name="id" transfer-ownership="none">
            <doc xml:space="preserve">A palette id string</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_dnd_lock"
              c:identifier="gstyle_palette_widget_set_dnd_lock">
        <doc xml:space="preserve">Sets the dnd lock flags of the palette widget.</doc>
        <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">A #GstylePaletteWidget</doc>
            <type name="PaletteWidget" c:type="GstylePaletteWidget*"/>
          </instance-parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve">One or more #GstylePaletteWidgetDndLockFlags</doc>
            <type name="PaletteWidgetDndLockFlags"
                  c:type="GstylePaletteWidgetDndLockFlags"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_placeholder"
              c:identifier="gstyle_palette_widget_set_placeholder">
        <doc xml:space="preserve">Set a placeholder to show when no palettes are loaded.</doc>
        <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">A #GstylePaletteWidget.</doc>
            <type name="PaletteWidget" c:type="GstylePaletteWidget*"/>
          </instance-parameter>
          <parameter name="placeholder" transfer-ownership="none">
            <doc xml:space="preserve">A #GtkWidget or %NULL.</doc>
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_sort_mode"
              c:identifier="gstyle_palette_widget_set_sort_mode">
        <doc xml:space="preserve">Sets the sort mode of the palette widget.</doc>
        <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">A #GstylePaletteWidget</doc>
            <type name="PaletteWidget" c:type="GstylePaletteWidget*"/>
          </instance-parameter>
          <parameter name="mode" transfer-ownership="none">
            <doc xml:space="preserve">A #GstylePaletteWidgetViewMode</doc>
            <type name="PaletteWidgetSortMode"
                  c:type="GstylePaletteWidgetSortMode"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_view_mode"
              c:identifier="gstyle_palette_widget_set_view_mode">
        <doc xml:space="preserve">Sets the view mode of the palette widget.</doc>
        <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">A #GstylePaletteWidget</doc>
            <type name="PaletteWidget" c:type="GstylePaletteWidget*"/>
          </instance-parameter>
          <parameter name="mode" transfer-ownership="none">
            <doc xml:space="preserve">A #GstylePaletteWidgetViewMode</doc>
            <type name="PaletteWidgetViewMode"
                  c:type="GstylePaletteWidgetViewMode"/>
          </parameter>
        </parameters>
      </method>
      <method name="show_palette"
              c:identifier="gstyle_palette_widget_show_palette">
        <doc xml:space="preserve">Show @palette in the widget.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">%TRUE on succes, %FALSE if @palette is not in the list.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">A #GstylePaletteWidget</doc>
            <type name="PaletteWidget" c:type="GstylePaletteWidget*"/>
          </instance-parameter>
          <parameter name="palette" transfer-ownership="none">
            <doc xml:space="preserve">A #GstylePalette</doc>
            <type name="Palette" c:type="GstylePalette*"/>
          </parameter>
        </parameters>
      </method>
      <property name="dnd-lock"
                writable="1"
                construct="1"
                transfer-ownership="none">
        <type name="PaletteWidgetDndLockFlags"/>
      </property>
      <property name="placeholder" writable="1" transfer-ownership="none">
        <type name="Gtk.Widget"/>
      </property>
      <property name="selected-palette-id"
                writable="1"
                transfer-ownership="none">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="sort-mode" writable="1" transfer-ownership="none">
        <type name="PaletteWidgetSortMode"/>
      </property>
      <property name="view-mode" writable="1" transfer-ownership="none">
        <type name="PaletteWidgetViewMode"/>
      </property>
      <glib:signal name="activated" when="last">
        <doc xml:space="preserve">This signal is emitted when you select a color in the palette widget.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="palette" transfer-ownership="none">
            <doc xml:space="preserve">a #GstylePalette</doc>
            <type name="Palette"/>
          </parameter>
          <parameter name="position" transfer-ownership="none">
            <doc xml:space="preserve">a position in the #palette</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="palette-added" when="last">
        <doc xml:space="preserve">This signal is emitted when a palette is added to the palette widget.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="palette" transfer-ownership="none">
            <doc xml:space="preserve">a #GstylePalette</doc>
            <type name="Palette"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="palette-removed" when="last">
        <doc xml:space="preserve">This signal is emitted when a palette is removed to the palette widget.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="palette" transfer-ownership="none">
            <doc xml:space="preserve">a #GstylePalette</doc>
            <type name="Palette"/>
          </parameter>
        </parameters>
      </glib:signal>
    </class>
    <record name="PaletteWidgetClass"
            c:type="GstylePaletteWidgetClass"
            glib:is-gtype-struct-for="PaletteWidget">
      <field name="parent_class">
        <type name="Gtk.BinClass" c:type="GtkBinClass"/>
      </field>
    </record>
    <bitfield name="PaletteWidgetDndLockFlags"
              glib:type-name="GstylePaletteWidgetDndLockFlags"
              glib:get-type="gstyle_palette_widget_dnd_lock_flags_get_type"
              c:type="GstylePaletteWidgetDndLockFlags">
      <member name="none"
              value="0"
              c:identifier="GSTYLE_PALETTE_WIDGET_DND_LOCK_FLAGS_NONE"
              glib:nick="none">
      </member>
      <member name="drag"
              value="1"
              c:identifier="GSTYLE_PALETTE_WIDGET_DND_LOCK_FLAGS_DRAG"
              glib:nick="drag">
      </member>
      <member name="drop"
              value="2"
              c:identifier="GSTYLE_PALETTE_WIDGET_DND_LOCK_FLAGS_DROP"
              glib:nick="drop">
      </member>
      <member name="all"
              value="3"
              c:identifier="GSTYLE_PALETTE_WIDGET_DND_LOCK_FLAGS_ALL"
              glib:nick="all">
      </member>
    </bitfield>
    <enumeration name="PaletteWidgetSortMode"
                 glib:type-name="GstylePaletteWidgetSortMode"
                 glib:get-type="gstyle_palette_widget_sort_mode_get_type"
                 c:type="GstylePaletteWidgetSortMode">
      <member name="original"
              value="0"
              c:identifier="GSTYLE_PALETTE_WIDGET_SORT_MODE_ORIGINAL"
              glib:nick="original">
      </member>
      <member name="light"
              value="1"
              c:identifier="GSTYLE_PALETTE_WIDGET_SORT_MODE_LIGHT"
              glib:nick="light">
      </member>
      <member name="approching"
              value="2"
              c:identifier="GSTYLE_PALETTE_WIDGET_SORT_MODE_APPROCHING"
              glib:nick="approching">
      </member>
    </enumeration>
    <enumeration name="PaletteWidgetViewMode"
                 glib:type-name="GstylePaletteWidgetViewMode"
                 glib:get-type="gstyle_palette_widget_view_mode_get_type"
                 c:type="GstylePaletteWidgetViewMode">
      <member name="list"
              value="0"
              c:identifier="GSTYLE_PALETTE_WIDGET__VIEW_MODE_LIST"
              glib:nick="list">
      </member>
      <member name="swatchs"
              value="1"
              c:identifier="GSTYLE_PALETTE_WIDGET__VIEW_MODE_SWATCHS"
              glib:nick="swatchs">
      </member>
    </enumeration>
    <class name="Slidein"
           c:symbol-prefix="slidein"
           c:type="GstyleSlidein"
           parent="Gtk.EventBox"
           glib:type-name="GstyleSlidein"
           glib:get-type="gstyle_slidein_get_type"
           glib:type-struct="SlideinClass">
      <implements name="Atk.ImplementorIface"/>
      <implements name="Gtk.Buildable"/>
      <constructor name="new" c:identifier="gstyle_slidein_new">
        <return-value transfer-ownership="none">
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
      </constructor>
      <method name="add_slide" c:identifier="gstyle_slidein_add_slide">
        <doc xml:space="preserve">Set the #GtkWidget to use as a slide.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Slidein" c:type="GstyleSlidein*"/>
          </instance-parameter>
          <parameter name="slide" transfer-ownership="none">
            <doc xml:space="preserve">a #GtkWidget</doc>
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_direction_type"
              c:identifier="gstyle_slidein_get_direction_type">
        <return-value transfer-ownership="none">
          <type name="SlideinDirectionType"
                c:type="GstyleSlideinDirectionType"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Slidein" c:type="GstyleSlidein*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_interpolate_size"
              c:identifier="gstyle_slidein_get_interpolate_size">
        <doc xml:space="preserve">Get the interpolate-size set by gstyle_slidein_set_interpolate_size().</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">%TRUE if we interpolate the size, %FALSE otherwise.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Slidein" c:type="GstyleSlidein*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_revealed" c:identifier="gstyle_slidein_get_revealed">
        <doc xml:space="preserve">Get the state of the slide, revealed or not.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">%TRUE if the slide is already revealed, %FALSE otherwise.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Slidein" c:type="GstyleSlidein*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_slide_fraction"
              c:identifier="gstyle_slidein_get_slide_fraction">
        <doc xml:space="preserve">Get the slide_fraction set by gstyle_slidein_set_slide_fraction().</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">the slide_fraction.</doc>
          <type name="gdouble" c:type="gdouble"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Slidein" c:type="GstyleSlidein*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="remove_slide" c:identifier="gstyle_slidein_remove_slide">
        <doc xml:space="preserve">Remove, if any, the slide #GtkWidget.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Slidein" c:type="GstyleSlidein*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="reveal_slide" c:identifier="gstyle_slidein_reveal_slide">
        <doc xml:space="preserve">Reveal or close the slide.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">#TRUE if the action can be executed, otherwise, %FALSE if the slide is already
  in its final position, that is revealed or closed.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Slidein" c:type="GstyleSlidein*"/>
          </instance-parameter>
          <parameter name="reveal" transfer-ownership="none">
            <doc xml:space="preserve">%TRUE to reveal or %FALSE to close the slide</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_direction_type"
              c:identifier="gstyle_slidein_set_direction_type">
        <doc xml:space="preserve">Set the type of animation direction.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Slidein" c:type="GstyleSlidein*"/>
          </instance-parameter>
          <parameter name="direction_type" transfer-ownership="none">
            <doc xml:space="preserve">a #GstyleSlideinDirectionType</doc>
            <type name="SlideinDirectionType"
                  c:type="GstyleSlideinDirectionType"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_interpolate_size"
              c:identifier="gstyle_slidein_set_interpolate_size">
        <doc xml:space="preserve">Set whether or not we size the slidein according to all its children
(regular and slide) or just the regular one.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Slidein" c:type="GstyleSlidein*"/>
          </instance-parameter>
          <parameter name="interpolate_size" transfer-ownership="none">
            <doc xml:space="preserve">%TRUE to interpolate the size</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_slide_fraction"
              c:identifier="gstyle_slidein_set_slide_fraction">
        <doc xml:space="preserve">Set the fraction used by the slide compared to the total size of the slidein,
in the direction of the animation (so horizontal or vertical).</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <type name="Slidein" c:type="GstyleSlidein*"/>
          </instance-parameter>
          <parameter name="slide_fraction" transfer-ownership="none">
            <doc xml:space="preserve">fraction of the slide compared to the total size</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <property name="direction-type" writable="1" transfer-ownership="none">
        <type name="SlideinDirectionType"/>
      </property>
      <property name="duration" writable="1" transfer-ownership="none">
        <type name="gdouble" c:type="gdouble"/>
      </property>
      <property name="interpolate-size" writable="1" transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="revealed" transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="slide-fraction" writable="1" transfer-ownership="none">
        <type name="gdouble" c:type="gdouble"/>
      </property>
      <property name="slide-margin" writable="1" transfer-ownership="none">
        <type name="guint" c:type="guint"/>
      </property>
      <glib:signal name="closing" when="first">
        <doc xml:space="preserve">Emitted when the slide start closing.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="opening" when="first">
        <doc xml:space="preserve">Emitted when the slide start opening.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="revealed" when="first">
        <doc xml:space="preserve">Emitted when the revealed state of the slide child change.
Notice that this only append after the duration time</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="direction_type" transfer-ownership="none">
            <doc xml:space="preserve">type of opening direction.</doc>
            <type name="SlideinDirectionType"/>
          </parameter>
          <parameter name="revealed" transfer-ownership="none">
            <doc xml:space="preserve">the revealed state of the slide.</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </glib:signal>
    </class>
    <record name="SlideinClass"
            c:type="GstyleSlideinClass"
            glib:is-gtype-struct-for="Slidein">
      <field name="parent_class">
        <type name="Gtk.EventBoxClass" c:type="GtkEventBoxClass"/>
      </field>
    </record>
    <enumeration name="SlideinDirectionType"
                 glib:type-name="GstyleSlideinDirectionType"
                 glib:get-type="gstyle_slidein_type_get_type"
                 c:type="GstyleSlideinDirectionType">
      <member name="none"
              value="0"
              c:identifier="GSTYLE_SLIDEIN_DIRECTION_TYPE_NONE"
              glib:nick="none">
      </member>
      <member name="right"
              value="1"
              c:identifier="GSTYLE_SLIDEIN_DIRECTION_TYPE_RIGHT"
              glib:nick="right">
      </member>
      <member name="left"
              value="2"
              c:identifier="GSTYLE_SLIDEIN_DIRECTION_TYPE_LEFT"
              glib:nick="left">
      </member>
      <member name="up"
              value="3"
              c:identifier="GSTYLE_SLIDEIN_DIRECTION_TYPE_UP"
              glib:nick="up">
      </member>
      <member name="down"
              value="4"
              c:identifier="GSTYLE_SLIDEIN_DIRECTION_TYPE_DOWN"
              glib:nick="down">
      </member>
    </enumeration>
    <glib:boxed glib:name="XYZ"
                c:symbol-prefix="xyz"
                glib:type-name="GstyleXYZ"
                glib:get-type="gstyle_xyz_get_type">
      <method name="copy" c:identifier="gstyle_xyz_copy">
        <doc xml:space="preserve">Makes a copy of a #GstyleXYZ.

The result must be freed through gstyle_xyz_free().</doc>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve">a newly allocated #GstyleXYZ with the same content as @self.</doc>
          <type name="XYZ" c:type="GstyleXYZ*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve">a #GstyleXYZ</doc>
            <type name="XYZ" c:type="const GstyleXYZ*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="free" c:identifier="gstyle_xyz_free">
        <doc xml:space="preserve">Frees a #GstyleXYZ created with gstyle_xyz_copy().</doc>
        <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">a #GstyleXYZ</doc>
            <type name="XYZ" c:type="GstyleXYZ*"/>
          </instance-parameter>
        </parameters>
      </method>
    </glib:boxed>
    <record name="_Cielab" c:type="_GstyleCielab">
      <field name="l" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="a" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="b" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="alpha" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
    </record>
    <record name="_ColorItem" c:type="_GstyleColorItem">
      <field name="color" writable="1">
        <type name="Color" c:type="GstyleColor*"/>
      </field>
      <field name="start" writable="1">
        <type name="guint" c:type="guint"/>
      </field>
      <field name="len" writable="1">
        <type name="guint" c:type="guint"/>
      </field>
      <field name="ref_count" writable="1">
        <type name="gint" c:type="volatile gint"/>
      </field>
    </record>
    <record name="_HSV" c:type="_GstyleHSV">
      <field name="h" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="s" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="v" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="alpha" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
    </record>
    <record name="_XYZ" c:type="_GstyleXYZ">
      <field name="x" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="y" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="z" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="alpha" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
    </record>
    <function name="color_filter_achromatomaly"
              c:identifier="gstyle_color_filter_achromatomaly"
              moved-to="ColorFilter.achromatomaly">
      <doc xml:space="preserve">A achromatomaly (Blue Cone Monochromacy) color filter usable with #GstyleColorScale and GstyleColorPlane.</doc>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="rgba" transfer-ownership="none">
          <doc xml:space="preserve">The source #GdkRGBA color</doc>
          <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
        </parameter>
        <parameter name="filter_rgba"
                   direction="out"
                   caller-allocates="1"
                   transfer-ownership="none">
          <doc xml:space="preserve">the filtered #GdkRGBA color</doc>
          <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
        </parameter>
        <parameter name="user_data"
                   transfer-ownership="none"
                   nullable="1"
                   allow-none="1">
          <doc xml:space="preserve">A user data pointer</doc>
          <type name="gpointer" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="color_filter_achromatopsia"
              c:identifier="gstyle_color_filter_achromatopsia"
              moved-to="ColorFilter.achromatopsia">
      <doc xml:space="preserve">A achromatopsia (color agnosia) color filter usable with #GstyleColorScale and GstyleColorPlane.</doc>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="rgba" transfer-ownership="none">
          <doc xml:space="preserve">The source #GdkRGBA color</doc>
          <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
        </parameter>
        <parameter name="filter_rgba"
                   direction="out"
                   caller-allocates="1"
                   transfer-ownership="none">
          <doc xml:space="preserve">the filtered #GdkRGBA color</doc>
          <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
        </parameter>
        <parameter name="user_data"
                   transfer-ownership="none"
                   nullable="1"
                   allow-none="1">
          <doc xml:space="preserve">A user data pointer</doc>
          <type name="gpointer" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="color_filter_deuteranomaly"
              c:identifier="gstyle_color_filter_deuteranomaly"
              moved-to="ColorFilter.deuteranomaly">
      <doc xml:space="preserve">A deuteranomaly (green-weak) color filter usable with #GstyleColorScale and GstyleColorPlane.</doc>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="rgba" transfer-ownership="none">
          <doc xml:space="preserve">The source #GdkRGBA color</doc>
          <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
        </parameter>
        <parameter name="filter_rgba"
                   direction="out"
                   caller-allocates="1"
                   transfer-ownership="none">
          <doc xml:space="preserve">the filtered #GdkRGBA color</doc>
          <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
        </parameter>
        <parameter name="user_data"
                   transfer-ownership="none"
                   nullable="1"
                   allow-none="1">
          <doc xml:space="preserve">A user data pointer</doc>
          <type name="gpointer" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="color_filter_deuteranopia"
              c:identifier="gstyle_color_filter_deuteranopia"
              moved-to="ColorFilter.deuteranopia">
      <doc xml:space="preserve">A deuteranopia (green-blind) color filter usable with #GstyleColorScale and GstyleColorPlane.</doc>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="rgba" transfer-ownership="none">
          <doc xml:space="preserve">The source #GdkRGBA color</doc>
          <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
        </parameter>
        <parameter name="filter_rgba"
                   direction="out"
                   caller-allocates="1"
                   transfer-ownership="none">
          <doc xml:space="preserve">the filtered #GdkRGBA color</doc>
          <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
        </parameter>
        <parameter name="user_data"
                   transfer-ownership="none"
                   nullable="1"
                   allow-none="1">
          <doc xml:space="preserve">A user data pointer</doc>
          <type name="gpointer" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="color_filter_protanomaly"
              c:identifier="gstyle_color_filter_protanomaly"
              moved-to="ColorFilter.protanomaly">
      <doc xml:space="preserve">A protanomaly (red-weak) color filter usable with #GstyleColorScale and GstyleColorPlane.</doc>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="rgba" transfer-ownership="none">
          <doc xml:space="preserve">The source #GdkRGBA color</doc>
          <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
        </parameter>
        <parameter name="filter_rgba"
                   direction="out"
                   caller-allocates="1"
                   transfer-ownership="none">
          <doc xml:space="preserve">the filtered #GdkRGBA color</doc>
          <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
        </parameter>
        <parameter name="user_data"
                   transfer-ownership="none"
                   nullable="1"
                   allow-none="1">
          <doc xml:space="preserve">A user data pointer</doc>
          <type name="gpointer" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="color_filter_protanopia"
              c:identifier="gstyle_color_filter_protanopia"
              moved-to="ColorFilter.protanopia">
      <doc xml:space="preserve">A protanopia (red-blind) color filter usable with #GstyleColorScale and GstyleColorPlane.</doc>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="rgba" transfer-ownership="none">
          <doc xml:space="preserve">The source #GdkRGBA color</doc>
          <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
        </parameter>
        <parameter name="filter_rgba"
                   direction="out"
                   caller-allocates="1"
                   transfer-ownership="none">
          <doc xml:space="preserve">the filtered #GdkRGBA color</doc>
          <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
        </parameter>
        <parameter name="user_data"
                   transfer-ownership="none"
                   nullable="1"
                   allow-none="1">
          <doc xml:space="preserve">A user data pointer</doc>
          <type name="gpointer" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="color_filter_tritanomaly"
              c:identifier="gstyle_color_filter_tritanomaly"
              moved-to="ColorFilter.tritanomaly">
      <doc xml:space="preserve">A tritanomaly (blue-weak) color filter usable with #GstyleColorScale and GstyleColorPlane.</doc>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="rgba" transfer-ownership="none">
          <doc xml:space="preserve">The source #GdkRGBA color</doc>
          <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
        </parameter>
        <parameter name="filter_rgba"
                   direction="out"
                   caller-allocates="1"
                   transfer-ownership="none">
          <doc xml:space="preserve">the filtered #GdkRGBA color</doc>
          <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
        </parameter>
        <parameter name="user_data"
                   transfer-ownership="none"
                   nullable="1"
                   allow-none="1">
          <doc xml:space="preserve">A user data pointer</doc>
          <type name="gpointer" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="color_filter_tritanopia"
              c:identifier="gstyle_color_filter_tritanopia"
              moved-to="ColorFilter.tritanopia">
      <doc xml:space="preserve">A tritanopia (blue-blind) color filter usable with #GstyleColorScale and GstyleColorPlane.</doc>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="rgba" transfer-ownership="none">
          <doc xml:space="preserve">The source #GdkRGBA color</doc>
          <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
        </parameter>
        <parameter name="filter_rgba"
                   direction="out"
                   caller-allocates="1"
                   transfer-ownership="none">
          <doc xml:space="preserve">the filtered #GdkRGBA color</doc>
          <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
        </parameter>
        <parameter name="user_data"
                   transfer-ownership="none"
                   nullable="1"
                   allow-none="1">
          <doc xml:space="preserve">A user data pointer</doc>
          <type name="gpointer" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="color_filter_websafe"
              c:identifier="gstyle_color_filter_websafe"
              moved-to="ColorFilter.websafe">
      <doc xml:space="preserve">A WebSafe color filter usable with #GstyleColorScale and GstyleColorPlane.</doc>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="rgba" transfer-ownership="none">
          <doc xml:space="preserve">The source #GdkRGBA color</doc>
          <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
        </parameter>
        <parameter name="filter_rgba"
                   direction="out"
                   caller-allocates="1"
                   transfer-ownership="none">
          <doc xml:space="preserve">the filtered #GdkRGBA color</doc>
          <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
        </parameter>
        <parameter name="user_data"
                   transfer-ownership="none"
                   nullable="1"
                   allow-none="1">
          <doc xml:space="preserve">A user data pointer</doc>
          <type name="gpointer" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
  </namespace>
</repository>
