## AtkHyperlink

AtkHyperlink — An ATK object which encapsulates a link or set of links in a hypertext document.

## Synopsis

    struct      AtkHyperlink;
    enum        AtkHyperlinkStateFlags;
    gchar*      atk_hyperlink_get_uri           (AtkHyperlink *link_,
                                                 gint i);
    AtkObject*  atk_hyperlink_get_object        (AtkHyperlink *link_,
                                                 gint i);
    gint        atk_hyperlink_get_end_index     (AtkHyperlink *link_);
    gint        atk_hyperlink_get_start_index   (AtkHyperlink *link_);
    gboolean    atk_hyperlink_is_valid          (AtkHyperlink *link_);
    gboolean    atk_hyperlink_is_inline         (AtkHyperlink *link_);
    gint        atk_hyperlink_get_n_anchors     (AtkHyperlink *link_);
    gboolean    atk_hyperlink_is_selected_link  (AtkHyperlink *link_);

## Object Hierarchy

      GObject
       +----AtkHyperlink

## Implemented Interfaces

AtkHyperlink implements AtkAction.

## Properties

      "end-index"            gint                 : Read
      "number-of-anchors"    gint                 : Read
      "selected-link"        gboolean             : Read
      "start-index"          gint                 : Read

## Signal Prototypes

    "link-activated"
                void        user_function      (AtkHyperlink *atkhyperlink,
                                                gpointer user_data);

## Description

An ATK object which encapsulates a link or set of links in a hypertext document. It implements the AtkAction interface.

## Details

### struct AtkHyperlink

    struct AtkHyperlink;

The AtkHyperlink structure should not be accessed directly.

### enum AtkHyperlinkStateFlags

    typedef enum
    {
      ATK_HYPERLINK_IS_INLINE = 1 << 0
    } AtkHyperlinkStateFlags;

Describes the type of link

`ATK_HYPERLINK_IS_INLINE` | Link is inline

### atk_hyperlink_get_uri ()

    gchar*      atk_hyperlink_get_uri           (AtkHyperlink *link_,
                                                 gint i);

Get a the URI associated with the anchor specified by `i` of `link_`.

Multiple anchors are primarily used by client-side image maps.

`link_` : | an AtkHyperlink
`i` : | a (zero-index) integer specifying the desired anchor
Returns : | a string specifying the URI

### atk_hyperlink_get_object ()

    AtkObject*  atk_hyperlink_get_object        (AtkHyperlink *link_,
                                                 gint i);

Returns the item associated with this hyperlinks nth anchor. For instance, the returned AtkObject will implement AtkText if `link_` is a text hyperlink, AtkImage if `link_` is an image hyperlink etc.

Multiple anchors are primarily used by client-side image maps.

`link_` : | an AtkHyperlink
`i` : | a (zero-index) integer specifying the desired anchor
Returns : | an AtkObject associated with this hyperlinks i-th anchor

### atk_hyperlink_get_end_index ()

    gint        atk_hyperlink_get_end_index     (AtkHyperlink *link_);

Gets the index with the hypertext document at which this link ends.

`link_` : | an AtkHyperlink
Returns : | the index with the hypertext document at which this link ends

### atk_hyperlink_get_start_index ()

    gint        atk_hyperlink_get_start_index   (AtkHyperlink *link_);

Gets the index with the hypertext document at which this link begins.

`link_` : | an AtkHyperlink
Returns : | the index with the hypertext document at which this link begins

### atk_hyperlink_is_valid ()

    gboolean    atk_hyperlink_is_valid          (AtkHyperlink *link_);

Since the document that a link is associated with may have changed this method returns `TRUE` if the link is still valid (with respect to the document it references) and `FALSE` otherwise.

`link_` : | an AtkHyperlink
Returns : | whether or not this link is still valid

### atk_hyperlink_is_inline ()

    gboolean    atk_hyperlink_is_inline         (AtkHyperlink *link_);

Indicates whether the link currently displays some or all of its content inline. Ordinary HTML links will usually return `FALSE`, but an inline &lt;src&gt; HTML element will return `TRUE`. a *

`link_` : | an AtkHyperlink
Returns : | whether or not this link displays its content inline.

### atk_hyperlink_get_n_anchors ()

    gint        atk_hyperlink_get_n_anchors     (AtkHyperlink *link_);

Gets the number of anchors associated with this hyperlink.

`link_` : | an AtkHyperlink
Returns : | the number of anchors associated with this hyperlink

### atk_hyperlink_is_selected_link ()

    gboolean    atk_hyperlink_is_selected_link  (AtkHyperlink *link_);

Determines whether this AtkHyperlink is selected

`link_` : | an AtkHyperlink
Returns : | True is the AtkHyperlink is selected, False otherwise

## Properties

"`end-index`" (gint : Read) | The end index of the AtkHyperlink object.
"`number-of-anchors`" (gint : Read) | The number of anchors associated with the AtkHyperlink object.
"`selected-link`" (gboolean : Read) | Specifies whether the AtkHyperlink object is selected.
"`start-index`" (gint : Read) | The start index of the AtkHyperlink object.

## Signals

### The "link-activated" signal

    void        user_function                  (AtkHyperlink *atkhyperlink,
                                                gpointer user_data);

The signal link-activated is emitted when a link is activated.

`atkhyperlink` : | the object which received the signal.
`user_data` : | user data set when the signal handler was connected.