Gradient

GtkGradient is a boxed type that represents a gradient. It is the result of parsing a [gradient expression][gtkcssprovider-gradients]. To obtain the gradient represented by a GtkGradient, it has to be resolved with gtk_gradient_resolve(), which replaces all symbolic color references by the colors they refer to (in a given context) and constructs a #cairo_pattern_t value.

It is not normally necessary to deal directly with #GtkGradients, since they are mostly used behind the scenes by #GtkStyleContext and #GtkCssProvider.

#GtkGradient is deprecated. It was used internally by GTK’s CSS engine to represent gradients. As its handling is not conforming to modern web standards, it is not used anymore. If you want to use gradients in your own code, please use Cairo directly.

Constructors

this
this(GtkGradient* gtkGradient, bool ownedRef)

Sets our main struct and passes it to the parent class.

this
this(double x0, double y0, double x1, double y1)

Creates a new linear gradient along the line defined by (x0, y0) and (x1, y1). Before using the gradient a number of stop colors must be added through gtk_gradient_add_color_stop().

this
this(double x0, double y0, double radius0, double x1, double y1, double radius1)

Creates a new radial gradient along the two circles defined by (x0, y0, radius0) and (x1, y1, radius1). Before using the gradient a number of stop colors must be added through gtk_gradient_add_color_stop().

Destructor

~this
~this()
Undocumented in source.

Members

Aliases

doref
alias doref = ref_
Undocumented in source.

Functions

addColorStop
void addColorStop(double offset, SymbolicColor color)

Adds a stop color to @gradient.

getGradientStruct
GtkGradient* getGradientStruct(bool transferOwnership)

Get the main Gtk struct

getStruct
void* getStruct()

the main Gtk struct as a void*

ref_
Gradient ref_()

Increases the reference count of @gradient.

resolve
bool resolve(StyleProperties props, Pattern resolvedGradient)

If @gradient is resolvable, @resolved_gradient will be filled in with the resolved gradient as a cairo_pattern_t, and %TRUE will be returned. Generally, if @gradient can’t be resolved, it is due to it being defined on top of a named color that doesn't exist in @props.

resolveForContext
Pattern resolveForContext(StyleContext context)
toString
string toString()

Creates a string representation for @gradient that is suitable for using in GTK CSS files.

unref
void unref()

Decreases the reference count of @gradient, freeing its memory if the reference count reaches 0.

Static functions

getType
GType getType()

Variables

gtkGradient
GtkGradient* gtkGradient;

the main Gtk struct

ownedRef
bool ownedRef;
Undocumented in source.

Meta