1999-08-16 18:51:52 +00:00
|
|
|
<!-- ##### SECTION Title ##### -->
|
|
|
|
GtkCurve
|
|
|
|
|
|
|
|
<!-- ##### SECTION Short_Description ##### -->
|
1999-09-22 21:30:57 +00:00
|
|
|
allows direct editing of a curve.
|
1999-08-16 18:51:52 +00:00
|
|
|
|
|
|
|
<!-- ##### SECTION Long_Description ##### -->
|
2003-04-12 23:29:46 +00:00
|
|
|
<note>
|
2001-02-03 01:09:41 +00:00
|
|
|
<para>
|
2003-04-12 23:29:46 +00:00
|
|
|
This widget is considered too specialized/little-used for
|
2001-02-03 01:09:41 +00:00
|
|
|
GTK+, and will in the future be moved to some other package. If
|
|
|
|
your application needs this widget, feel free to use it, as the
|
|
|
|
widget does work and is useful in some applications; it's just not
|
|
|
|
of general interest. However, we are not accepting new features for
|
|
|
|
the widget, and it will eventually move out of the GTK+
|
|
|
|
distribution.
|
|
|
|
</para>
|
2003-04-12 23:29:46 +00:00
|
|
|
</note>
|
1999-08-16 18:51:52 +00:00
|
|
|
<para>
|
1999-09-22 21:30:57 +00:00
|
|
|
The #GtkCurve widget allows the user to edit a curve covering a range of
|
|
|
|
values. It is typically used to fine-tune color balances in graphics
|
|
|
|
applications like the Gimp.
|
|
|
|
</para>
|
|
|
|
<para>
|
|
|
|
The #GtkCurve widget has 3 modes of operation - spline, linear and free.
|
|
|
|
In spline mode the user places points on the curve which are automatically
|
|
|
|
connected together into a smooth curve. In linear mode the user places points
|
|
|
|
on the curve which are connected by straight lines. In free mode the user can
|
|
|
|
draw the points of the curve freely, and they are not connected at all.
|
1999-08-16 18:51:52 +00:00
|
|
|
</para>
|
|
|
|
|
|
|
|
<!-- ##### SECTION See_Also ##### -->
|
|
|
|
<para>
|
1999-09-22 21:30:57 +00:00
|
|
|
<variablelist>
|
|
|
|
<varlistentry>
|
|
|
|
<term>#GtkGammaCurve</term>
|
2000-01-05 15:04:23 +00:00
|
|
|
<listitem><para>a subclass for editing gamma curves.</para>
|
1999-09-22 21:30:57 +00:00
|
|
|
</listitem>
|
|
|
|
</varlistentry>
|
|
|
|
</variablelist>
|
1999-08-16 18:51:52 +00:00
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<!-- ##### STRUCT GtkCurve ##### -->
|
|
|
|
<para>
|
1999-09-22 21:30:57 +00:00
|
|
|
The #GtkCurve-struct struct contains private data only, and
|
|
|
|
should be accessed using the functions below.
|
1999-08-16 18:51:52 +00:00
|
|
|
</para>
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_curve_new ##### -->
|
|
|
|
<para>
|
1999-09-22 21:30:57 +00:00
|
|
|
Creates a new #GtkCurve.
|
1999-08-16 18:51:52 +00:00
|
|
|
</para>
|
|
|
|
|
1999-09-22 21:30:57 +00:00
|
|
|
@Returns: a new #GtkCurve.
|
1999-08-16 18:51:52 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_curve_reset ##### -->
|
|
|
|
<para>
|
2002-05-28 22:23:55 +00:00
|
|
|
Resets the curve to a straight line from the minimum x and y values to the
|
|
|
|
maximum x and y values (i.e. from the bottom-left to the top-right corners).
|
1999-09-22 21:30:57 +00:00
|
|
|
The curve type is not changed.
|
1999-08-16 18:51:52 +00:00
|
|
|
</para>
|
|
|
|
|
1999-09-22 21:30:57 +00:00
|
|
|
@curve: a #GtkCurve.
|
1999-08-16 18:51:52 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_curve_set_gamma ##### -->
|
|
|
|
<para>
|
1999-09-22 21:30:57 +00:00
|
|
|
Recomputes the entire curve using the given gamma value.
|
|
|
|
A gamma value of 1 results in a straight line. Values greater than 1 result
|
|
|
|
in a curve above the straight line. Values less than 1 result in a curve
|
|
|
|
below the straight line. The curve type is changed to %GTK_CURVE_TYPE_FREE.
|
|
|
|
FIXME: Needs a more precise definition of gamma.
|
1999-08-16 18:51:52 +00:00
|
|
|
</para>
|
|
|
|
|
1999-09-22 21:30:57 +00:00
|
|
|
@curve: a #GtkCurve.
|
2002-11-08 19:41:50 +00:00
|
|
|
@gamma_: the gamma value.
|
1999-08-16 18:51:52 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_curve_set_range ##### -->
|
|
|
|
<para>
|
2002-05-28 22:23:55 +00:00
|
|
|
Sets the minimum and maximum x and y values of the curve.
|
1999-09-22 21:30:57 +00:00
|
|
|
The curve is also reset with a call to gtk_curve_reset().
|
1999-08-16 18:51:52 +00:00
|
|
|
</para>
|
|
|
|
|
1999-09-22 21:30:57 +00:00
|
|
|
@curve: a #GtkCurve.
|
|
|
|
@min_x: the minimum x value.
|
|
|
|
@max_x: the maximum x value.
|
|
|
|
@min_y: the minimum y value.
|
|
|
|
@max_y: the maximum y value.
|
1999-08-16 18:51:52 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_curve_get_vector ##### -->
|
|
|
|
<para>
|
1999-09-22 21:30:57 +00:00
|
|
|
Returns a vector of points representing the curve.
|
1999-08-16 18:51:52 +00:00
|
|
|
</para>
|
|
|
|
|
1999-09-22 21:30:57 +00:00
|
|
|
@curve: a #GtkCurve.
|
|
|
|
@veclen: the number of points to calculate.
|
|
|
|
@vector: returns the points.
|
1999-08-16 18:51:52 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_curve_set_vector ##### -->
|
|
|
|
<para>
|
1999-09-22 21:30:57 +00:00
|
|
|
Sets the vector of points on the curve.
|
|
|
|
The curve type is set to %GTK_CURVE_TYPE_FREE.
|
1999-08-16 18:51:52 +00:00
|
|
|
</para>
|
|
|
|
|
1999-09-22 21:30:57 +00:00
|
|
|
@curve: a #GtkCurve.
|
|
|
|
@veclen: the number of points.
|
|
|
|
@vector: the points on the curve.
|
1999-08-16 18:51:52 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_curve_set_curve_type ##### -->
|
|
|
|
<para>
|
1999-09-22 21:30:57 +00:00
|
|
|
Sets the type of the curve. The curve will remain unchanged except when
|
|
|
|
changing from a free curve to a linear or spline curve, in which case the
|
|
|
|
curve will be changed as little as possible.
|
1999-08-16 18:51:52 +00:00
|
|
|
</para>
|
|
|
|
|
1999-09-22 21:30:57 +00:00
|
|
|
@curve: a #GtkCurve.
|
|
|
|
@type: the type of the curve.
|
1999-08-16 18:51:52 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### SIGNAL GtkCurve::curve-type-changed ##### -->
|
|
|
|
<para>
|
1999-09-22 21:30:57 +00:00
|
|
|
Emitted when the curve type has been changed.
|
|
|
|
The curve type can be changed explicitly with a call to
|
|
|
|
gtk_curve_set_curve_type(). It is also changed as a side-effect of
|
|
|
|
calling gtk_curve_reset() or gtk_curve_set_gamma().
|
1999-08-16 18:51:52 +00:00
|
|
|
</para>
|
|
|
|
|
|
|
|
@curve: the object which received the signal.
|
|
|
|
|
2001-01-09 16:41:17 +00:00
|
|
|
<!-- ##### ARG GtkCurve:curve-type ##### -->
|
2000-09-07 18:17:06 +00:00
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
2002-11-02 18:18:50 +00:00
|
|
|
<!-- ##### ARG GtkCurve:max-x ##### -->
|
2000-09-07 18:17:06 +00:00
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
2002-11-02 18:18:50 +00:00
|
|
|
<!-- ##### ARG GtkCurve:max-y ##### -->
|
2000-09-07 18:17:06 +00:00
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
2002-11-02 18:18:50 +00:00
|
|
|
<!-- ##### ARG GtkCurve:min-x ##### -->
|
2000-09-07 18:17:06 +00:00
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
2002-11-02 18:18:50 +00:00
|
|
|
<!-- ##### ARG GtkCurve:min-y ##### -->
|
2000-09-07 18:17:06 +00:00
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|