## GailTextUtil GailTextUtil — GailTextUtil is a utility class which can be used to implement some of the AtkText functions for accessible objects which implement AtkText. |

## Functions

GailTextUtil * | gail_text_util_new ()
void | gail_text_util_text_setup ()
void | gail_text_util_buffer_setup ()
gchar * | gail_text_util_get_text ()
gchar * | gail_text_util_get_substring ()

## Types and Values

struct | GailTextUtil
enum | GailOffsetType

## Description

GailTextUtil is a utility class which can be used to implement the AtkText functions which get text for accessible objects which implement AtkText.

In GAIL it is used by the accsesible objects for GnomeCanvasText, GtkEntry, GtkLabel, GtkCellRendererText and GtkTextView.

## Functions

### gail_text_util_new ()

    GailTextUtil *
    gail_text_util_new (void);

This function creates a new GailTextUtil object.

#### Returns

the GailTextUtil object

### gail_text_util_text_setup ()

    void
    gail_text_util_text_setup (GailTextUtil *textutil,
                               const gchar *text);

This function initializes the GailTextUtil with the specified character string,

#### Parameters

textutil | The GailTextUtil to be initialized. |
text | A gchar* which points to the text to be stored in the GailTextUtil |

### gail_text_util_buffer_setup ()

    void
    gail_text_util_buffer_setup (GailTextUtil *textutil,
                                 GtkTextBuffer *buffer);

This function initializes the GailTextUtil with the specified GtkTextBuffer

#### Parameters

textutil | A GailTextUtil to be initialized |
buffer | The GtkTextBuffer which identifies the text to be stored in the GailUtil. |

### gail_text_util_get_text ()

    gchar *
    gail_text_util_get_text (GailTextUtil *textutil,
                             gpointer layout,
                             GailOffsetType function,
                             AtkTextBoundary boundary_type,
                             gint offset,
                             gint *start_offset,
                             gint *end_offset);

This function gets the requested substring from the text in the GtkTextUtil. The layout is used only for getting the text on a line. The value is NULL for a GtkTextView which is not wrapped, is a GtkTextView for a GtkTextView which is wrapped and is a PangoLayout otherwise.

#### Parameters

textutil | A GailTextUtil |
layout | A gpointer which is a PangoLayout, a GtkTreeView of NULL |
function | An enumeration specifying whether to return the text before, at, or after the offset. |
boundary_type | The boundary type. |
offset | The offset of the text in the GailTextUtil |
start_offset | Address of location in which the start offset is returned |
end_offset | Address of location in which the end offset is returned |

#### Returns

the substring requested

### gail_text_util_get_substring ()

    gchar *
    gail_text_util_get_substring (GailTextUtil *textutil,
                                  gint start_pos,
                                  gint end_pos);

Gets the substring indicated by `start_pos` and `end_pos`

#### Parameters

textutil | A GailTextUtil |
start_pos | The start position of the substring |
end_pos | The end position of the substring. |

#### Returns

the substring indicated by `start_pos` and `end_pos`

## Types and Values

### struct GailTextUtil

    struct GailTextUtil {
      GObject parent;

      GtkTextBuffer *buffer;
    };

### enum GailOffsetType

Specifies which of the functions `atk_text_get_text_before_offset()`, `atk_text_get_text_at_offset()`, `atk_text_get_text_after_offset()` the function `gail_text_util_get_text()` is being called for.

#### Members

GAIL_BEFORE_OFFSET | Text before offset is required. |
GAIL_AT_OFFSET | Text at offset is required, |
GAIL_AFTER_OFFSET | Text after offset is required. |