GTK+ 3 Reference Manual | ||||
---|---|---|---|---|
Top | Description |
#include <gtk/gtk.h> GtkSymbolicColor; GtkSymbolicColor * gtk_symbolic_color_new_literal (const GdkRGBA *color
); GtkSymbolicColor * gtk_symbolic_color_new_name (const gchar *name
); GtkSymbolicColor * gtk_symbolic_color_new_shade (GtkSymbolicColor *color
,gdouble factor
); GtkSymbolicColor * gtk_symbolic_color_new_alpha (GtkSymbolicColor *color
,gdouble factor
); GtkSymbolicColor * gtk_symbolic_color_new_mix (GtkSymbolicColor *color1
,GtkSymbolicColor *color2
,gdouble factor
); GtkSymbolicColor * gtk_symbolic_color_ref (GtkSymbolicColor *color
); void gtk_symbolic_color_unref (GtkSymbolicColor *color
); gboolean gtk_symbolic_color_resolve (GtkSymbolicColor *color
,GtkStyleProperties *props
,GdkRGBA *resolved_color
);
GtkSymbolicColor is a boxed type that represents a symbolic color.
It is the result of parsing a
color expression.
To obtain the color represented by a GtkSymbolicColor, it has to
be resolved with gtk_symbolic_color_resolve()
, which replaces all
symbolic color references by the colors they refer to (in a given
context) and evaluates mix, shade and other expressions, resulting
in a GdkRGBA value.
It is not normally necessary to deal directly with GtkSymbolicColors, since they are mostly used behind the scenes by GtkStyleContext and GtkCssProvider.
GtkSymbolicColor * gtk_symbolic_color_new_literal (const GdkRGBA *color
);
Creates a symbolic color pointing to a literal color.
|
a GdkRGBA |
Returns : |
a newly created GtkSymbolicColor |
Since 3.0
GtkSymbolicColor * gtk_symbolic_color_new_name (const gchar *name
);
Creates a symbolic color pointing to an unresolved named
color. See gtk_style_context_lookup_color()
and
gtk_style_properties_lookup_color()
.
|
color name |
Returns : |
a newly created GtkSymbolicColor |
Since 3.0
GtkSymbolicColor * gtk_symbolic_color_new_shade (GtkSymbolicColor *color
,gdouble factor
);
Creates a symbolic color defined as a shade of another color. A factor > 1.0 would resolve to a brighter color, while < 1.0 would resolve to a darker color.
|
another GtkSymbolicColor |
|
shading factor to apply to color
|
Returns : |
A newly created GtkSymbolicColor |
Since 3.0
GtkSymbolicColor * gtk_symbolic_color_new_alpha (GtkSymbolicColor *color
,gdouble factor
);
Creates a symbolic color by modifying the relative alpha
value of color
. A factor < 1.0 would resolve to a more
transparent color, while > 1.0 would resolve to a more
opaque color.
|
another GtkSymbolicColor |
|
factor to apply to color alpha |
Returns : |
A newly created GtkSymbolicColor |
Since 3.0
GtkSymbolicColor * gtk_symbolic_color_new_mix (GtkSymbolicColor *color1
,GtkSymbolicColor *color2
,gdouble factor
);
Creates a symbolic color defined as a mix of another
two colors. a mix factor of 0 would resolve to color1
,
while a factor of 1 would resolve to color2
.
|
color to mix |
|
another color to mix |
|
mix factor |
Returns : |
A newly created GtkSymbolicColor |
Since 3.0
GtkSymbolicColor * gtk_symbolic_color_ref (GtkSymbolicColor *color
);
Increases the reference count of color
|
a GtkSymbolicColor |
Returns : |
the same color
|
Since 3.0
void gtk_symbolic_color_unref (GtkSymbolicColor *color
);
Decreases the reference count of color
, freeing its memory if the
reference count reaches 0.
|
a GtkSymbolicColor |
Since 3.0
gboolean gtk_symbolic_color_resolve (GtkSymbolicColor *color
,GtkStyleProperties *props
,GdkRGBA *resolved_color
);
If color
is resolvable, resolved_color
will be filled in
with the resolved color, and TRUE
will be returned. Generally,
if color
can't be resolved, it is due to it being defined on
top of a named color that doesn't exist in props
.
props
must be non-NULL
if color
was created using
gtk_symbolic_color_named_new()
, but can be omitted in other cases.
|
a GtkSymbolicColor |
|
GtkStyleProperties to use when resolving
named colors, or NULL . [allow-none]
|
|
return location for the resolved color. [out] |
Returns : |
TRUE if the color has been resolved |
Since 3.0