GTK+ Reference Manual
<<< Previous Page | Home | Up | Next Page >>>

# GtkAlignment

## Name

GtkAlignment -- a widget which controls the alignment and size of its child.

## Synopsis

    #include <gtk/gtk.h>

    struct      GtkAlignment;
    GtkWidget*  gtk_alignment_new               (gfloat xalign,
                                                 gfloat yalign,
                                                 gfloat xscale,
                                                 gfloat yscale);
    void        gtk_alignment_set               (GtkAlignment *alignment,
                                                 gfloat xalign,
                                                 gfloat yalign,
                                                 gfloat xscale,
                                                 gfloat yscale);

## Object Hierarchy

      GObject
       +----GtkObject
             +----GtkWidget
                   +----GtkContainer
                         +----GtkBin
                               +----GtkAlignment

## Properties

      "xalign"               gfloat               : Read / Write
      "yalign"               gfloat               : Read / Write
      "xscale"               gfloat               : Read / Write
      "yscale"               gfloat               : Read / Write

## Description

The GtkAlignment widget controls the alignment and size of its child widget. It has four settings: xscale, yscale, xalign, and yalign.

The scale settings are used to specify how much the child widget should expand to fill the space allocated to the GtkAlignment. The values can range from 0 (meaning the child doesn't expand at all) to 1 (meaning the child expands to fill all of the available space).

The align settings are used to place the child widget within the available area. The values range from 0 (top or left) to 1 (bottom or right). Of course, if the scale settings are both set to 1, the alignment settings have no effect.

## Details

### struct GtkAlignment

    struct GtkAlignment;

The GtkAlignment struct contains private data only, and should be accessed using the functions below.

### gtk_alignment_new ()

    GtkWidget*  gtk_alignment_new               (gfloat xalign,
                                                 gfloat yalign,
                                                 gfloat xscale,
                                                 gfloat yscale);

Creates a new GtkAlignment.

`xalign` : | the horizontal alignment of the child widget, from 0 (left) to 1 (right).
`yalign` : | the vertical alignment of the child widget, from 0 (top) to 1 (bottom).
`xscale` : | the amount that the child widget expands horizontally to fill up unused space, from 0 to 1. A value of 0 indicates that the child widget should never expand. A value of 1 indicates that the child widget will expand to fill all of the space allocated for the GtkAlignment.
`yscale` : | the amount that the child widget expands vertically to fill up unused space, from 0 to 1. The values are similar to `xscale`.
Returns : | the new GtkAlignment.

### gtk_alignment_set ()

    void        gtk_alignment_set               (GtkAlignment *alignment,
                                                 gfloat xalign,
                                                 gfloat yalign,
                                                 gfloat xscale,
                                                 gfloat yscale);

Sets the GtkAlignment values.

`alignment` : | a GtkAlignment.
`xalign` : | the horizontal alignment of the child widget, from 0 (left) to 1 (right).
`yalign` : | the vertical alignment of the child widget, from 0 (top) to 1 (bottom).
`xscale` : | the amount that the child widget expands horizontally to fill up unused space, from 0 to 1. A value of 0 indicates that the child widget should never expand. A value of 1 indicates that the child widget will expand to fill all of the space allocated for the GtkAlignment.
`yscale` : | the amount that the child widget expands vertically to fill up unused space, from 0 to 1. The values are similar to `xscale`.

## Properties

"`xalign`" (gfloat : Read / Write)

  Horizontal position of child in available space. 0.0 is left aligned, 1.0 is right aligned

"`yalign`" (gfloat : Read / Write)

  Vertical position of child in available space. 0.0 is top aligned, 1.0 is bottom aligned

"`xscale`" (gfloat : Read / Write)

  If available horizontal space is bigger than needed for the child, how much of it to use for the child. 0.0 means none, 1.0 means all

"`yscale`" (gfloat : Read / Write)

  If available vertical space is bigger than needed for the child, how much of it to use for the child. 0.0 means none, 1.0 means all

<<< Previous Page | Home | Up | Next Page >>>
Layout Containers | GtkAspectFrame