<!-- ##### SECTION Title ##### -->
GtkProgress

<!-- ##### SECTION Short_Description ##### -->
the base class for #GtkProgressBar.

<!-- ##### SECTION Long_Description ##### -->
<para>
A #GtkProgress is the abstract base class used to derive
a #GtkProgressBar which provides a visual representation of
the progress of a long running operation.  
</para>

<!-- ##### SECTION See_Also ##### -->
<para>

</para>

<!-- ##### STRUCT GtkProgress ##### -->
<para>
The #GtkProgress-struct struct contains private data only.
and should be accessed using the functions below.
</para>


<!-- ##### FUNCTION gtk_progress_set_show_text ##### -->
<para>
Controls whether progress text is shown.
</para>

@progress: a #GtkProgress.
@show_text: a boolean indicating whether the progress text
is shown.


<!-- ##### FUNCTION gtk_progress_set_text_alignment ##### -->
<para>
Controls the alignment of the text within the progress bar area.
</para>

@progress: a #GtkProgress.
@x_align: a number between 0.0 and 1.0 indicating the horizontal
alignment of the progress text within the #GtkProgress.
@y_align: a number between 0.0 and 1.0 indicating the vertical
alignment of the progress text within the #GtkProgress.


<!-- ##### FUNCTION gtk_progress_set_format_string ##### -->
<para>
Sets a format string used to display text indicating the
current progress.  The string can contain the following substitution characters:

<itemizedlist>
<listitem>
<para>
%%v - the current progress value.
</para>
</listitem>
<listitem>
<para>
%%l - the lower bound for the progress value.
</para>
</listitem>
<listitem>
<para>
%%u - the upper bound for the progress value.
</para>
</listitem>
<listitem>
<para>
%%p - the current progress percentage.
</para>
</listitem>
</itemizedlist>
</para>

@progress: a #GtkProgress.
@format: a string used to display progress text.


<!-- ##### FUNCTION gtk_progress_set_adjustment ##### -->
<para>
Associates a #GtkAdjustment with the #GtkProgress.  A #GtkAdjustment
is used to represent the upper and lower bounds and the step interval
of the underlying value for which progress is shown.
</para>

@progress: a #GtkProgress.
@adjustment: the #GtkAdjustment to be associated with the #GtkProgress.


<!-- ##### FUNCTION gtk_progress_set_percentage ##### -->
<para>
Sets the current percentage completion for the #GtkProgress.
</para>

@progress: a #GtkProgress.
@percentage: the percentage complete which must be between 0.0
and 1.0.


<!-- ##### FUNCTION gtk_progress_set_value ##### -->
<para>
Sets the value within the #GtkProgress to an absolute value.
The value must be within the valid range of values for the
underlying #GtkAdjustment.
</para>

@progress: a #GtkProgress.
@value: the value indicating the current completed amount.


<!-- ##### FUNCTION gtk_progress_get_value ##### -->
<para>
Returns the current progress complete value.
</para>

@progress: a #GtkProgress.
@Returns: the current progress complete value.


<!-- ##### FUNCTION gtk_progress_set_activity_mode ##### -->
<para>
A #GtkProgress can be in one of two different modes: percentage
mode (the default) and activity mode.  In activity mode, the 
progress is simply indicated as activity rather than as a percentage
complete.
</para>

@progress: a #GtkProgress.
@activity_mode: a boolean, TRUE for activity mode.


<!-- ##### FUNCTION gtk_progress_get_current_text ##### -->
<para>
Returns the current text associated with the #GtkProgress.  This
text is the based on the underlying format string after any substitutions
are made.
</para>

@progress: a #GtkProgress.
@Returns: the text indicating the current progress.


<!-- ##### FUNCTION gtk_progress_get_text_from_value ##### -->
<para>
Returns the text indicating the progress based on the supplied value.
The current value for the #GtkProgress remains unchanged.  
</para>

@progress: a #GtkProgress.
@value: an absolute progress value to use when formatting the progress text.
@Returns: a string indicating the progress.


<!-- ##### FUNCTION gtk_progress_get_current_percentage ##### -->
<para>
Returns the current progress as a percentage.
</para>

@progress: a #GtkProgress.
@Returns: a number between 0.0 and 1.0 indicating the percentage complete.


<!-- ##### FUNCTION gtk_progress_get_percentage_from_value ##### -->
<para>
Returns the progress as a percentage calculated from the supplied
absolute progress value.
</para>

@progress: a #GtkProgress.
@value: an absolute progress value.
@Returns: a number between 0.0 and 1.0 indicating the percentage complete
represented by @value.


<!-- ##### FUNCTION gtk_progress_configure ##### -->
<para>
Allows the configuration of the minimum, maximum, and current values for
the #GtkProgress.
</para>

@progress: a #GtkProgress.
@value: the current progress value.
@min: the minimum progress value.
@max: the maximum progress value.


<!-- ##### ARG GtkProgress:activity-mode ##### -->
<para>
A boolean indicating whether activity mode is enabled.
</para>

<!-- ##### ARG GtkProgress:show-text ##### -->
<para>
A boolean indicating whether the progress is shown as text.
</para>

<!-- ##### ARG GtkProgress:text-xalign ##### -->
<para>
A number between 0.0 and 1.0 specifying the horizontal alignment.
</para>

<!-- ##### ARG GtkProgress:text-yalign ##### -->
<para>
A number between 0.0 and 1.0 specifying the vertical alignment.
</para>

