Interface

AtkText

Description [src]

interface Atk.Text : GObject.Object

AtkText should be implemented by AtkObjects on behalf of widgets that have text content which is either attributed or otherwise non-trivial. AtkObjects whose text content is simple, unattributed, and very brief may expose that content via

atk_object_get_name instead; however if the text is editable,

multi-line, typically longer than three or four words, attributed, selectable, or if the object already uses the ‘name’ ATK property for other information, the AtkText interface should be used to expose the text content. In the case of editable text content, AtkEditableText (a subtype of the AtkText interface) should be implemented instead.

AtkText provides not only traversal facilities and change notification for text content, but also caret tracking and glyph bounding box calculations. Note that the text strings are exposed as UTF-8, and are therefore potentially multi-byte, and caret-to-byte offset mapping makes no assumptions about the character length; also bounding box glyph-to-offset mapping may be complex for languages which use ligatures.

Prerequisite

In order to implement Text, your type must inherit from GObject.

Functions

atk_text_free_ranges

Frees the memory associated with an array of AtkTextRange. It is assumed that the array was returned by the function atk_text_get_bounded_ranges and is NULL terminated.

Instance methods

atk_text_add_selection

Adds a selection bounded by the specified offsets.

atk_text_get_bounded_ranges

Get the ranges of text in the specified bounding box.

Available since: 1.3

atk_text_get_caret_offset

Gets the offset of the position of the caret (cursor).

atk_text_get_character_at_offset

Gets the specified text.

atk_text_get_character_count

Gets the character count.

atk_text_get_character_extents

If the extent can not be obtained (e.g. missing support), all of x, y, width, height are set to -1.

atk_text_get_default_attributes

Creates an AtkAttributeSet which consists of the default values of attributes for the text. See the enum AtkTextAttribute for types of text attributes that can be returned. Note that other attributes may also be returned.

atk_text_get_n_selections

Gets the number of selected regions.

atk_text_get_offset_at_point

Gets the offset of the character located at coordinates x and y. x and y are interpreted as being relative to the screen or this widget’s window depending on coords.

atk_text_get_range_extents

Get the bounding box for text within the specified range.

Available since: 1.3

atk_text_get_run_attributes

Creates an AtkAttributeSet which consists of the attributes explicitly set at the position offset in the text. start_offset and end_offset are set to the start and end of the range around offset where the attributes are invariant. Note that end_offset is the offset of the first character after the range. See the enum AtkTextAttribute for types of text attributes that can be returned. Note that other attributes may also be returned.

atk_text_get_selection

Gets the text from the specified selection.

atk_text_get_string_at_offset

Gets a portion of the text exposed through an AtkText according to a given offset and a specific granularity, along with the start and end offsets defining the boundaries of such a portion of text.

Available since: 2.10

atk_text_get_text

Gets the specified text.

atk_text_get_text_after_offset

Gets the specified text.

Deprecated since: 2.9.3

atk_text_get_text_at_offset

Gets the specified text.

atk_text_get_text_before_offset

Gets the specified text.

Deprecated since: 2.9.3

atk_text_remove_selection

Removes the specified selection.

atk_text_scroll_substring_to

Makes a substring of text visible on the screen by scrolling all necessary parents.

Available since: 2.32

atk_text_scroll_substring_to_point

Move the top-left of a substring of text to a given position of the screen by scrolling all necessary parents.

Available since: 2.32

atk_text_set_caret_offset

Sets the caret (cursor) position to the specified offset.

atk_text_set_selection

Changes the start and end offset of the specified selection.

Signals

Atk.Text::text-attributes-changed

The “text-attributes-changed” signal is emitted when the text attributes of the text of an object which implements AtkText changes.

Atk.Text::text-caret-moved

The “text-caret-moved” signal is emitted when the caret position of the text of an object which implements AtkText changes.

Atk.Text::text-changed

The “text-changed” signal is emitted when the text of the object which implements the AtkText interface changes, This signal will have a detail which is either “insert” or “delete” which identifies whether the text change was an insertion or a deletion.

Deprecated since: 2.9.4

Atk.Text::text-insert

The “text-insert” signal is emitted when a new text is inserted. If the signal was not triggered by the user (e.g. typing or pasting text), the “system” detail should be included.

Atk.Text::text-remove

The “text-remove” signal is emitted when a new text is removed. If the signal was not triggered by the user (e.g. typing or pasting text), the “system” detail should be included.

Atk.Text::text-selection-changed

The “text-selection-changed” signal is emitted when the selected text of an object which implements AtkText changes.

Interface structure

struct AtkTextIface {
  GTypeInterface parent;
  gchar* (* get_text) (
    AtkText* text,
    gint start_offset,
    gint end_offset
  );
  gchar* (* get_text_after_offset) (
    AtkText* text,
    gint offset,
    AtkTextBoundary boundary_type,
    gint* start_offset,
    gint* end_offset
  );
  gchar* (* get_text_at_offset) (
    AtkText* text,
    gint offset,
    AtkTextBoundary boundary_type,
    gint* start_offset,
    gint* end_offset
  );
  gunichar (* get_character_at_offset) (
    AtkText* text,
    gint offset
  );
  gchar* (* get_text_before_offset) (
    AtkText* text,
    gint offset,
    AtkTextBoundary boundary_type,
    gint* start_offset,
    gint* end_offset
  );
  gint (* get_caret_offset) (
    AtkText* text
  );
  AtkAttributeSet* (* get_run_attributes) (
    AtkText* text,
    gint offset,
    gint* start_offset,
    gint* end_offset
  );
  AtkAttributeSet* (* get_default_attributes) (
    AtkText* text
  );
  void (* get_character_extents) (
    AtkText* text,
    gint offset,
    gint* x,
    gint* y,
    gint* width,
    gint* height,
    AtkCoordType coords
  );
  gint (* get_character_count) (
    AtkText* text
  );
  gint (* get_offset_at_point) (
    AtkText* text,
    gint x,
    gint y,
    AtkCoordType coords
  );
  gint (* get_n_selections) (
    AtkText* text
  );
  gchar* (* get_selection) (
    AtkText* text,
    gint selection_num,
    gint* start_offset,
    gint* end_offset
  );
  gboolean (* add_selection) (
    AtkText* text,
    gint start_offset,
    gint end_offset
  );
  gboolean (* remove_selection) (
    AtkText* text,
    gint selection_num
  );
  gboolean (* set_selection) (
    AtkText* text,
    gint selection_num,
    gint start_offset,
    gint end_offset
  );
  gboolean (* set_caret_offset) (
    AtkText* text,
    gint offset
  );
  void (* text_changed) (
    AtkText* text,
    gint position,
    gint length
  );
  void (* text_caret_moved) (
    AtkText* text,
    gint location
  );
  void (* text_selection_changed) (
    AtkText* text
  );
  void (* text_attributes_changed) (
    AtkText* text
  );
  void (* get_range_extents) (
    AtkText* text,
    gint start_offset,
    gint end_offset,
    AtkCoordType coord_type,
    AtkTextRectangle* rect
  );
  AtkTextRange** (* get_bounded_ranges) (
    AtkText* text,
    AtkTextRectangle* rect,
    AtkCoordType coord_type,
    AtkTextClipType x_clip_type,
    AtkTextClipType y_clip_type
  );
  gchar* (* get_string_at_offset) (
    AtkText* text,
    gint offset,
    AtkTextGranularity granularity,
    gint* start_offset,
    gint* end_offset
  );
  gboolean (* scroll_substring_to) (
    AtkText* text,
    gint start_offset,
    gint end_offset,
    AtkScrollType type
  );
  gboolean (* scroll_substring_to_point) (
    AtkText* text,
    gint start_offset,
    gint end_offset,
    AtkCoordType coords,
    gint x,
    gint y
  );
  
}
Interface members
parent
GTypeInterface
 No description available.
get_text
gchar* (* get_text) (
    AtkText* text,
    gint start_offset,
    gint end_offset
  )
 No description available.
get_text_after_offset
gchar* (* get_text_after_offset) (
    AtkText* text,
    gint offset,
    AtkTextBoundary boundary_type,
    gint* start_offset,
    gint* end_offset
  )
 No description available.
get_text_at_offset
gchar* (* get_text_at_offset) (
    AtkText* text,
    gint offset,
    AtkTextBoundary boundary_type,
    gint* start_offset,
    gint* end_offset
  )
 No description available.
get_character_at_offset
gunichar (* get_character_at_offset) (
    AtkText* text,
    gint offset
  )
 No description available.
get_text_before_offset
gchar* (* get_text_before_offset) (
    AtkText* text,
    gint offset,
    AtkTextBoundary boundary_type,
    gint* start_offset,
    gint* end_offset
  )
 No description available.
get_caret_offset
gint (* get_caret_offset) (
    AtkText* text
  )
 No description available.
get_run_attributes
AtkAttributeSet* (* get_run_attributes) (
    AtkText* text,
    gint offset,
    gint* start_offset,
    gint* end_offset
  )
 No description available.
get_default_attributes
AtkAttributeSet* (* get_default_attributes) (
    AtkText* text
  )
 No description available.
get_character_extents
void (* get_character_extents) (
    AtkText* text,
    gint offset,
    gint* x,
    gint* y,
    gint* width,
    gint* height,
    AtkCoordType coords
  )
 No description available.
get_character_count
gint (* get_character_count) (
    AtkText* text
  )
 No description available.
get_offset_at_point
gint (* get_offset_at_point) (
    AtkText* text,
    gint x,
    gint y,
    AtkCoordType coords
  )
 No description available.
get_n_selections
gint (* get_n_selections) (
    AtkText* text
  )
 No description available.
get_selection
gchar* (* get_selection) (
    AtkText* text,
    gint selection_num,
    gint* start_offset,
    gint* end_offset
  )
 No description available.
add_selection
gboolean (* add_selection) (
    AtkText* text,
    gint start_offset,
    gint end_offset
  )
 No description available.
remove_selection
gboolean (* remove_selection) (
    AtkText* text,
    gint selection_num
  )
 No description available.
set_selection
gboolean (* set_selection) (
    AtkText* text,
    gint selection_num,
    gint start_offset,
    gint end_offset
  )
 No description available.
set_caret_offset
gboolean (* set_caret_offset) (
    AtkText* text,
    gint offset
  )
 No description available.
text_changed
void (* text_changed) (
    AtkText* text,
    gint position,
    gint length
  )
 No description available.
text_caret_moved
void (* text_caret_moved) (
    AtkText* text,
    gint location
  )
 No description available.
text_selection_changed
void (* text_selection_changed) (
    AtkText* text
  )
 No description available.
text_attributes_changed
void (* text_attributes_changed) (
    AtkText* text
  )
 No description available.
get_range_extents
void (* get_range_extents) (
    AtkText* text,
    gint start_offset,
    gint end_offset,
    AtkCoordType coord_type,
    AtkTextRectangle* rect
  )
 No description available.
get_bounded_ranges
AtkTextRange** (* get_bounded_ranges) (
    AtkText* text,
    AtkTextRectangle* rect,
    AtkCoordType coord_type,
    AtkTextClipType x_clip_type,
    AtkTextClipType y_clip_type
  )
 No description available.
get_string_at_offset
gchar* (* get_string_at_offset) (
    AtkText* text,
    gint offset,
    AtkTextGranularity granularity,
    gint* start_offset,
    gint* end_offset
  )
 No description available.
scroll_substring_to
gboolean (* scroll_substring_to) (
    AtkText* text,
    gint start_offset,
    gint end_offset,
    AtkScrollType type
  )
 No description available.
scroll_substring_to_point
gboolean (* scroll_substring_to_point) (
    AtkText* text,
    gint start_offset,
    gint end_offset,
    AtkCoordType coords,
    gint x,
    gint y
  )
 No description available.

Virtual methods

Atk.Text.add_selection

Adds a selection bounded by the specified offsets.

Atk.Text.get_bounded_ranges

Get the ranges of text in the specified bounding box.

Atk.Text.get_caret_offset

Gets the offset of the position of the caret (cursor).

Atk.Text.get_character_at_offset

Gets the specified text.

Atk.Text.get_character_count

Gets the character count.

Atk.Text.get_character_extents

If the extent can not be obtained (e.g. missing support), all of x, y, width, height are set to -1.

Atk.Text.get_default_attributes

Creates an AtkAttributeSet which consists of the default values of attributes for the text. See the enum AtkTextAttribute for types of text attributes that can be returned. Note that other attributes may also be returned.

Atk.Text.get_n_selections

Gets the number of selected regions.

Atk.Text.get_offset_at_point

Gets the offset of the character located at coordinates x and y. x and y are interpreted as being relative to the screen or this widget’s window depending on coords.

Atk.Text.get_range_extents

Get the bounding box for text within the specified range.

Atk.Text.get_run_attributes

Creates an AtkAttributeSet which consists of the attributes explicitly set at the position offset in the text. start_offset and end_offset are set to the start and end of the range around offset where the attributes are invariant. Note that end_offset is the offset of the first character after the range. See the enum AtkTextAttribute for types of text attributes that can be returned. Note that other attributes may also be returned.

Atk.Text.get_selection

Gets the text from the specified selection.

Atk.Text.get_string_at_offset

Gets a portion of the text exposed through an AtkText according to a given offset and a specific granularity, along with the start and end offsets defining the boundaries of such a portion of text.

Atk.Text.get_text

Gets the specified text.

Atk.Text.get_text_after_offset

Gets the specified text.

Deprecated since:

Atk.Text.get_text_at_offset

Gets the specified text.

Atk.Text.get_text_before_offset

Gets the specified text.

Deprecated since:

Atk.Text.remove_selection

Removes the specified selection.

Atk.Text.scroll_substring_to

Makes a substring of text visible on the screen by scrolling all necessary parents.

Atk.Text.scroll_substring_to_point

Move the top-left of a substring of text to a given position of the screen by scrolling all necessary parents.

Atk.Text.set_caret_offset

Sets the caret (cursor) position to the specified offset.

Atk.Text.set_selection

Changes the start and end offset of the specified selection.

Atk.Text.text_attributes_changed
No description available.
Atk.Text.text_caret_moved
No description available.
Atk.Text.text_changed
No description available.
Atk.Text.text_selection_changed
No description available.