GooCanvasText

GooCanvasText — a text item.

Synopsis

                    GooCanvasText;
GooCanvasItem*      goo_canvas_text_new                 (GooCanvasItem *parent,
                                                         const char *string,
                                                         gdouble x,
                                                         gdouble y,
                                                         gdouble width,
                                                         GtkAnchorType anchor,
                                                         ...);
void                goo_canvas_text_get_natural_extents (GooCanvasText *text,
                                                         PangoRectangle *ink_rect,
                                                         PangoRectangle *logical_rect);

Object Hierarchy

  GObject
   +----GooCanvasItemSimple
         +----GooCanvasText

Implemented Interfaces

GooCanvasText implements GooCanvasItem.

Properties

  "alignment"                PangoAlignment        : Read / Write
  "anchor"                   GtkAnchorType         : Read / Write
  "ellipsize"                PangoEllipsizeMode    : Read / Write
  "height"                   gdouble               : Read / Write
  "text"                     gchar*                : Read / Write
  "use-markup"               gboolean              : Read / Write
  "width"                    gdouble               : Read / Write
  "wrap"                     PangoWrapMode         : Read / Write
  "x"                        gdouble               : Read / Write
  "y"                        gdouble               : Read / Write

Description

GooCanvasText represents a text item.

It is a subclass of GooCanvasItemSimple and so inherits all of the style properties such as "fill-color".

It also implements the GooCanvasItem interface, so you can use the GooCanvasItem functions such as goo_canvas_item_raise() and goo_canvas_item_rotate().

The "width" and "height" properties specify the area of the item. If it exceeds that area because there is too much text, it is clipped. The properties can be set to -1 to disable clipping.

To create a GooCanvasText use goo_canvas_text_new().

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

Details

GooCanvasText

typedef struct _GooCanvasText GooCanvasText;

The GooCanvasText struct contains private data only.


goo_canvas_text_new ()

GooCanvasItem*      goo_canvas_text_new                 (GooCanvasItem *parent,
                                                         const char *string,
                                                         gdouble x,
                                                         gdouble y,
                                                         gdouble width,
                                                         GtkAnchorType anchor,
                                                         ...);

Creates a new text item.

parent :

the parent item, 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.

string :

the text to display.

x :

the x coordinate of the text.

y :

the y coordinate of the text.

width :

the width of the text item, or -1 for unlimited width.

anchor :

the position of the text relative to the given x and y coordinates. For example an anchor of GDK_ANCHOR_NW will result in the top-left of the text being placed at the given x and y coordinates. An anchor of GDK_ANCHOR_CENTER will result in the center of the text being placed at the x and y coordinates.

... :

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

Returns :

a new text item.

Here's an example showing how to create a text item with the bottom right of the text box placed at (500,500):

1
2
3
GooCanvasItem *text = goo_canvas_text_new (mygroup, "Hello World", 500.0, 500.0, 200.0, GTK_ANCHOR_SE,
                                           "fill-color", "blue",
                                           NULL);


goo_canvas_text_get_natural_extents ()

void                goo_canvas_text_get_natural_extents (GooCanvasText *text,
                                                         PangoRectangle *ink_rect,
                                                         PangoRectangle *logical_rect);

Gets the natural extents of the text, in the text item's coordinate space.

The final extents of the text may be different, if the text item is placed in a layout container such as GooCanvasTable.

text :

a GooCanvasText.

ink_rect :

the location to return the ink rect, or NULL.

logical_rect :

the location to return the logical rect, or NULL.

Property Details

The "alignment" property

  "alignment"                PangoAlignment        : Read / Write

How to align the text.

Default value: PANGO_ALIGN_LEFT


The "anchor" property

  "anchor"                   GtkAnchorType         : Read / Write

How to position the text relative to the given x and y coordinates.

Default value: GTK_ANCHOR_NORTH_WEST


The "ellipsize" property

  "ellipsize"                PangoEllipsizeMode    : Read / Write

The preferred place to ellipsize the string, if the label does not have enough room to display the entire string.

Default value: PANGO_ELLIPSIZE_NONE


The "height" property

  "height"                   gdouble               : Read / Write

The height to use to layout the text, or -1 to let the text use as much vertical space as needed.

Default value: -1


The "text" property

  "text"                     gchar*                : Read / Write

The text to display.

Default value: NULL


The "use-markup" property

  "use-markup"               gboolean              : Read / Write

Whether to parse PangoMarkup in the text, to support different styles.

Default value: FALSE


The "width" property

  "width"                    gdouble               : Read / Write

The width to use to layout the text, or -1 to let the text use as much horizontal space as needed.

Default value: -1


The "wrap" property

  "wrap"                     PangoWrapMode         : Read / Write

The preferred method of wrapping the string if a width has been set.

Default value: PANGO_WRAP_WORD


The "x" property

  "x"                        gdouble               : Read / Write

The x coordinate of the text.

Default value: 0


The "y" property

  "y"                        gdouble               : Read / Write

The y coordinate of the text.

Default value: 0