[
`English <../../contributor/ref/tabs.html>`__
| `中文 (简体, 中国) <../../zh_CN/contributor/ref/tabs.html>`__
| `русский <../../ru/contributor/ref/tabs.html>`__
| `português (Brasil) <../../pt_BR/contributor/ref/tabs.html>`__
| `नेपाली <../../ne/contributor/ref/tabs.html>`__
| `한국어 (대한민국) <../../ko_KR/contributor/ref/tabs.html>`__
| `Indonesia <../../id/contributor/ref/tabs.html>`__
| `français <../../fr/contributor/ref/tabs.html>`__
| `español <../../es/contributor/ref/tabs.html>`__
| `esperanto <../../eo/contributor/ref/tabs.html>`__
| `English (United Kingdom) <../../en_GB/contributor/ref/tabs.html>`__
| `Deutsch <../../de/contributor/ref/tabs.html>`__
]

==========================
Horizon Tabs and TabGroups
==========================

.. module:: horizon.tabs

Horizon includes a set of reusable components for programmatically
building tabbed interfaces with fancy features like dynamic AJAX loading
and nearly effortless templating and styling.

Tab Groups
==========

For any tabbed interface, your fundamental element is the tab group which
contains all your tabs. This class provides a dead-simple API for building
tab groups and encapsulates all the necessary logic behind the scenes.

.. autoclass:: TabGroup
    :members:

Tabs
====

The tab itself is the discrete unit for a tab group, representing one
view of data.

.. autoclass:: Tab
    :members:

.. autoclass:: TableTab
    :members:



TabView
=======

There is also a useful and simple generic class-based view for handling
the display of a :class:`~horizon.tabs.TabGroup` class.

.. autoclass:: TabView
    :members:

.. autoclass:: TabbedTableView
    :members:
