PgmRenderShadowIFace

PgmRenderShadowIFace — An interface for drawing drop shadows.

Synopsis




enum        PgmRenderShadowType;
            PgmRenderShadowIFace;
PgmRenderError pgm_render_shadow_set_radius (PgmRenderShadowIFace *shadow,
                                             gint radius);
PgmRenderError pgm_render_shadow_get_radius (PgmRenderShadowIFace *shadow,
                                             gint *radius);
PgmRenderError pgm_render_shadow_set_offset (PgmRenderShadowIFace *shadow,
                                             gint x,
                                             gint y);
PgmRenderError pgm_render_shadow_get_offset (PgmRenderShadowIFace *shadow,
                                             gint *x,
                                             gint *y);
PgmRenderError pgm_render_shadow_set_type   (PgmRenderShadowIFace *shadow,
                                             PgmRenderShadowType type);
PgmRenderError pgm_render_shadow_get_type   (PgmRenderShadowIFace *shadow,
                                             PgmRenderShadowType *type);
PgmRenderError pgm_render_shadow_set_color  (PgmRenderShadowIFace *shadow,
                                             guchar r,
                                             guchar g,
                                             guchar b,
                                             guchar a);
PgmRenderError pgm_render_shadow_get_color  (PgmRenderShadowIFace *shadow,
                                             guchar *r,
                                             guchar *g,
                                             guchar *b,
                                             guchar *a);


Description

PgmRenderShadowIFace is an interface to add different shadow drawing capabilities to an object.

Details

enum PgmRenderShadowType

typedef enum {
  PGM_RENDER_HARD_SHADOW,
  PGM_RENDER_SOFT_SHADOW
} PgmRenderShadowType;

The different types of shadow.

PGM_RENDER_HARD_SHADOW Shadow with a unique color.
PGM_RENDER_SOFT_SHADOW Shadow with a blurred color.

PgmRenderShadowIFace

typedef struct _PgmRenderShadowIFace PgmRenderShadowIFace;


pgm_render_shadow_set_radius ()

PgmRenderError pgm_render_shadow_set_radius (PgmRenderShadowIFace *shadow,
                                             gint radius);

A shadow could be drawn under an object. Sets the radius of shadow.

shadow : A PgmRenderShadowIFace object.
radius : The radius of the shadow. It is the width added to each side of the surface.
Returns : An error status.

pgm_render_shadow_get_radius ()

PgmRenderError pgm_render_shadow_get_radius (PgmRenderShadowIFace *shadow,
                                             gint *radius);

Retrieves the radius from shadow.

shadow : A PgmRenderShadowIFace object.
radius : The radius to fill.
Returns : An error status.

pgm_render_shadow_set_offset ()

PgmRenderError pgm_render_shadow_set_offset (PgmRenderShadowIFace *shadow,
                                             gint x,
                                             gint y);

Sets the offset of shadow to (x, y).

shadow : A PgmRenderShadowIFace object.
x : The X offset.
y : The Y offset.
Returns : An error status.

pgm_render_shadow_get_offset ()

PgmRenderError pgm_render_shadow_get_offset (PgmRenderShadowIFace *shadow,
                                             gint *x,
                                             gint *y);

Retrieves the (x, y) offset from shadow.

shadow : A PgmRenderShadowIFace object.
x : The X offset to fill.
y : The Y offset to fill.
Returns : An error status.

pgm_render_shadow_set_type ()

PgmRenderError pgm_render_shadow_set_type   (PgmRenderShadowIFace *shadow,
                                             PgmRenderShadowType type);

Sets the type of shadow.

shadow : A PgmRenderShadowIFace object.
type : The type of the shadow.
Returns : An error status.

pgm_render_shadow_get_type ()

PgmRenderError pgm_render_shadow_get_type   (PgmRenderShadowIFace *shadow,
                                             PgmRenderShadowType *type);

Retrieves the type from shadow.

shadow : A PgmRenderShadowIFace object.
type : The type to fill.
Returns : An error status.

pgm_render_shadow_set_color ()

PgmRenderError pgm_render_shadow_set_color  (PgmRenderShadowIFace *shadow,
                                             guchar r,
                                             guchar g,
                                             guchar b,
                                             guchar a);

Sets the color of shadow to (r, g, b, a).

shadow : A PgmRenderShadowIFace object.
r : The R color layer.
g : The G color layer.
b : The B color layer.
a : The A color layer.
Returns : An error status.

pgm_render_shadow_get_color ()

PgmRenderError pgm_render_shadow_get_color  (PgmRenderShadowIFace *shadow,
                                             guchar *r,
                                             guchar *g,
                                             guchar *b,
                                             guchar *a);

Retrieves the (r, g, b, a) color of shadow.

shadow : A PgmRenderShadowIFace object.
r : The R color layer to fill.
g : The G color layer to fill.
b : The B color layer to fill.
a : The A color layer to fill.
Returns : An error status.