| Pango Reference Manual | |||
|---|---|---|---|
| <<< Previous Page | Home | Up | Next Page >>> | 
| struct PangoTabArray; #define PANGO_TYPE_TAB_ARRAY enum PangoTabAlign; #define PANGO_TYPE_TAB_ALIGN PangoTabArray* pango_tab_array_new (gint initial_size, gboolean positions_in_pixels); PangoTabArray* pango_tab_array_new_with_positions (gint size, gboolean positions_in_pixels, PangoTabAlign first_alignment, gint first_position, ...); PangoTabArray* pango_tab_array_copy (PangoTabArray *src); void pango_tab_array_free (PangoTabArray *tab_array); gint pango_tab_array_get_size (PangoTabArray *tab_array); void pango_tab_array_resize (PangoTabArray *tab_array, gint new_size); void pango_tab_array_set_tab (PangoTabArray *tab_array, gint tab_index, PangoTabAlign alignment, gint location); void pango_tab_array_get_tab (PangoTabArray *tab_array, gint tab_index, PangoTabAlign *alignment, gint *location); void pango_tab_array_get_tabs (PangoTabArray *tab_array, PangoTabAlign **alignments, gint **locations); gboolean pango_tab_array_get_positions_in_pixels (PangoTabArray *tab_array); | 
| struct PangoTabArray; | 
A PangoTabArray struct contains an array of tab stops. Each tab stop has an alignment and a position.
| #define PANGO_TYPE_TAB_ARRAY (pango_tab_array_get_type ()) | 
The GObject type for PangoTabArray.
| typedef enum
{
  PANGO_TAB_LEFT
  /* These are not supported now, but may be in the
   * future.
   *
   *  PANGO_TAB_RIGHT,
   *  PANGO_TAB_CENTER,
   *  PANGO_TAB_NUMERIC
   */
} PangoTabAlign; | 
A PangoTabAlign specifies where a tab stop appears relative to the text.
| #define PANGO_TYPE_TAB_ALIGN (pango_tab_align_get_type()) | 
The GObject type for PangoTabAlign.
| PangoTabArray* pango_tab_array_new (gint initial_size, gboolean positions_in_pixels); | 
Creates an array of initial_size tab stops. Tab stops are specified in pixel units if positions_in_pixels is TRUE, otherwise in Pango units. All stops are initially at position 0.
| initial_size : | Initial number of tab stops to allocate, can be 0 | 
| positions_in_pixels : | whether positions are in pixel units | 
| Returns : | a PangoTabArray | 
| PangoTabArray* pango_tab_array_new_with_positions (gint size, gboolean positions_in_pixels, PangoTabAlign first_alignment, gint first_position, ...); | 
This is a convenience function that creates a PangoTabArray and allows you to specify the alignment and position of each tab stop. You must provide an alignment and position for size tab stops.
| size : | number of tab stops in the array | 
| positions_in_pixels : | whether positions are in pixel units | 
| first_alignment : | alignment of first tab stop | 
| first_position : | position of first tab stop | 
| ... : | additional alignment/position pairs | 
| Returns : | a new PangoTabArray | 
| PangoTabArray* pango_tab_array_copy (PangoTabArray *src); | 
Copy a PangoTabArray
| src : | PangoTabArray to copy | 
| Returns : | Newly-allocated PangoTabArray | 
| void pango_tab_array_free (PangoTabArray *tab_array); | 
Free a tab array and associated resources.
| tab_array : | a PangoTabArray | 
| gint pango_tab_array_get_size (PangoTabArray *tab_array); | 
Get the number of tab stops in tab_array.
| tab_array : | a PangoTabArray | 
| Returns : | the number of tab stops in the array. | 
| void pango_tab_array_resize (PangoTabArray *tab_array, gint new_size); | 
Resizes a tab array. You must subsequently initialize any tabs that were added as a result of growing the array.
| tab_array : | a PangoTabArray | 
| new_size : | new size of the array | 
| void pango_tab_array_set_tab (PangoTabArray *tab_array, gint tab_index, PangoTabAlign alignment, gint location); | 
Sets the alignment and location of a tab stop. alignment must always be PANGO_TAB_LEFT in the current implementation.
| tab_array : | a PangoTabArray | 
| tab_index : | the index of a tab stop | 
| alignment : | tab alignment | 
| location : | tab location in pango units | 
| void pango_tab_array_get_tab (PangoTabArray *tab_array, gint tab_index, PangoTabAlign *alignment, gint *location); | 
Gets the alignment and position of a tab stop. alignment or location may be NULL if you aren't interested in their value.
| tab_array : | a PangoTabArray | 
| tab_index : | tab stop index | 
| alignment : | location to store alignment | 
| location : | location to store tab position | 
| void pango_tab_array_get_tabs (PangoTabArray *tab_array, PangoTabAlign **alignments, gint **locations); | 
If non-NULL, alignments and locations are filled with allocated arrays of length pango_tab_array_get_size(). You must free the returned array.
| tab_array : | a PangoTabArray | 
| alignments : | location to store an array of tab stop alignments | 
| locations : | location to store an array of tab positions | 
| gboolean pango_tab_array_get_positions_in_pixels (PangoTabArray *tab_array); | 
Returns TRUE if the tab positions are in pixels, FALSE if they are in Pango units.
| tab_array : | a PangoTabArray | 
| Returns : | whether positions are in pixels |