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

<refsect1 id="GtkRange.functions" role="functions_proto">
<title role="functions_proto.title">Functions</title>
<informaltable pgwide="1" frame="none">
<tgroup cols="2">
<colspec colname="functions_proto_type" colwidth="150px"/>
<colspec colname="functions_proto_name"/>
<tbody>
<row><entry role="function_type"><link linkend="gdouble"><returnvalue>gdouble</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-range-get-fill-level">gtk_range_get_fill_level</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-range-get-restrict-to-fill-level">gtk_range_get_restrict_to_fill_level</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-range-get-show-fill-level">gtk_range_get_show_fill_level</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-range-set-fill-level">gtk_range_set_fill_level</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-range-set-restrict-to-fill-level">gtk_range_set_restrict_to_fill_level</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-range-set-show-fill-level">gtk_range_set_show_fill_level</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="GtkAdjustment"><returnvalue>GtkAdjustment</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-range-get-adjustment">gtk_range_get_adjustment</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-range-set-adjustment">gtk_range_set_adjustment</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-range-get-inverted">gtk_range_get_inverted</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-range-set-inverted">gtk_range_set_inverted</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gdouble"><returnvalue>gdouble</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-range-get-value">gtk_range_get_value</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-range-set-value">gtk_range_set_value</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-range-set-increments">gtk_range_set_increments</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-range-set-range">gtk_range_set_range</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gint"><returnvalue>gint</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-range-get-round-digits">gtk_range_get_round_digits</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-range-set-round-digits">gtk_range_set_round_digits</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-range-get-flippable">gtk_range_get_flippable</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-range-set-flippable">gtk_range_set_flippable</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-range-get-range-rect">gtk_range_get_range_rect</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-range-get-slider-range">gtk_range_get_slider_range</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-range-get-slider-size-fixed">gtk_range_get_slider_size_fixed</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-range-set-slider-size-fixed">gtk_range_set_slider_size_fixed</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>

</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 id="GtkRange.properties" role="properties">
<title role="properties.title">Properties</title>
<informaltable frame="none">
<tgroup cols="3">
<colspec colname="properties_type" colwidth="150px"/>
<colspec colname="properties_name" colwidth="300px"/>
<colspec colname="properties_flags" colwidth="200px"/>
<tbody>
<row><entry role="property_type"><link linkend="GtkAdjustment"><type>GtkAdjustment</type></link>&#160;*</entry><entry role="property_name"><link linkend="GtkRange--adjustment">adjustment</link></entry><entry role="property_flags">Read / Write / Construct</entry></row>
<row><entry role="property_type"><link linkend="gdouble"><type>gdouble</type></link></entry><entry role="property_name"><link linkend="GtkRange--fill-level">fill-level</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gboolean"><type>gboolean</type></link></entry><entry role="property_name"><link linkend="GtkRange--inverted">inverted</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gboolean"><type>gboolean</type></link></entry><entry role="property_name"><link linkend="GtkRange--restrict-to-fill-level">restrict-to-fill-level</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gint"><type>gint</type></link></entry><entry role="property_name"><link linkend="GtkRange--round-digits">round-digits</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gboolean"><type>gboolean</type></link></entry><entry role="property_name"><link linkend="GtkRange--show-fill-level">show-fill-level</link></entry><entry role="property_flags">Read / Write</entry></row>

</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 id="GtkRange.signals" role="signal_proto">
<title role="signal_proto.title">Signals</title>
<informaltable frame="none">
<tgroup cols="3">
<colspec colname="signal_proto_type" colwidth="150px"/>
<colspec colname="signal_proto_name" colwidth="300px"/>
<colspec colname="signal_proto_flags" colwidth="200px"/>
<tbody>
<row><entry role="signal_type"><link linkend="void"><returnvalue>void</returnvalue></link></entry><entry role="signal_name"><link linkend="GtkRange-adjust-bounds">adjust-bounds</link></entry><entry role="signal_flags"><link linkend="G-SIGNAL-RUN-LAST:CAPS">Run Last</link></entry></row>
<row><entry role="signal_type"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link></entry><entry role="signal_name"><link linkend="GtkRange-change-value">change-value</link></entry><entry role="signal_flags"><link linkend="G-SIGNAL-RUN-LAST:CAPS">Run Last</link></entry></row>
<row><entry role="signal_type"><link linkend="void"><returnvalue>void</returnvalue></link></entry><entry role="signal_name"><link linkend="GtkRange-move-slider">move-slider</link></entry><entry role="signal_flags"><link linkend="G-SIGNAL-ACTION:CAPS">Action</link></entry></row>
<row><entry role="signal_type"><link linkend="void"><returnvalue>void</returnvalue></link></entry><entry role="signal_name"><link linkend="GtkRange-value-changed">value-changed</link></entry><entry role="signal_flags"><link linkend="G-SIGNAL-RUN-LAST:CAPS">Run Last</link></entry></row>

</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 id="GtkRange.other" role="other_proto">
<title role="other_proto.title">Types and Values</title>
<informaltable pgwide="1" frame="none">
<tgroup cols="2">
<colspec colname="other_proto_type" colwidth="150px"/>
<colspec colname="other_proto_name"/>
<tbody>
<row><entry role="datatype_keyword">struct</entry><entry role="function_name"><link linkend="GtkRange-struct">GtkRange</link></entry></row>

</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 id="GtkRange.object-hierarchy" role="object_hierarchy">
<title role="object_hierarchy.title">Object Hierarchy</title>
<screen>    <link linkend="GObject">GObject</link>
    <phrase role="lineart">&#9584;&#9472;&#9472;</phrase> <link linkend="GInitiallyUnowned">GInitiallyUnowned</link>
        <phrase role="lineart">&#9584;&#9472;&#9472;</phrase> <link linkend="GtkWidget">GtkWidget</link>
            <phrase role="lineart">&#9584;&#9472;&#9472;</phrase> GtkRange
                <phrase role="lineart">&#9584;&#9472;&#9472;</phrase> <link linkend="GtkScale">GtkScale</link>
</screen>
</refsect1>
<refsect1 id="GtkRange.implemented-interfaces" role="impl_interfaces">
<title role="impl_interfaces.title">Implemented Interfaces</title>
<para>
GtkRange implements
 <link linkend="AtkImplementorIface">AtkImplementorIface</link>,  <link linkend="GtkBuildable">GtkBuildable</link>,  <link linkend="GtkConstraintTarget">GtkConstraintTarget</link> and  <link linkend="GtkOrientable">GtkOrientable</link>.</para>

</refsect1>

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

<refsect1 id="GtkRange.description" role="desc">
<title role="desc.title">Description</title>
<para><link linkend="GtkRange"><type>GtkRange</type></link> is the common base class for widgets which visualize an
adjustment, e.g <link linkend="GtkScale"><type>GtkScale</type></link> or <link linkend="GtkScrollbar"><type>GtkScrollbar</type></link>.</para>
<para>Apart from signals for monitoring the parameters of the adjustment,
<link linkend="GtkRange"><type>GtkRange</type></link> provides properties and methods for setting a
“fill level” on range widgets. See <link linkend="gtk-range-set-fill-level"><function>gtk_range_set_fill_level()</function></link>.</para>

</refsect1>
<refsect1 id="GtkRange.functions_details" role="details">
<title role="details.title">Functions</title>
<refsect2 id="gtk-range-get-fill-level" role="function">
<title>gtk_range_get_fill_level&#160;()</title>
<indexterm zone="gtk-range-get-fill-level"><primary>gtk_range_get_fill_level</primary></indexterm>
<programlisting language="C"><link linkend="gdouble"><returnvalue>gdouble</returnvalue></link>
gtk_range_get_fill_level (<parameter><link linkend="GtkRange"><type>GtkRange</type></link> *range</parameter>);</programlisting>
<para>Gets the current position of the fill level indicator.</para>
<refsect3 id="gtk-range-get-fill-level.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>range</para></entry>
<entry role="parameter_description"><para>A <link linkend="GtkRange"><type>GtkRange</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-range-get-fill-level.returns" role="returns">
<title>Returns</title>
<para> The current fill level</para>
</refsect3></refsect2>
<refsect2 id="gtk-range-get-restrict-to-fill-level" role="function">
<title>gtk_range_get_restrict_to_fill_level&#160;()</title>
<indexterm zone="gtk-range-get-restrict-to-fill-level"><primary>gtk_range_get_restrict_to_fill_level</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
gtk_range_get_restrict_to_fill_level (<parameter><link linkend="GtkRange"><type>GtkRange</type></link> *range</parameter>);</programlisting>
<para>Gets whether the range is restricted to the fill level.</para>
<refsect3 id="gtk-range-get-restrict-to-fill-level.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>range</para></entry>
<entry role="parameter_description"><para>A <link linkend="GtkRange"><type>GtkRange</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-range-get-restrict-to-fill-level.returns" role="returns">
<title>Returns</title>
<para> <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if <parameter>range</parameter>
is restricted to the fill level.</para>
</refsect3></refsect2>
<refsect2 id="gtk-range-get-show-fill-level" role="function">
<title>gtk_range_get_show_fill_level&#160;()</title>
<indexterm zone="gtk-range-get-show-fill-level"><primary>gtk_range_get_show_fill_level</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
gtk_range_get_show_fill_level (<parameter><link linkend="GtkRange"><type>GtkRange</type></link> *range</parameter>);</programlisting>
<para>Gets whether the range displays the fill level graphically.</para>
<refsect3 id="gtk-range-get-show-fill-level.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>range</para></entry>
<entry role="parameter_description"><para>A <link linkend="GtkRange"><type>GtkRange</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-range-get-show-fill-level.returns" role="returns">
<title>Returns</title>
<para> <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if <parameter>range</parameter>
shows the fill level.</para>
</refsect3></refsect2>
<refsect2 id="gtk-range-set-fill-level" role="function">
<title>gtk_range_set_fill_level&#160;()</title>
<indexterm zone="gtk-range-set-fill-level"><primary>gtk_range_set_fill_level</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_range_set_fill_level (<parameter><link linkend="GtkRange"><type>GtkRange</type></link> *range</parameter>,
                          <parameter><link linkend="gdouble"><type>gdouble</type></link> fill_level</parameter>);</programlisting>
<para>Set the new position of the fill level indicator.</para>
<para>The “fill level” is probably best described by its most prominent
use case, which is an indicator for the amount of pre-buffering in
a streaming media player. In that use case, the value of the range
would indicate the current play position, and the fill level would
be the position up to which the file/stream has been downloaded.</para>
<para>This amount of prebuffering can be displayed on the range’s trough
and is themeable separately from the trough. To enable fill level
display, use <link linkend="gtk-range-set-show-fill-level"><function>gtk_range_set_show_fill_level()</function></link>. The range defaults
to not showing the fill level.</para>
<para>Additionally, it’s possible to restrict the range’s slider position
to values which are smaller than the fill level. This is controller
by <link linkend="gtk-range-set-restrict-to-fill-level"><function>gtk_range_set_restrict_to_fill_level()</function></link> and is by default
enabled.</para>
<refsect3 id="gtk-range-set-fill-level.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>range</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRange"><type>GtkRange</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>fill_level</para></entry>
<entry role="parameter_description"><para>the new position of the fill level indicator</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-range-set-restrict-to-fill-level" role="function">
<title>gtk_range_set_restrict_to_fill_level&#160;()</title>
<indexterm zone="gtk-range-set-restrict-to-fill-level"><primary>gtk_range_set_restrict_to_fill_level</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_range_set_restrict_to_fill_level (<parameter><link linkend="GtkRange"><type>GtkRange</type></link> *range</parameter>,
                                      <parameter><link linkend="gboolean"><type>gboolean</type></link> restrict_to_fill_level</parameter>);</programlisting>
<para>Sets whether the slider is restricted to the fill level. See
<link linkend="gtk-range-set-fill-level"><function>gtk_range_set_fill_level()</function></link> for a general description of the fill
level concept.</para>
<refsect3 id="gtk-range-set-restrict-to-fill-level.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>range</para></entry>
<entry role="parameter_description"><para>A <link linkend="GtkRange"><type>GtkRange</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>restrict_to_fill_level</para></entry>
<entry role="parameter_description"><para>Whether the fill level restricts slider movement.</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-range-set-show-fill-level" role="function">
<title>gtk_range_set_show_fill_level&#160;()</title>
<indexterm zone="gtk-range-set-show-fill-level"><primary>gtk_range_set_show_fill_level</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_range_set_show_fill_level (<parameter><link linkend="GtkRange"><type>GtkRange</type></link> *range</parameter>,
                               <parameter><link linkend="gboolean"><type>gboolean</type></link> show_fill_level</parameter>);</programlisting>
<para>Sets whether a graphical fill level is show on the trough. See
<link linkend="gtk-range-set-fill-level"><function>gtk_range_set_fill_level()</function></link> for a general description of the fill
level concept.</para>
<refsect3 id="gtk-range-set-show-fill-level.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>range</para></entry>
<entry role="parameter_description"><para>A <link linkend="GtkRange"><type>GtkRange</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>show_fill_level</para></entry>
<entry role="parameter_description"><para>Whether a fill level indicator graphics is shown.</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-range-get-adjustment" role="function">
<title>gtk_range_get_adjustment&#160;()</title>
<indexterm zone="gtk-range-get-adjustment"><primary>gtk_range_get_adjustment</primary></indexterm>
<programlisting language="C"><link linkend="GtkAdjustment"><returnvalue>GtkAdjustment</returnvalue></link>&#160;*
gtk_range_get_adjustment (<parameter><link linkend="GtkRange"><type>GtkRange</type></link> *range</parameter>);</programlisting>
<para>Get the <link linkend="GtkAdjustment"><type>GtkAdjustment</type></link> which is the “model” object for <link linkend="GtkRange"><type>GtkRange</type></link>.
See <link linkend="gtk-range-set-adjustment"><function>gtk_range_set_adjustment()</function></link> for details.
The return value does not have a reference added, so should not
be unreferenced.</para>
<refsect3 id="gtk-range-get-adjustment.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>range</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRange"><type>GtkRange</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-range-get-adjustment.returns" role="returns">
<title>Returns</title>
<para>a <link linkend="GtkAdjustment"><type>GtkAdjustment</type></link>. </para>
<para><emphasis role="annotation">[<acronym>transfer none</acronym>]</emphasis></para>
</refsect3></refsect2>
<refsect2 id="gtk-range-set-adjustment" role="function">
<title>gtk_range_set_adjustment&#160;()</title>
<indexterm zone="gtk-range-set-adjustment"><primary>gtk_range_set_adjustment</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_range_set_adjustment (<parameter><link linkend="GtkRange"><type>GtkRange</type></link> *range</parameter>,
                          <parameter><link linkend="GtkAdjustment"><type>GtkAdjustment</type></link> *adjustment</parameter>);</programlisting>
<para>Sets the adjustment to be used as the “model” object for this range
widget. The adjustment indicates the current range value, the
minimum and maximum range values, the step/page increments used
for keybindings and scrolling, and the page size. The page size
is normally 0 for <link linkend="GtkScale"><type>GtkScale</type></link> and nonzero for <link linkend="GtkScrollbar"><type>GtkScrollbar</type></link>, and
indicates the size of the visible area of the widget being scrolled.
The page size affects the size of the scrollbar slider.</para>
<refsect3 id="gtk-range-set-adjustment.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>range</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRange"><type>GtkRange</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>adjustment</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkAdjustment"><type>GtkAdjustment</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-range-get-inverted" role="function">
<title>gtk_range_get_inverted&#160;()</title>
<indexterm zone="gtk-range-get-inverted"><primary>gtk_range_get_inverted</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
gtk_range_get_inverted (<parameter><link linkend="GtkRange"><type>GtkRange</type></link> *range</parameter>);</programlisting>
<para>Gets the value set by <link linkend="gtk-range-set-inverted"><function>gtk_range_set_inverted()</function></link>.</para>
<refsect3 id="gtk-range-get-inverted.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>range</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRange"><type>GtkRange</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-range-get-inverted.returns" role="returns">
<title>Returns</title>
<para> <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if the range is inverted</para>
</refsect3></refsect2>
<refsect2 id="gtk-range-set-inverted" role="function">
<title>gtk_range_set_inverted&#160;()</title>
<indexterm zone="gtk-range-set-inverted"><primary>gtk_range_set_inverted</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_range_set_inverted (<parameter><link linkend="GtkRange"><type>GtkRange</type></link> *range</parameter>,
                        <parameter><link linkend="gboolean"><type>gboolean</type></link> setting</parameter>);</programlisting>
<para>Ranges normally move from lower to higher values as the
slider moves from top to bottom or left to right. Inverted
ranges have higher values at the top or on the right rather than
on the bottom or left.</para>
<refsect3 id="gtk-range-set-inverted.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>range</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRange"><type>GtkRange</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>setting</para></entry>
<entry role="parameter_description"><para><link linkend="TRUE:CAPS"><literal>TRUE</literal></link> to invert the range</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-range-get-value" role="function">
<title>gtk_range_get_value&#160;()</title>
<indexterm zone="gtk-range-get-value"><primary>gtk_range_get_value</primary></indexterm>
<programlisting language="C"><link linkend="gdouble"><returnvalue>gdouble</returnvalue></link>
gtk_range_get_value (<parameter><link linkend="GtkRange"><type>GtkRange</type></link> *range</parameter>);</programlisting>
<para>Gets the current value of the range.</para>
<refsect3 id="gtk-range-get-value.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>range</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRange"><type>GtkRange</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-range-get-value.returns" role="returns">
<title>Returns</title>
<para> current value of the range.</para>
</refsect3></refsect2>
<refsect2 id="gtk-range-set-value" role="function">
<title>gtk_range_set_value&#160;()</title>
<indexterm zone="gtk-range-set-value"><primary>gtk_range_set_value</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_range_set_value (<parameter><link linkend="GtkRange"><type>GtkRange</type></link> *range</parameter>,
                     <parameter><link linkend="gdouble"><type>gdouble</type></link> value</parameter>);</programlisting>
<para>Sets the current value of the range; if the value is outside the
minimum or maximum range values, it will be clamped to fit inside
them. The range emits the <link linkend="GtkRange-value-changed"><type>“value-changed”</type></link> signal if the 
value changes.</para>
<refsect3 id="gtk-range-set-value.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>range</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRange"><type>GtkRange</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>value</para></entry>
<entry role="parameter_description"><para>new value of the range</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-range-set-increments" role="function">
<title>gtk_range_set_increments&#160;()</title>
<indexterm zone="gtk-range-set-increments"><primary>gtk_range_set_increments</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_range_set_increments (<parameter><link linkend="GtkRange"><type>GtkRange</type></link> *range</parameter>,
                          <parameter><link linkend="gdouble"><type>gdouble</type></link> step</parameter>,
                          <parameter><link linkend="gdouble"><type>gdouble</type></link> page</parameter>);</programlisting>
<para>Sets the step and page sizes for the range.
The step size is used when the user clicks the <link linkend="GtkScrollbar"><type>GtkScrollbar</type></link>
arrows or moves <link linkend="GtkScale"><type>GtkScale</type></link> via arrow keys. The page size
is used for example when moving via Page Up or Page Down keys.</para>
<refsect3 id="gtk-range-set-increments.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>range</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRange"><type>GtkRange</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>step</para></entry>
<entry role="parameter_description"><para>step size</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>page</para></entry>
<entry role="parameter_description"><para>page size</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-range-set-range" role="function">
<title>gtk_range_set_range&#160;()</title>
<indexterm zone="gtk-range-set-range"><primary>gtk_range_set_range</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_range_set_range (<parameter><link linkend="GtkRange"><type>GtkRange</type></link> *range</parameter>,
                     <parameter><link linkend="gdouble"><type>gdouble</type></link> min</parameter>,
                     <parameter><link linkend="gdouble"><type>gdouble</type></link> max</parameter>);</programlisting>
<para>Sets the allowable values in the <link linkend="GtkRange"><type>GtkRange</type></link>, and clamps the range
value to be between <parameter>min</parameter>
 and <parameter>max</parameter>
. (If the range has a non-zero
page size, it is clamped between <parameter>min</parameter>
 and <parameter>max</parameter>
 - page-size.)</para>
<refsect3 id="gtk-range-set-range.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>range</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRange"><type>GtkRange</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>min</para></entry>
<entry role="parameter_description"><para>minimum range value</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>max</para></entry>
<entry role="parameter_description"><para>maximum range value</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-range-get-round-digits" role="function">
<title>gtk_range_get_round_digits&#160;()</title>
<indexterm zone="gtk-range-get-round-digits"><primary>gtk_range_get_round_digits</primary></indexterm>
<programlisting language="C"><link linkend="gint"><returnvalue>gint</returnvalue></link>
gtk_range_get_round_digits (<parameter><link linkend="GtkRange"><type>GtkRange</type></link> *range</parameter>);</programlisting>
<para>Gets the number of digits to round the value to when
it changes. See <link linkend="GtkRange-change-value"><type>“change-value”</type></link>.</para>
<refsect3 id="gtk-range-get-round-digits.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>range</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRange"><type>GtkRange</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-range-get-round-digits.returns" role="returns">
<title>Returns</title>
<para> the number of digits to round to</para>
</refsect3></refsect2>
<refsect2 id="gtk-range-set-round-digits" role="function">
<title>gtk_range_set_round_digits&#160;()</title>
<indexterm zone="gtk-range-set-round-digits"><primary>gtk_range_set_round_digits</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_range_set_round_digits (<parameter><link linkend="GtkRange"><type>GtkRange</type></link> *range</parameter>,
                            <parameter><link linkend="gint"><type>gint</type></link> round_digits</parameter>);</programlisting>
<para>Sets the number of digits to round the value to when
it changes. See <link linkend="GtkRange-change-value"><type>“change-value”</type></link>.</para>
<refsect3 id="gtk-range-set-round-digits.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>range</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRange"><type>GtkRange</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>round_digits</para></entry>
<entry role="parameter_description"><para>the precision in digits, or -1</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-range-get-flippable" role="function">
<title>gtk_range_get_flippable&#160;()</title>
<indexterm zone="gtk-range-get-flippable"><primary>gtk_range_get_flippable</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
gtk_range_get_flippable (<parameter><link linkend="GtkRange"><type>GtkRange</type></link> *range</parameter>);</programlisting>
<para>Gets the value set by <link linkend="gtk-range-set-flippable"><function>gtk_range_set_flippable()</function></link>.</para>
<refsect3 id="gtk-range-get-flippable.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>range</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRange"><type>GtkRange</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-range-get-flippable.returns" role="returns">
<title>Returns</title>
<para> <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if the range is flippable</para>
</refsect3></refsect2>
<refsect2 id="gtk-range-set-flippable" role="function">
<title>gtk_range_set_flippable&#160;()</title>
<indexterm zone="gtk-range-set-flippable"><primary>gtk_range_set_flippable</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_range_set_flippable (<parameter><link linkend="GtkRange"><type>GtkRange</type></link> *range</parameter>,
                         <parameter><link linkend="gboolean"><type>gboolean</type></link> flippable</parameter>);</programlisting>
<para>If a range is flippable, it will switch its direction if it is
horizontal and its direction is <link linkend="GTK-TEXT-DIR-RTL:CAPS"><literal>GTK_TEXT_DIR_RTL</literal></link>.</para>
<para>See <link linkend="gtk-widget-get-direction"><function>gtk_widget_get_direction()</function></link>.</para>
<refsect3 id="gtk-range-set-flippable.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>range</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRange"><type>GtkRange</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>flippable</para></entry>
<entry role="parameter_description"><para><link linkend="TRUE:CAPS"><literal>TRUE</literal></link> to make the range flippable</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-range-get-range-rect" role="function">
<title>gtk_range_get_range_rect&#160;()</title>
<indexterm zone="gtk-range-get-range-rect"><primary>gtk_range_get_range_rect</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_range_get_range_rect (<parameter><link linkend="GtkRange"><type>GtkRange</type></link> *range</parameter>,
                          <parameter><link linkend="GdkRectangle"><type>GdkRectangle</type></link> *range_rect</parameter>);</programlisting>
<para>This function returns the area that contains the range’s trough,
in coordinates relative to <parameter>range</parameter>
's origin.</para>
<para>This function is useful mainly for <link linkend="GtkRange"><type>GtkRange</type></link> subclasses.</para>
<refsect3 id="gtk-range-get-range-rect.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>range</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRange"><type>GtkRange</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>range_rect</para></entry>
<entry role="parameter_description"><para>return location for the range rectangle. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>out</acronym>]</emphasis></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-range-get-slider-range" role="function">
<title>gtk_range_get_slider_range&#160;()</title>
<indexterm zone="gtk-range-get-slider-range"><primary>gtk_range_get_slider_range</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_range_get_slider_range (<parameter><link linkend="GtkRange"><type>GtkRange</type></link> *range</parameter>,
                            <parameter><link linkend="gint"><type>gint</type></link> *slider_start</parameter>,
                            <parameter><link linkend="gint"><type>gint</type></link> *slider_end</parameter>);</programlisting>
<para>This function returns sliders range along the long dimension,
in widget->window coordinates.</para>
<para>This function is useful mainly for <link linkend="GtkRange"><type>GtkRange</type></link> subclasses.</para>
<refsect3 id="gtk-range-get-slider-range.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>range</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRange"><type>GtkRange</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>slider_start</para></entry>
<entry role="parameter_description"><para>return location for the slider's
start, or <link linkend="NULL:CAPS"><literal>NULL</literal></link>. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>out</acronym>][<acronym>allow-none</acronym>]</emphasis></entry></row>
<row><entry role="parameter_name"><para>slider_end</para></entry>
<entry role="parameter_description"><para>return location for the slider's
end, or <link linkend="NULL:CAPS"><literal>NULL</literal></link>. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>out</acronym>][<acronym>allow-none</acronym>]</emphasis></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-range-get-slider-size-fixed" role="function">
<title>gtk_range_get_slider_size_fixed&#160;()</title>
<indexterm zone="gtk-range-get-slider-size-fixed"><primary>gtk_range_get_slider_size_fixed</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
gtk_range_get_slider_size_fixed (<parameter><link linkend="GtkRange"><type>GtkRange</type></link> *range</parameter>);</programlisting>
<para>This function is useful mainly for <link linkend="GtkRange"><type>GtkRange</type></link> subclasses.</para>
<para>See <link linkend="gtk-range-set-slider-size-fixed"><function>gtk_range_set_slider_size_fixed()</function></link>.</para>
<refsect3 id="gtk-range-get-slider-size-fixed.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>range</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRange"><type>GtkRange</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-range-get-slider-size-fixed.returns" role="returns">
<title>Returns</title>
<para> whether the range’s slider has a fixed size.</para>
</refsect3></refsect2>
<refsect2 id="gtk-range-set-slider-size-fixed" role="function">
<title>gtk_range_set_slider_size_fixed&#160;()</title>
<indexterm zone="gtk-range-set-slider-size-fixed"><primary>gtk_range_set_slider_size_fixed</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_range_set_slider_size_fixed (<parameter><link linkend="GtkRange"><type>GtkRange</type></link> *range</parameter>,
                                 <parameter><link linkend="gboolean"><type>gboolean</type></link> size_fixed</parameter>);</programlisting>
<para>Sets whether the range’s slider has a fixed size, or a size that
depends on its adjustment’s page size.</para>
<para>This function is useful mainly for <link linkend="GtkRange"><type>GtkRange</type></link> subclasses.</para>
<refsect3 id="gtk-range-set-slider-size-fixed.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>range</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkRange"><type>GtkRange</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>size_fixed</para></entry>
<entry role="parameter_description"><para><link linkend="TRUE:CAPS"><literal>TRUE</literal></link> to make the slider size constant</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>

</refsect1>
<refsect1 id="GtkRange.other_details" role="details">
<title role="details.title">Types and Values</title>
<refsect2 id="GtkRange-struct" role="struct">
<title>struct GtkRange</title>
<indexterm zone="GtkRange-struct"><primary>GtkRange</primary></indexterm>
<programlisting language="C">struct GtkRange;</programlisting>
</refsect2>

</refsect1>
<refsect1 id="GtkRange.property-details" role="property_details">
<title role="property_details.title">Property Details</title>
<refsect2 id="GtkRange--adjustment" role="property"><title>The <literal>“adjustment”</literal> property</title>
<indexterm zone="GtkRange--adjustment"><primary>GtkRange:adjustment</primary></indexterm>
<programlisting>  “adjustment”               <link linkend="GtkAdjustment"><type>GtkAdjustment</type></link>&#160;*</programlisting>
<para>The GtkAdjustment that contains the current value of this range object.</para><para>Owner: GtkRange</para>
<para>Flags: Read / Write / Construct</para>
</refsect2>
<refsect2 id="GtkRange--fill-level" role="property"><title>The <literal>“fill-level”</literal> property</title>
<indexterm zone="GtkRange--fill-level"><primary>GtkRange:fill-level</primary></indexterm>
<programlisting>  “fill-level”               <link linkend="gdouble"><type>gdouble</type></link></programlisting>
<para>The fill level (e.g. prebuffering of a network stream).
See <link linkend="gtk-range-set-fill-level"><function>gtk_range_set_fill_level()</function></link>.</para>
<para>Owner: GtkRange</para>
<para>Flags: Read / Write</para>
<para>Default value: 1.79769e+308</para>
</refsect2>
<refsect2 id="GtkRange--inverted" role="property"><title>The <literal>“inverted”</literal> property</title>
<indexterm zone="GtkRange--inverted"><primary>GtkRange:inverted</primary></indexterm>
<programlisting>  “inverted”                 <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>Invert direction slider moves to increase range value.</para><para>Owner: GtkRange</para>
<para>Flags: Read / Write</para>
<para>Default value: FALSE</para>
</refsect2>
<refsect2 id="GtkRange--restrict-to-fill-level" role="property"><title>The <literal>“restrict-to-fill-level”</literal> property</title>
<indexterm zone="GtkRange--restrict-to-fill-level"><primary>GtkRange:restrict-to-fill-level</primary></indexterm>
<programlisting>  “restrict-to-fill-level”   <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>The restrict-to-fill-level property controls whether slider
movement is restricted to an upper boundary set by the
fill level. See <link linkend="gtk-range-set-restrict-to-fill-level"><function>gtk_range_set_restrict_to_fill_level()</function></link>.</para>
<para>Owner: GtkRange</para>
<para>Flags: Read / Write</para>
<para>Default value: TRUE</para>
</refsect2>
<refsect2 id="GtkRange--round-digits" role="property"><title>The <literal>“round-digits”</literal> property</title>
<indexterm zone="GtkRange--round-digits"><primary>GtkRange:round-digits</primary></indexterm>
<programlisting>  “round-digits”             <link linkend="gint"><type>gint</type></link></programlisting>
<para>The number of digits to round the value to when
it changes, or -1. See <link linkend="GtkRange-change-value"><type>“change-value”</type></link>.</para>
<para>Owner: GtkRange</para>
<para>Flags: Read / Write</para>
<para>Allowed values: &gt;= -1</para>
<para>Default value: -1</para>
</refsect2>
<refsect2 id="GtkRange--show-fill-level" role="property"><title>The <literal>“show-fill-level”</literal> property</title>
<indexterm zone="GtkRange--show-fill-level"><primary>GtkRange:show-fill-level</primary></indexterm>
<programlisting>  “show-fill-level”          <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>The show-fill-level property controls whether fill level indicator
graphics are displayed on the trough. See
<link linkend="gtk-range-set-show-fill-level"><function>gtk_range_set_show_fill_level()</function></link>.</para>
<para>Owner: GtkRange</para>
<para>Flags: Read / Write</para>
<para>Default value: FALSE</para>
</refsect2>

</refsect1>
<refsect1 id="GtkRange.signal-details" role="signals">
<title role="signals.title">Signal Details</title>
<refsect2 id="GtkRange-adjust-bounds" role="signal"><title>The <literal>“adjust-bounds”</literal> signal</title>
<indexterm zone="GtkRange-adjust-bounds"><primary>GtkRange::adjust-bounds</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
user_function (<link linkend="GtkRange"><type>GtkRange</type></link> *range,
               <link linkend="gdouble"><type>gdouble</type></link>   value,
               <link linkend="gpointer"><type>gpointer</type></link>  user_data)</programlisting>
<para>Emitted before clamping a value, to give the application a
chance to adjust the bounds.</para>
<refsect3 id="GtkRange-adjust-bounds.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>range</para></entry>
<entry role="parameter_description"><para>the <link linkend="GtkRange"><type>GtkRange</type></link> that received the signal</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>value</para></entry>
<entry role="parameter_description"><para>the value before we clamp</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><simpara>user_data</simpara></entry>
<entry role="parameter_description"><simpara>user data set when the signal handler was connected.</simpara></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><para>Flags: <link linkend="G-SIGNAL-RUN-LAST:CAPS">Run Last</link></para>
</refsect2><refsect2 id="GtkRange-change-value" role="signal"><title>The <literal>“change-value”</literal> signal</title>
<indexterm zone="GtkRange-change-value"><primary>GtkRange::change-value</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
user_function (<link linkend="GtkRange"><type>GtkRange</type></link>     *range,
               <link linkend="GtkScrollType"><type>GtkScrollType</type></link> scroll,
               <link linkend="gdouble"><type>gdouble</type></link>       value,
               <link linkend="gpointer"><type>gpointer</type></link>      user_data)</programlisting>
<para>The <link linkend="GtkRange-change-value"><type>“change-value”</type></link> signal is emitted when a scroll action is
performed on a range.  It allows an application to determine the
type of scroll event that occurred and the resultant new value.
The application can handle the event itself and return <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> to
prevent further processing.  Or, by returning <link linkend="FALSE:CAPS"><literal>FALSE</literal></link>, it can pass
the event to other handlers until the default GTK+ handler is
reached.</para>
<para>The value parameter is unrounded.  An application that overrides
the GtkRange::change-value signal is responsible for clamping the
value to the desired number of decimal digits; the default GTK+
handler clamps the value based on <link linkend="GtkRange--round-digits"><type>“round-digits”</type></link>.</para>
<refsect3 id="GtkRange-change-value.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>range</para></entry>
<entry role="parameter_description"><para>the <link linkend="GtkRange"><type>GtkRange</type></link> that received the signal</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>scroll</para></entry>
<entry role="parameter_description"><para>the type of scroll action that was performed</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>value</para></entry>
<entry role="parameter_description"><para>the new value resulting from the scroll action</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><simpara>user_data</simpara></entry>
<entry role="parameter_description"><simpara>user data set when the signal handler was connected.</simpara></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="GtkRange-change-value.returns" role="returns">
<title>Returns</title>
<para> <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> to prevent other handlers from being invoked for
the signal, <link linkend="FALSE:CAPS"><literal>FALSE</literal></link> to propagate the signal further</para>
</refsect3><para>Flags: <link linkend="G-SIGNAL-RUN-LAST:CAPS">Run Last</link></para>
</refsect2><refsect2 id="GtkRange-move-slider" role="signal"><title>The <literal>“move-slider”</literal> signal</title>
<indexterm zone="GtkRange-move-slider"><primary>GtkRange::move-slider</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
user_function (<link linkend="GtkRange"><type>GtkRange</type></link>     *range,
               <link linkend="GtkScrollType"><type>GtkScrollType</type></link> step,
               <link linkend="gpointer"><type>gpointer</type></link>      user_data)</programlisting>
<para>Virtual function that moves the slider. Used for keybindings.</para>
<refsect3 id="GtkRange-move-slider.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>range</para></entry>
<entry role="parameter_description"><para>the <link linkend="GtkRange"><type>GtkRange</type></link> that received the signal</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>step</para></entry>
<entry role="parameter_description"><para>how to move the slider</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><simpara>user_data</simpara></entry>
<entry role="parameter_description"><simpara>user data set when the signal handler was connected.</simpara></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><para>Flags: <link linkend="G-SIGNAL-ACTION:CAPS">Action</link></para>
</refsect2><refsect2 id="GtkRange-value-changed" role="signal"><title>The <literal>“value-changed”</literal> signal</title>
<indexterm zone="GtkRange-value-changed"><primary>GtkRange::value-changed</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
user_function (<link linkend="GtkRange"><type>GtkRange</type></link> *range,
               <link linkend="gpointer"><type>gpointer</type></link>  user_data)</programlisting>
<para>Emitted when the range value changes.</para>
<refsect3 id="GtkRange-value-changed.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>range</para></entry>
<entry role="parameter_description"><para>the <link linkend="GtkRange"><type>GtkRange</type></link> that received the signal</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><simpara>user_data</simpara></entry>
<entry role="parameter_description"><simpara>user data set when the signal handler was connected.</simpara></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><para>Flags: <link linkend="G-SIGNAL-RUN-LAST:CAPS">Run Last</link></para>
</refsect2>
</refsect1>

</refentry>
