<?xml version="1.0"?>
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
               "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"
[
  <!ENTITY % local.common.attrib "xmlns:xi  CDATA  #FIXED 'http://www.w3.org/2003/XInclude'">
  <!ENTITY % gtkdocentities SYSTEM "../xml/gtkdocentities.ent">
  %gtkdocentities;
]>
<refentry id="AtkTableCell">
<refmeta>
<refentrytitle role="top_of_page" id="AtkTableCell.top_of_page">AtkTableCell</refentrytitle>
<manvolnum>3</manvolnum>
<refmiscinfo>ATK Library</refmiscinfo>
</refmeta>
<refnamediv>
<refname>AtkTableCell</refname>
<refpurpose>The ATK interface implemented for a cell inside
a two-dimentional <link linkend="AtkTable"><type>AtkTable</type></link></refpurpose>
</refnamediv>

<refsect1 id="AtkTableCell.functions" role="functions_proto">
<title role="functions_proto.title">Functions</title>
<informaltable pgwide="1" frame="none">
<tgroup cols="2">
<colspec colname="functions_proto_type" colwidth="150px"/>
<colspec colname="functions_proto_name"/>
<tbody>
<row><entry role="function_type"><link linkend="gint"><returnvalue>gint</returnvalue></link>
</entry><entry role="function_name"><link linkend="atk-table-cell-get-column-span">atk_table_cell_get_column_span</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="GPtrArray"><returnvalue>GPtrArray</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="atk-table-cell-get-column-header-cells">atk_table_cell_get_column_header_cells</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
</entry><entry role="function_name"><link linkend="atk-table-cell-get-position">atk_table_cell_get_position</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gint"><returnvalue>gint</returnvalue></link>
</entry><entry role="function_name"><link linkend="atk-table-cell-get-row-span">atk_table_cell_get_row_span</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="GPtrArray"><returnvalue>GPtrArray</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="atk-table-cell-get-row-header-cells">atk_table_cell_get_row_header_cells</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
</entry><entry role="function_name"><link linkend="atk-table-cell-get-row-column-span">atk_table_cell_get_row_column_span</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="AtkObject"><returnvalue>AtkObject</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="atk-table-cell-get-table">atk_table_cell_get_table</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>

</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 id="AtkTableCell.other" role="other_proto">
<title role="other_proto.title">Types and Values</title>
<informaltable pgwide="1" frame="none">
<tgroup cols="2">
<colspec colname="other_proto_type" colwidth="150px"/>
<colspec colname="other_proto_name"/>
<tbody>
<row><entry role="datatype_keyword"></entry><entry role="function_name"><link linkend="AtkTableCell-struct">AtkTableCell</link></entry></row>
<row><entry role="datatype_keyword">struct</entry><entry role="function_name"><link linkend="AtkTableCellIface">AtkTableCellIface</link></entry></row>

</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 id="AtkTableCell.object-hierarchy" role="object_hierarchy">
<title role="object_hierarchy.title">Object Hierarchy</title>
<screen>    <link linkend="GInterface">GInterface</link>
    <phrase role="lineart">&#9584;&#9472;&#9472;</phrase> AtkTableCell
</screen>
</refsect1>
<refsect1 id="AtkTableCell.prerequisites" role="prerequisites">
<title role="prerequisites.title">Prerequisites</title>
<para>
AtkTableCell requires
 <link linkend="AtkObject">AtkObject</link>.</para>

</refsect1>
<refsect1 id="AtkTableCell.implementations" role="implementations">
<title role="implementations.title">Known Implementations</title>
<para>
AtkTableCell is implemented by
 <link linkend="AtkNoOpObject">AtkNoOpObject</link>.</para>

</refsect1>


<refsect1 id="AtkTableCell.description" role="desc">
<title role="desc.title">Description</title>
<para>Being <link linkend="AtkTable"><type>AtkTable</type></link> a component which present elements ordered via rows
and columns, an <link linkend="AtkTableCell"><type>AtkTableCell</type></link> is the interface which each of those
elements, so "cells" should implement.</para>
<para>See also <link linkend="AtkTable"><type>AtkTable</type></link>.</para>

</refsect1>
<refsect1 id="AtkTableCell.functions_details" role="details">
<title role="details.title">Functions</title>
<refsect2 id="atk-table-cell-get-column-span" role="function" condition="since:2.12">
<title>atk_table_cell_get_column_span&#160;()</title>
<indexterm zone="atk-table-cell-get-column-span" role="2.12"><primary>atk_table_cell_get_column_span</primary></indexterm>
<programlisting language="C"><link linkend="gint"><returnvalue>gint</returnvalue></link>
atk_table_cell_get_column_span (<parameter><link linkend="AtkTableCell"><type>AtkTableCell</type></link> *cell</parameter>);</programlisting>
<para>Returns the number of columns occupied by this cell accessible.</para>
<refsect3 id="atk-table-cell-get-column-span.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>cell</para></entry>
<entry role="parameter_description"><para>a GObject instance that implements AtkTableCellIface</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="atk-table-cell-get-column-span.returns" role="returns">
<title>Returns</title>
<para> a gint representing the number of columns occupied by this cell,
or 0 if the cell does not implement this method.</para>
</refsect3><para role="since">Since: <link linkend="api-index-2.12">2.12</link></para></refsect2>
<refsect2 id="atk-table-cell-get-column-header-cells" role="function" condition="since:2.12">
<title>atk_table_cell_get_column_header_cells&#160;()</title>
<indexterm zone="atk-table-cell-get-column-header-cells" role="2.12"><primary>atk_table_cell_get_column_header_cells</primary></indexterm>
<programlisting language="C"><link linkend="GPtrArray"><returnvalue>GPtrArray</returnvalue></link>&#160;*
atk_table_cell_get_column_header_cells
                               (<parameter><link linkend="AtkTableCell"><type>AtkTableCell</type></link> *cell</parameter>);</programlisting>
<para>Returns the column headers as an array of cell accessibles.</para>
<refsect3 id="atk-table-cell-get-column-header-cells.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>cell</para></entry>
<entry role="parameter_description"><para>a GObject instance that implements AtkTableCellIface</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="atk-table-cell-get-column-header-cells.returns" role="returns">
<title>Returns</title>
<para>a GPtrArray of AtkObjects
representing the column header cells. </para>
<para><emphasis role="annotation">[<acronym>element-type</acronym> AtkObject][<acronym>transfer full</acronym>]</emphasis></para>
</refsect3><para role="since">Since: <link linkend="api-index-2.12">2.12</link></para></refsect2>
<refsect2 id="atk-table-cell-get-position" role="function" condition="since:2.12">
<title>atk_table_cell_get_position&#160;()</title>
<indexterm zone="atk-table-cell-get-position" role="2.12"><primary>atk_table_cell_get_position</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
atk_table_cell_get_position (<parameter><link linkend="AtkTableCell"><type>AtkTableCell</type></link> *cell</parameter>,
                             <parameter><link linkend="gint"><type>gint</type></link> *row</parameter>,
                             <parameter><link linkend="gint"><type>gint</type></link> *column</parameter>);</programlisting>
<para>Retrieves the tabular position of this cell.</para>
<refsect3 id="atk-table-cell-get-position.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>cell</para></entry>
<entry role="parameter_description"><para>a GObject instance that implements AtkTableCellIface</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>row</para></entry>
<entry role="parameter_description"><para>the row of the given cell. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>out</acronym>]</emphasis></entry></row>
<row><entry role="parameter_name"><para>column</para></entry>
<entry role="parameter_description"><para>the column of the given cell. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>out</acronym>]</emphasis></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="atk-table-cell-get-position.returns" role="returns">
<title>Returns</title>
<para> TRUE if successful; FALSE otherwise.</para>
</refsect3><para role="since">Since: <link linkend="api-index-2.12">2.12</link></para></refsect2>
<refsect2 id="atk-table-cell-get-row-span" role="function" condition="since:2.12">
<title>atk_table_cell_get_row_span&#160;()</title>
<indexterm zone="atk-table-cell-get-row-span" role="2.12"><primary>atk_table_cell_get_row_span</primary></indexterm>
<programlisting language="C"><link linkend="gint"><returnvalue>gint</returnvalue></link>
atk_table_cell_get_row_span (<parameter><link linkend="AtkTableCell"><type>AtkTableCell</type></link> *cell</parameter>);</programlisting>
<para>Returns the number of rows occupied by this cell accessible.</para>
<refsect3 id="atk-table-cell-get-row-span.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>cell</para></entry>
<entry role="parameter_description"><para>a GObject instance that implements AtkTableCellIface</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="atk-table-cell-get-row-span.returns" role="returns">
<title>Returns</title>
<para> a gint representing the number of rows occupied by this cell,
or 0 if the cell does not implement this method.</para>
</refsect3><para role="since">Since: <link linkend="api-index-2.12">2.12</link></para></refsect2>
<refsect2 id="atk-table-cell-get-row-header-cells" role="function" condition="since:2.12">
<title>atk_table_cell_get_row_header_cells&#160;()</title>
<indexterm zone="atk-table-cell-get-row-header-cells" role="2.12"><primary>atk_table_cell_get_row_header_cells</primary></indexterm>
<programlisting language="C"><link linkend="GPtrArray"><returnvalue>GPtrArray</returnvalue></link>&#160;*
atk_table_cell_get_row_header_cells (<parameter><link linkend="AtkTableCell"><type>AtkTableCell</type></link> *cell</parameter>);</programlisting>
<para>Returns the row headers as an array of cell accessibles.</para>
<refsect3 id="atk-table-cell-get-row-header-cells.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>cell</para></entry>
<entry role="parameter_description"><para>a GObject instance that implements AtkTableCellIface</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="atk-table-cell-get-row-header-cells.returns" role="returns">
<title>Returns</title>
<para>a GPtrArray of AtkObjects
representing the row header cells. </para>
<para><emphasis role="annotation">[<acronym>element-type</acronym> AtkObject][<acronym>transfer full</acronym>]</emphasis></para>
</refsect3><para role="since">Since: <link linkend="api-index-2.12">2.12</link></para></refsect2>
<refsect2 id="atk-table-cell-get-row-column-span" role="function" condition="since:2.12">
<title>atk_table_cell_get_row_column_span&#160;()</title>
<indexterm zone="atk-table-cell-get-row-column-span" role="2.12"><primary>atk_table_cell_get_row_column_span</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
atk_table_cell_get_row_column_span (<parameter><link linkend="AtkTableCell"><type>AtkTableCell</type></link> *cell</parameter>,
                                    <parameter><link linkend="gint"><type>gint</type></link> *row</parameter>,
                                    <parameter><link linkend="gint"><type>gint</type></link> *column</parameter>,
                                    <parameter><link linkend="gint"><type>gint</type></link> *row_span</parameter>,
                                    <parameter><link linkend="gint"><type>gint</type></link> *column_span</parameter>);</programlisting>
<para>Gets the row and column indexes and span of this cell accessible.</para>
<para>Note: If the object does not implement this function, then, by default, atk
will implement this function by calling get_row_span and get_column_span
on the object.</para>
<refsect3 id="atk-table-cell-get-row-column-span.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>cell</para></entry>
<entry role="parameter_description"><para>a GObject instance that implements AtkTableCellIface</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>row</para></entry>
<entry role="parameter_description"><para>the row index of the given cell. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>out</acronym>]</emphasis></entry></row>
<row><entry role="parameter_name"><para>column</para></entry>
<entry role="parameter_description"><para>the column index of the given cell. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>out</acronym>]</emphasis></entry></row>
<row><entry role="parameter_name"><para>row_span</para></entry>
<entry role="parameter_description"><para>the number of rows occupied by this cell. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>out</acronym>]</emphasis></entry></row>
<row><entry role="parameter_name"><para>column_span</para></entry>
<entry role="parameter_description"><para>the number of columns occupied by this cell. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>out</acronym>]</emphasis></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="atk-table-cell-get-row-column-span.returns" role="returns">
<title>Returns</title>
<para> TRUE if successful; FALSE otherwise.</para>
</refsect3><para role="since">Since: <link linkend="api-index-2.12">2.12</link></para></refsect2>
<refsect2 id="atk-table-cell-get-table" role="function" condition="since:2.12">
<title>atk_table_cell_get_table&#160;()</title>
<indexterm zone="atk-table-cell-get-table" role="2.12"><primary>atk_table_cell_get_table</primary></indexterm>
<programlisting language="C"><link linkend="AtkObject"><returnvalue>AtkObject</returnvalue></link>&#160;*
atk_table_cell_get_table (<parameter><link linkend="AtkTableCell"><type>AtkTableCell</type></link> *cell</parameter>);</programlisting>
<para>Returns a reference to the accessible of the containing table.</para>
<refsect3 id="atk-table-cell-get-table.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>cell</para></entry>
<entry role="parameter_description"><para>a GObject instance that implements AtkTableCellIface</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="atk-table-cell-get-table.returns" role="returns">
<title>Returns</title>
<para>the atk object for the containing table. </para>
<para><emphasis role="annotation">[<acronym>transfer full</acronym>]</emphasis></para>
</refsect3><para role="since">Since: <link linkend="api-index-2.12">2.12</link></para></refsect2>

</refsect1>
<refsect1 id="AtkTableCell.other_details" role="details">
<title role="details.title">Types and Values</title>
<refsect2 id="AtkTableCell-struct" role="struct">
<title>AtkTableCell</title>
<indexterm zone="AtkTableCell-struct"><primary>AtkTableCell</primary></indexterm>
<programlisting language="C">typedef struct _AtkTableCell AtkTableCell;</programlisting>
</refsect2>
<refsect2 id="AtkTableCellIface" role="struct">
<title>struct AtkTableCellIface</title>
<indexterm zone="AtkTableCellIface"><primary>AtkTableCellIface</primary></indexterm>
<programlisting language="C">struct AtkTableCellIface {
  GTypeInterface parent;

  gint          (*get_column_span)         (AtkTableCell *cell);
  GPtrArray *   (*get_column_header_cells) (AtkTableCell *cell);
  gboolean      (*get_position)            (AtkTableCell *cell,
                                            gint         *row,
                                            gint         *column);
  gint          (*get_row_span)            (AtkTableCell *cell);
  GPtrArray *   (*get_row_header_cells)    (AtkTableCell *cell);
  gboolean      (*get_row_column_span)     (AtkTableCell *cell,
                                            gint         *row,
                                            gint         *column,
                                            gint         *row_span,
                                            gint         *column_span);
  AtkObject *   (*get_table)               (AtkTableCell *cell);
};
</programlisting>
<refsect3 id="AtkTableCellIface.members" role="struct_members">
<title>Members</title>
<informaltable role="struct_members_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="struct_members_name" colwidth="300px"/>
<colspec colname="struct_members_description"/>
<colspec colname="struct_members_annotations" colwidth="200px"/>
<tbody>
<row role="member"><entry role="struct_member_name"><para><link linkend="GTypeInterface"><type>GTypeInterface</type></link>&#160;<structfield id="AtkTableCellIface.parent">parent</structfield>;</para></entry>
<entry /><entry />
</row>
<row role="member"><entry role="struct_member_name"><para><structfield id="AtkTableCellIface.get-column-span">get_column_span</structfield>&#160;()</para></entry>
<entry role="struct_member_description"><para>virtual function that returns the number of
columns occupied by this cell accessible. <parameter>Since</parameter>
: 2.12</para></entry>
<entry role="struct_member_annotations"></entry>
</row>
<row role="member"><entry role="struct_member_name"><para><structfield id="AtkTableCellIface.get-column-header-cells">get_column_header_cells</structfield>&#160;()</para></entry>
<entry role="struct_member_description"><para>virtual function that returns the column
headers as an array of cell accessibles. <parameter>Since</parameter>
: 2.12</para></entry>
<entry role="struct_member_annotations"></entry>
</row>
<row role="member"><entry role="struct_member_name"><para><structfield id="AtkTableCellIface.get-position">get_position</structfield>&#160;()</para></entry>
<entry role="struct_member_description"><para>virtual function that retrieves the tabular position
of this cell. <parameter>Since</parameter>
: 2.12</para></entry>
<entry role="struct_member_annotations"></entry>
</row>
<row role="member"><entry role="struct_member_name"><para><structfield id="AtkTableCellIface.get-row-span">get_row_span</structfield>&#160;()</para></entry>
<entry role="struct_member_description"><para>virtual function that returns the number of rows
occupied by this cell. <parameter>Since</parameter>
: 2.12</para></entry>
<entry role="struct_member_annotations"></entry>
</row>
<row role="member"><entry role="struct_member_name"><para><structfield id="AtkTableCellIface.get-row-header-cells">get_row_header_cells</structfield>&#160;()</para></entry>
<entry role="struct_member_description"><para>virtual function that returns the row
headers as an array of cell accessibles. <parameter>Since</parameter>
: 2.12</para></entry>
<entry role="struct_member_annotations"></entry>
</row>
<row role="member"><entry role="struct_member_name"><para><structfield id="AtkTableCellIface.get-row-column-span">get_row_column_span</structfield>&#160;()</para></entry>
<entry role="struct_member_description"><para>virtual function that get the row an column
indexes and span of this cell. <parameter>Since</parameter>
: 2.12</para></entry>
<entry role="struct_member_annotations"></entry>
</row>
<row role="member"><entry role="struct_member_name"><para><structfield id="AtkTableCellIface.get-table">get_table</structfield>&#160;()</para></entry>
<entry role="struct_member_description"><para>virtual function that returns a reference to the
accessible of the containing table. <parameter>Since</parameter>
: 2.12</para></entry>
<entry role="struct_member_annotations"></entry>
</row>
</tbody></tgroup></informaltable>
</refsect3>
</refsect2>

</refsect1>

</refentry>
