GooCanvasGridModel

GooCanvasGridModel — a model for grid items.

Types and Values

Object Hierarchy

    GObject
    ╰── GooCanvasItemModelSimple
        ╰── GooCanvasGridModel

Implemented Interfaces

GooCanvasGridModel implements GooCanvasItemModel.

Description

GooCanvasGridModel represents a model for grid items. A grid consists of a number of equally-spaced horizontal and vertical grid lines, plus an optional border.

It is a subclass of GooCanvasItemModelSimple and so inherits all of the style properties such as "stroke-color", "fill-color" and "line-width".

It also implements the GooCanvasItemModel interface, so you can use the GooCanvasItemModel functions such as goo_canvas_item_model_raise() and goo_canvas_item_model_rotate().

To create a GooCanvasGridModel use goo_canvas_grid_model_new().

To get or set the properties of an existing GooCanvasGridModel, use g_object_get() and g_object_set().

To respond to events such as mouse clicks on the grid you must connect to the signal handlers of the corresponding GooCanvasGrid objects. (See goo_canvas_get_item() and “item-created”.)

The grid's position and size is specified with the “x”, “y”, “width” and “height” properties.

The “x-step” and “y-step” properties specify the distance between grid lines. The “x-offset” and “y-offset” properties specify the distance before the first grid lines.

The horizontal or vertical grid lines can be hidden using the “show-horz-grid-lines” and “show-vert-grid-lines” properties.

The width of the border can be set using the “border-width” property. The border is drawn outside the area specified with the “x”, “y”, “width” and “height” properties.

Other properties allow the colors and widths of the grid lines to be set. The grid line color and width properties override the standard “stroke-color” and “line-width” properties, enabling different styles for horizontal and vertical grid lines.

Functions

goo_canvas_grid_model_new ()

GooCanvasItemModel *
goo_canvas_grid_model_new (GooCanvasItemModel *parent,
                           gdouble x,
                           gdouble y,
                           gdouble width,
                           gdouble height,
                           gdouble x_step,
                           gdouble y_step,
                           gdouble x_offset,
                           gdouble y_offset,
                           ...);

Creates a new grid model.

Here's an example showing how to create a grid:

1
2
3
4
5
6
7
8
9
10
GooCanvasItemModel *grid = goo_canvas_grid_model_new (mygroup, 100.0, 100.0, 400.0, 200.0,
                                                      20.0, 20.0, 10.0, 10.0,
                                                      "horz-grid-line-width", 4.0,
                                                      "horz-grid-line-color", "yellow",
                                                      "vert-grid-line-width", 2.0,
                                                      "vert-grid-line-color", "red",
                                                      "border-width", 3.0,
                                                      "border-color", "white",
                                                      "fill-color", "blue",
                                                      NULL);

Parameters

parent

the parent model, or NULL. If a parent is specified, it will assume ownership of the item, and the item will automatically be freed when it is removed from the parent. Otherwise call g_object_unref() to free it.

[skip]

x

the x coordinate of the left of the grid.

 

y

the y coordinate of the top of the grid.

 

width

the width of the grid.

 

height

the height of the grid.

 

x_step

the distance between the vertical grid lines.

 

y_step

the distance between the horizontal grid lines.

 

x_offset

the distance before the first vertical grid line.

 

y_offset

the distance before the first horizontal grid line.

 

...

optional pairs of property names and values, and a terminating NULL.

 

Returns

a new grid model.

[transfer full]

Types and Values

struct GooCanvasGridModel

struct GooCanvasGridModel;

The GooCanvasGridModel struct contains private data only.

Property Details

The “border-color” property

  “border-color”             gchar *

The color to use for the border.

Flags: Write

Default value: NULL


The “border-color-gdk-rgba” property

  “border-color-gdk-rgba”    GdkRGBA *

The color to use for the border, specified as a GdkRGBA.

Flags: Read / Write


The “border-color-rgba” property

  “border-color-rgba”        guint

The color to use for the border, specified as a 32-bit integer value.

Flags: Read / Write

Default value: 0


The “border-pattern” property

  “border-pattern”           GooCairoPattern *

The cairo pattern to paint the border with.

Flags: Read / Write


The “border-pixbuf” property

  “border-pixbuf”            GdkPixbuf *

The pixbuf to use to draw the border.

Flags: Write


The “border-width” property

  “border-width”             gdouble

The width of the border around the grid.

Flags: Read / Write

Default value: -1


The “height” property

  “height”                   gdouble

The height of the grid.

Flags: Read / Write

Allowed values: >= 0

Default value: 0


The “horz-grid-line-color” property

  “horz-grid-line-color”     gchar *

The color to use for the horizontal grid lines.

Flags: Write

Default value: NULL


The “horz-grid-line-color-gdk-rgba” property

  “horz-grid-line-color-gdk-rgba” GdkRGBA *

The color to use for the horizontal grid lines, specified as a GdkRGBA.

Flags: Read / Write


The “horz-grid-line-color-rgba” property

  “horz-grid-line-color-rgba” guint

The color to use for the horizontal grid lines, specified as a 32-bit integer value.

Flags: Read / Write

Default value: 0


The “horz-grid-line-pattern” property

  “horz-grid-line-pattern”   GooCairoPattern *

The cairo pattern to paint the horizontal grid lines with.

Flags: Read / Write


The “horz-grid-line-pixbuf” property

  “horz-grid-line-pixbuf”    GdkPixbuf *

The pixbuf to use to draw the horizontal grid lines.

Flags: Write


The “horz-grid-line-width” property

  “horz-grid-line-width”     gdouble

The width of the horizontal grid lines.

Flags: Read / Write

Default value: -1


The “show-horz-grid-lines” property

  “show-horz-grid-lines”     gboolean

If the horizontal grid lines are shown.

Flags: Read / Write

Default value: TRUE


The “show-vert-grid-lines” property

  “show-vert-grid-lines”     gboolean

If the vertical grid lines are shown.

Flags: Read / Write

Default value: TRUE


The “vert-grid-line-color” property

  “vert-grid-line-color”     gchar *

The color to use for the vertical grid lines.

Flags: Write

Default value: NULL


The “vert-grid-line-color-gdk-rgba” property

  “vert-grid-line-color-gdk-rgba” GdkRGBA *

The color to use for the vertical grid lines, specified as a GdkRGBA.

Flags: Read / Write


The “vert-grid-line-color-rgba” property

  “vert-grid-line-color-rgba” guint

The color to use for the vertical grid lines, specified as a 32-bit integer value.

Flags: Read / Write

Default value: 0


The “vert-grid-line-pattern” property

  “vert-grid-line-pattern”   GooCairoPattern *

The cairo pattern to paint the vertical grid lines with.

Flags: Read / Write


The “vert-grid-line-pixbuf” property

  “vert-grid-line-pixbuf”    GdkPixbuf *

The pixbuf to use to draw the vertical grid lines.

Flags: Write


The “vert-grid-line-width” property

  “vert-grid-line-width”     gdouble

The width of the vertical grid lines.

Flags: Read / Write

Default value: -1


The “vert-grid-lines-on-top” property

  “vert-grid-lines-on-top”   gboolean

If the vertical grid lines are painted above the horizontal grid lines.

Flags: Read / Write

Default value: FALSE


The “width” property

  “width”                    gdouble

The width of the grid.

Flags: Read / Write

Allowed values: >= 0

Default value: 0


The “x” property

  “x”                        gdouble

The x coordinate of the grid.

Flags: Read / Write

Default value: 0


The “x-offset” property

  “x-offset”                 gdouble

The distance before the first vertical grid line.

Flags: Read / Write

Allowed values: >= 0

Default value: 0


The “x-step” property

  “x-step”                   gdouble

The distance between the vertical grid lines.

Flags: Read / Write

Allowed values: >= 0

Default value: 10


The “y” property

  “y”                        gdouble

The y coordinate of the grid.

Flags: Read / Write

Default value: 0


The “y-offset” property

  “y-offset”                 gdouble

The distance before the first horizontal grid line.

Flags: Read / Write

Allowed values: >= 0

Default value: 0


The “y-step” property

  “y-step”                   gdouble

The distance between the horizontal grid lines.

Flags: Read / Write

Allowed values: >= 0

Default value: 10