Synopsis

enum                GOImageType;
                    GOStyle;
enum                GOStyleFill;
enum                GOStyleFlag;
                    GOStyleLine;
                    GOStyleMark;
void                go_style_apply_theme                (GOStyle *dst,
                                                         GOStyle const *src,
                                                         GOStyleFlag fields);
void                go_style_assign                     (GOStyle *dst,
                                                         GOStyle const *src);
GOStyle *           go_style_dup                        (GOStyle const *style);
void                go_style_fill                       (GOStyle const *style,
                                                         cairo_t *cr,
                                                         gboolean preserve);
void                go_style_force_auto                 (GOStyle *style);
void                go_style_clear_auto                 (GOStyle *style);
gpointer            go_style_get_editor                 (GOStyle *style,
                                                         GOStyle *default_style,
                                                         GOCmdContext *cc,
                                                         GObject *object_with_style);
GOMarker const *    go_style_get_marker                 (GOStyle *style);
gboolean            go_style_is_auto                    (GOStyle *style);
gboolean            go_style_is_different_size          (GOStyle const *a,
                                                         GOStyle const *b);
gboolean            go_style_is_fill_visible            (GOStyle const *style);
gboolean            go_style_is_line_visible            (GOStyle const *style);
gboolean            go_style_is_marker_visible          (GOStyle const *style);
gboolean            go_style_is_outline_visible         (GOStyle const *style);
GOStyle *           go_style_new                        (void);
void                go_style_populate_editor            (GOStyle *style,
                                                         GOEditor *editor,
                                                         GOStyle *default_style,
                                                         GOCmdContext *cc,
                                                         GObject *object_with_style,
                                                         gboolean watch_for_external_change);
gboolean            go_style_set_cairo_line             (GOStyle const *style,
                                                         cairo_t *cr);
void                go_style_set_fill_brightness        (GOStyle *style,
                                                         double brightness);
void                go_style_set_font                   (GOStyle *style,
                                                         GOFont const *font);
void                go_style_set_font_desc              (GOStyle *style,
                                                         PangoFontDescription *desc);
void                go_style_set_marker                 (GOStyle *style,
                                                         GOMarker *marker);
void                go_style_set_text_angle             (GOStyle *style,
                                                         double angle);

Object Hierarchy

  GObject
   +----GOStyle
         +----GogStyle

Implemented Interfaces

GOStyle implements GOPersist.

Description

Details

enum GOImageType

typedef enum {
	GO_IMAGE_STRETCHED,
	GO_IMAGE_WALLPAPER,
	GO_IMAGE_CENTERED,
	GO_IMAGE_CENTERED_WALLPAPER
} GOImageType;

GO_IMAGE_STRETCHED

stretch the image so that it fills the whole area.

GO_IMAGE_WALLPAPER

repeat the image starting from top left.

GO_IMAGE_CENTERED

use only one image at its natural size, centered in the area.

GO_IMAGE_CENTERED_WALLPAPER

repeat the image starting from one at center.

GOStyle

typedef struct _GOStyle GOStyle;


enum GOStyleFill

typedef enum {
	GO_STYLE_FILL_NONE = 0,
	GO_STYLE_FILL_PATTERN = 1,
	GO_STYLE_FILL_GRADIENT = 2,
	GO_STYLE_FILL_IMAGE = 3
} GOStyleFill;

GO_STYLE_FILL_NONE

no filling.

GO_STYLE_FILL_PATTERN

fill with pattern.

GO_STYLE_FILL_GRADIENT

fill with a gradient.

GO_STYLE_FILL_IMAGE

fill with an image.

enum GOStyleFlag

typedef enum {
	GO_STYLE_OUTLINE = 1 << 0,
	GO_STYLE_FILL		= 1 << 1,
	GO_STYLE_LINE		= 1 << 2,
	GO_STYLE_MARKER = 1 << 3,
	GO_STYLE_FONT		= 1 << 4,
	GO_STYLE_TEXT_LAYOUT = 1 << 5,
	GO_STYLE_INTERPOLATION = 1 << 6,
	GO_STYLE_MARKER_NO_COLOR = 1 << 7,
	GO_STYLE_ALL		= 0x1F
} GOStyleFlag;

Gives the meaningful fields in GOStyle. Anyw combination can be used, except that GO_STYLE_OUTLINE and GO_STYLE_OUTLINE should never coexist.

GO_STYLE_OUTLINE

outline.

GO_STYLE_FILL

fill.

GO_STYLE_LINE

line.

GO_STYLE_MARKER

marker.

GO_STYLE_FONT

font.

GO_STYLE_TEXT_LAYOUT

text orientaiton.

GO_STYLE_INTERPOLATION

curve interpolation.

GO_STYLE_MARKER_NO_COLOR

marker with no color.

GO_STYLE_ALL

all elements

GOStyleLine

typedef struct {
	/* <0 == no outline,
	 * =0 == hairline : unscaled, minimum useful (can be bigger than visible) size.
	 * >0 in pts */
	double	 	 width;
	GOLineDashType 	 dash_type;
	gboolean	 auto_dash;
	GOColor	 	 color; /* color is used as background for compatibility
						(pattern == 0 means filled with background color) */
	GOColor	 	 fore;
	gboolean 	 auto_color;
	gboolean 	 auto_fore;
	gboolean 	 auto_width;
	GOPatternType	 pattern;
	cairo_line_cap_t cap;
	cairo_line_join_t join;
	double		 miter_limit;
} GOStyleLine;

double width;

line width: <0 == no line, =0 == hairline : unscaled, minimum useful (can be bigger than visible) size. >0 in pts.

GOLineDashType dash_type;

GOLineDashType.

gboolean auto_dash;

automatic dash type.

GOColor color;

color is used as background for compatibility (pattern == 0 means filled with background color).

GOColor fore;

second color used for patterned lines.

gboolean auto_color;

color is automatic.

gboolean auto_fore;

fore is automatic.

gboolean auto_width;

GOPatternType pattern;

pattern.

cairo_line_cap_t cap;

cap style.

cairo_line_join_t join;

join style.

double miter_limit;

mitter limit.

GOStyleMark

typedef struct {
	GOMarker *mark;
	gboolean auto_shape;
	gboolean auto_outline_color;
	gboolean auto_fill_color;
} GOStyleMark;

GOMarker *mark;

the used GOMarker.

gboolean auto_shape;

automatic marc.

gboolean auto_outline_color;

automatic outline color.

gboolean auto_fill_color;

automatic fill color.

go_style_apply_theme ()

void                go_style_apply_theme                (GOStyle *dst,
                                                         GOStyle const *src,
                                                         GOStyleFlag fields);

Merge the attributes from src onto the elements of dst that were not user assigned (is_auto)

dst :

GOStyle

src :

GOStyle

fields :

the fields to which the copy should be limited

go_style_assign ()

void                go_style_assign                     (GOStyle *dst,
                                                         GOStyle const *src);


go_style_dup ()

GOStyle *           go_style_dup                        (GOStyle const *style);

Duplicates style.

style :

a source GOStyle

Returns :

a new GOStyle. [transfer full]

go_style_fill ()

void                go_style_fill                       (GOStyle const *style,
                                                         cairo_t *cr,
                                                         gboolean preserve);


go_style_force_auto ()

void                go_style_force_auto                 (GOStyle *style);

Sets all auto fields in style to TRUE.

style :

a GOStyle

go_style_clear_auto ()

void                go_style_clear_auto                 (GOStyle *style);

Sets all auto fields in style to FALSE.

style :

a GOStyle

go_style_get_editor ()

gpointer            go_style_get_editor                 (GOStyle *style,
                                                         GOStyle *default_style,
                                                         GOCmdContext *cc,
                                                         GObject *object_with_style);

Builds the widget used to edit the style.

style :

GOStyle

default_style :

the style used as default

cc :

GOCmdContext

object_with_style :

the object owning the style

Returns :

the style editor. [transfer full]

go_style_get_marker ()

GOMarker const *    go_style_get_marker                 (GOStyle *style);

Accessor for style::marker, without referencing it.

style :

GOStyle

Returns :

the style GOMarker. [transfer none]

go_style_is_auto ()

gboolean            go_style_is_auto                    (GOStyle *style);


go_style_is_different_size ()

gboolean            go_style_is_different_size          (GOStyle const *a,
                                                         GOStyle const *b);


go_style_is_fill_visible ()

gboolean            go_style_is_fill_visible            (GOStyle const *style);


go_style_is_line_visible ()

gboolean            go_style_is_line_visible            (GOStyle const *style);


go_style_is_marker_visible ()

gboolean            go_style_is_marker_visible          (GOStyle const *style);


go_style_is_outline_visible ()

gboolean            go_style_is_outline_visible         (GOStyle const *style);


go_style_new ()

GOStyle *           go_style_new                        (void);


go_style_populate_editor ()

void                go_style_populate_editor            (GOStyle *style,
                                                         GOEditor *editor,
                                                         GOStyle *default_style,
                                                         GOCmdContext *cc,
                                                         GObject *object_with_style,
                                                         gboolean watch_for_external_change);


go_style_set_cairo_line ()

gboolean            go_style_set_cairo_line             (GOStyle const *style,
                                                         cairo_t *cr);


go_style_set_fill_brightness ()

void                go_style_set_fill_brightness        (GOStyle *style,
                                                         double brightness);


go_style_set_font ()

void                go_style_set_font                   (GOStyle *style,
                                                         GOFont const *font);


go_style_set_font_desc ()

void                go_style_set_font_desc              (GOStyle *style,
                                                         PangoFontDescription *desc);


go_style_set_marker ()

void                go_style_set_marker                 (GOStyle *style,
                                                         GOMarker *marker);

Absorb a reference to marker and assign it to style.

style :

GOStyle

marker :

GOMarker

go_style_set_text_angle ()

void                go_style_set_text_angle             (GOStyle *style,
                                                         double angle);

Set text rotation angle in degrees. Valid values are in the range [-180.0° , 180.0°].

style :

GOStyle

angle :

text rotation in degrees