<refentry id="at-spi-cspi-AccessibleRelations-and-RelationSets">
<refmeta>
<refentrytitle role="top_of_page" id="at-spi-cspi-AccessibleRelations-and-RelationSets.top_of_page">AccessibleRelations and RelationSets</refentrytitle>
<manvolnum>3</manvolnum>
<refmiscinfo>AT-SPI-CSPI Library</refmiscinfo>
</refmeta>

<refnamediv>
<refname>AccessibleRelations and RelationSets</refname>
<refpurpose></refpurpose>
<!--[<xref linkend="desc" endterm="desc.title"/>]-->
</refnamediv>

<refsynopsisdiv id="at-spi-cspi-AccessibleRelations-and-RelationSets.synopsis" role="synopsis">
<title role="synopsis.title">Synopsis</title>

<synopsis>
enum                <link linkend="AccessibleRelationType">AccessibleRelationType</link>;
<link linkend="void">void</link>                <link linkend="AccessibleRelation-ref">AccessibleRelation_ref</link>              (<link linkend="AccessibleRelation">AccessibleRelation</link> *obj);
<link linkend="void">void</link>                <link linkend="AccessibleRelation-unref">AccessibleRelation_unref</link>            (<link linkend="AccessibleRelation">AccessibleRelation</link> *obj);
<link linkend="int">int</link>                 <link linkend="AccessibleRelation-getNTargets">AccessibleRelation_getNTargets</link>      (<link linkend="AccessibleRelation">AccessibleRelation</link> *obj);
<link linkend="Accessible">Accessible</link>*         <link linkend="AccessibleRelation-getTarget">AccessibleRelation_getTarget</link>        (<link linkend="AccessibleRelation">AccessibleRelation</link> *obj,
                                                         <link linkend="int">int</link> i);
<link linkend="AccessibleRelationType">AccessibleRelationType</link> <link linkend="AccessibleRelation-getRelationType">AccessibleRelation_getRelationType</link>
                                                        (<link linkend="AccessibleRelation">AccessibleRelation</link> *obj);
</synopsis>
</refsynopsisdiv>









<refsect1 id="at-spi-cspi-AccessibleRelations-and-RelationSets.description" role="desc">
<title role="desc.title">Description</title>
<para>

</para>
</refsect1>

<refsect1 id="at-spi-cspi-AccessibleRelations-and-RelationSets.details" role="details">
<title role="details.title">Details</title>
<refsect2 id="AccessibleRelationType" role="enum">
<title>enum AccessibleRelationType</title>
<indexterm zone="AccessibleRelationType"><primary>AccessibleRelationType</primary></indexterm><programlisting>typedef enum
{
  SPI_RELATION_NULL,
  SPI_RELATION_LABEL_FOR,
  SPI_RELATION_LABELED_BY,
  SPI_RELATION_CONTROLLER_FOR,
  SPI_RELATION_CONTROLLED_BY,
  SPI_RELATION_MEMBER_OF,
  SPI_RELATION_NODE_CHILD_OF,
  SPI_RELATION_EXTENDED,
  SPI_RELATION_FLOWS_TO,
  SPI_RELATION_FLOWS_FROM,
  SPI_RELATION_SUBWINDOW_OF,
  SPI_RELATION_EMBEDS,
  SPI_RELATION_EMBEDDED_BY,
  SPI_RELATION_POPUP_FOR,
  SPI_RELATION_PARENT_WINDOW_OF,
  SPI_RELATION_DESCRIPTION_FOR,
  SPI_RELATION_DESCRIBED_BY,
  SPI_RELATION_LAST_DEFINED
} AccessibleRelationType;
</programlisting>
<para>
Describes the type of the relation</para>
<para>

</para><variablelist role="enum">
<varlistentry id="SPI-RELATION-NULL:CAPS" role="constant">
<term><literal>SPI_RELATION_NULL</literal></term>
<listitem><simpara> Not used, this is an invalid value for this enumeration.
</simpara></listitem>
</varlistentry>
<varlistentry id="SPI-RELATION-LABEL-FOR:CAPS" role="constant">
<term><literal>SPI_RELATION_LABEL_FOR</literal></term>
<listitem><simpara> Indicates an object is a label for one or more target objects.
</simpara></listitem>
</varlistentry>
<varlistentry id="SPI-RELATION-LABELED-BY:CAPS" role="constant">
<term><literal>SPI_RELATION_LABELED_BY</literal></term>
<listitem><simpara> Indicates an object is labelled by one or more target objects.
</simpara></listitem>
</varlistentry>
<varlistentry id="SPI-RELATION-CONTROLLER-FOR:CAPS" role="constant">
<term><literal>SPI_RELATION_CONTROLLER_FOR</literal></term>
<listitem><simpara> Indicates an object is an controller for one or more target objects.
</simpara></listitem>
</varlistentry>
<varlistentry id="SPI-RELATION-CONTROLLED-BY:CAPS" role="constant">
<term><literal>SPI_RELATION_CONTROLLED_BY</literal></term>
<listitem><simpara> Indicates an object controlled by one or more target objects.
</simpara></listitem>
</varlistentry>
<varlistentry id="SPI-RELATION-MEMBER-OF:CAPS" role="constant">
<term><literal>SPI_RELATION_MEMBER_OF</literal></term>
<listitem><simpara> Indicates an object is a member of a group of one or
more target objects.
</simpara></listitem>
</varlistentry>
<varlistentry id="SPI-RELATION-NODE-CHILD-OF:CAPS" role="constant">
<term><literal>SPI_RELATION_NODE_CHILD_OF</literal></term>
<listitem><simpara> Indicates an object is a cell in a treetable which is displayed because a cell in the same column is expanded and identifies that cell.
</simpara></listitem>
</varlistentry>
<varlistentry id="SPI-RELATION-EXTENDED:CAPS" role="constant">
<term><literal>SPI_RELATION_EXTENDED</literal></term>
<listitem><simpara> This value indicates that a relation other than those pre-specified by this version of AT-SPI
is present.
</simpara></listitem>
</varlistentry>
<varlistentry id="SPI-RELATION-FLOWS-TO:CAPS" role="constant">
<term><literal>SPI_RELATION_FLOWS_TO</literal></term>
<listitem><simpara> Indicates that the object has content that flows logically to another
 AtkObject in a sequential way, (for instance text-flow).
</simpara></listitem>
</varlistentry>
<varlistentry id="SPI-RELATION-FLOWS-FROM:CAPS" role="constant">
<term><literal>SPI_RELATION_FLOWS_FROM</literal></term>
<listitem><simpara> Indicates that the object has content that flows logically from
 another AtkObject in a sequential way, (for instance text-flow).
</simpara></listitem>
</varlistentry>
<varlistentry id="SPI-RELATION-SUBWINDOW-OF:CAPS" role="constant">
<term><literal>SPI_RELATION_SUBWINDOW_OF</literal></term>
<listitem><simpara> Indicates a subwindow attached to a component but otherwise has no connection in the UI heirarchy to that component.
</simpara></listitem>
</varlistentry>
<varlistentry id="SPI-RELATION-EMBEDS:CAPS" role="constant">
<term><literal>SPI_RELATION_EMBEDS</literal></term>
<listitem><simpara> Indicates that the object visually embeds
 another object's content, i.e. this object's content flows around
 another's content.
</simpara></listitem>
</varlistentry>
<varlistentry id="SPI-RELATION-EMBEDDED-BY:CAPS" role="constant">
<term><literal>SPI_RELATION_EMBEDDED_BY</literal></term>
<listitem><simpara> Inverse of <link linkend="SPI-RELATION-EMBEDS:CAPS"><literal>SPI_RELATION_EMBEDS</literal></link>, indicates that
 this object's content is visualy embedded in another object.
</simpara></listitem>
</varlistentry>
<varlistentry id="SPI-RELATION-POPUP-FOR:CAPS" role="constant">
<term><literal>SPI_RELATION_POPUP_FOR</literal></term>
<listitem><simpara> Indicates that an object is a popup for another object.
</simpara></listitem>
</varlistentry>
<varlistentry id="SPI-RELATION-PARENT-WINDOW-OF:CAPS" role="constant">
<term><literal>SPI_RELATION_PARENT_WINDOW_OF</literal></term>
<listitem><simpara> Indicates that an object is a parent window of another object.
</simpara></listitem>
</varlistentry>
<varlistentry id="SPI-RELATION-DESCRIPTION-FOR:CAPS" role="constant">
<term><literal>SPI_RELATION_DESCRIPTION_FOR</literal></term>
<listitem><simpara> Indicates that an object provides descriptive information about another object; more verbose than <link linkend="SPI-RELATION-LABEL-FOR:CAPS"><literal>SPI_RELATION_LABEL_FOR</literal></link>.
</simpara></listitem>
</varlistentry>
<varlistentry id="SPI-RELATION-DESCRIBED-BY:CAPS" role="constant">
<term><literal>SPI_RELATION_DESCRIBED_BY</literal></term>
<listitem><simpara> Indicates that another object provides descriptive information about this object; more verbose than <link linkend="SPI-RELATION-LABELLED-BY:CAPS"><literal>SPI_RELATION_LABELLED_BY</literal></link>.
</simpara></listitem>
</varlistentry>
<varlistentry id="SPI-RELATION-LAST-DEFINED:CAPS" role="constant">
<term><literal>SPI_RELATION_LAST_DEFINED</literal></term>
<listitem><simpara> Do not use, this is an implementation detail used
 to identify the size of this enumeration.
</simpara></listitem>
</varlistentry>
</variablelist></refsect2>
<refsect2 id="AccessibleRelation-ref" role="function">
<title>AccessibleRelation_ref ()</title>
<indexterm zone="AccessibleRelation-ref"><primary>AccessibleRelation_ref</primary></indexterm><programlisting><link linkend="void">void</link>                AccessibleRelation_ref              (<link linkend="AccessibleRelation">AccessibleRelation</link> *obj);</programlisting>
<para>
Increment the reference count for an <link linkend="AccessibleRelation"><type>AccessibleRelation</type></link> object.</para>
<para>

</para><variablelist role="params">
<varlistentry><term><parameter>obj</parameter>&nbsp;:</term>
<listitem><simpara> a pointer to the <link linkend="AccessibleRelation"><type>AccessibleRelation</type></link> object on which to operate.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="AccessibleRelation-unref" role="function">
<title>AccessibleRelation_unref ()</title>
<indexterm zone="AccessibleRelation-unref"><primary>AccessibleRelation_unref</primary></indexterm><programlisting><link linkend="void">void</link>                AccessibleRelation_unref            (<link linkend="AccessibleRelation">AccessibleRelation</link> *obj);</programlisting>
<para>
Decrement the reference count for an <link linkend="AccessibleRelation"><type>AccessibleRelation</type></link> object.</para>
<para>

</para><variablelist role="params">
<varlistentry><term><parameter>obj</parameter>&nbsp;:</term>
<listitem><simpara> a pointer to the <link linkend="AccessibleRelation"><type>AccessibleRelation</type></link> object on which to operate.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="AccessibleRelation-getNTargets" role="function">
<title>AccessibleRelation_getNTargets ()</title>
<indexterm zone="AccessibleRelation-getNTargets"><primary>AccessibleRelation_getNTargets</primary></indexterm><programlisting><link linkend="int">int</link>                 AccessibleRelation_getNTargets      (<link linkend="AccessibleRelation">AccessibleRelation</link> *obj);</programlisting>
<para>
Get the number of objects which this relationship has as its
      target objects (the subject is the <link linkend="Accessible"><type>Accessible</type></link> from which this
      <link linkend="AccessibleRelation"><type>AccessibleRelation</type></link> originated).</para>
<para>

</para><variablelist role="params">
<varlistentry><term><parameter>obj</parameter>&nbsp;:</term>
<listitem><simpara> a pointer to the <link linkend="AccessibleRelation"><type>AccessibleRelation</type></link> object to query.
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara> a short integer indicating how many target objects which the
      originating <link linkend="Accessible"><type>Accessible</type></link> object has the <link linkend="AccessibleRelation"><type>AccessibleRelation</type></link>
      relationship with.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="AccessibleRelation-getTarget" role="function">
<title>AccessibleRelation_getTarget ()</title>
<indexterm zone="AccessibleRelation-getTarget"><primary>AccessibleRelation_getTarget</primary></indexterm><programlisting><link linkend="Accessible">Accessible</link>*         AccessibleRelation_getTarget        (<link linkend="AccessibleRelation">AccessibleRelation</link> *obj,
                                                         <link linkend="int">int</link> i);</programlisting>
<para>
Get the <parameter>i</parameter>-th target of a specified <link linkend="AccessibleRelation"><type>AccessibleRelation</type></link> relationship.</para>
<para>

</para><variablelist role="params">
<varlistentry><term><parameter>obj</parameter>&nbsp;:</term>
<listitem><simpara> a pointer to the <link linkend="AccessibleRelation"><type>AccessibleRelation</type></link> object to query.
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>i</parameter>&nbsp;:</term>
<listitem><simpara> a (zero-index) integer indicating which (of possibly several) target is requested.
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara> an <link linkend="Accessible"><type>Accessible</type></link> which is the <parameter>i</parameter>-th object with which the
     originating <link linkend="Accessible"><type>Accessible</type></link> has relationship specified in the
     <link linkend="AccessibleRelation"><type>AccessibleRelation</type></link> object.

</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="AccessibleRelation-getRelationType" role="function">
<title>AccessibleRelation_getRelationType ()</title>
<indexterm zone="AccessibleRelation-getRelationType"><primary>AccessibleRelation_getRelationType</primary></indexterm><programlisting><link linkend="AccessibleRelationType">AccessibleRelationType</link> AccessibleRelation_getRelationType
                                                        (<link linkend="AccessibleRelation">AccessibleRelation</link> *obj);</programlisting>
<para>
Get the type of relationship represented by an <link linkend="AccessibleRelation"><type>AccessibleRelation</type></link>.</para>
<para>

</para><variablelist role="params">
<varlistentry><term><parameter>obj</parameter>&nbsp;:</term>
<listitem><simpara> a pointer to the <link linkend="AccessibleRelation"><type>AccessibleRelation</type></link> object to query.
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara> an <link linkend="AccessibleRelationType"><type>AccessibleRelationType</type></link> indicating the type of relation
        encapsulated in this <link linkend="AccessibleRelation"><type>AccessibleRelation</type></link> object.

</simpara></listitem></varlistentry>
</variablelist></refsect2>

</refsect1>




</refentry>
