summaryrefslogtreecommitdiff
path: root/docs/source/api/overview.rst
diff options
context:
space:
mode:
authorPatrick Totzke <patricktotzke@gmail.com>2012-02-24 14:32:09 +0000
committerPatrick Totzke <patricktotzke@gmail.com>2012-02-24 14:32:09 +0000
commitfa1a8ab1626b2eec0902ccd172b467fc339d39fa (patch)
tree1abb791929632eb31d8e7b39eef3e495aaf9b480 /docs/source/api/overview.rst
parentcd7f84dea631529920e46dd6eafa4423e7f7090f (diff)
updated docs
closes #355
Diffstat (limited to 'docs/source/api/overview.rst')
-rw-r--r--docs/source/api/overview.rst26
1 files changed, 15 insertions, 11 deletions
diff --git a/docs/source/api/overview.rst b/docs/source/api/overview.rst
index 051eacaa..a5ef1e7d 100644
--- a/docs/source/api/overview.rst
+++ b/docs/source/api/overview.rst
@@ -1,19 +1,23 @@
Overview
========
-The main component is :class:`alot.ui.UI`, which provides methods for user input and notifications,
-sets up an :mod:`urwid` :class:`mainloop <urwid.main_loop.TwistedEventLoop>` and widget tree and
-maintains the list of active buffers. Moreover, it integrates different "managers" responsible for
-core functionalities:
+The main component is :class:`alot.ui.UI`, which provides methods for user input and notifications, sets up the widget
+tree and maintains the list of active buffers.
+When you start up alot, :file:`init.py` initializes logging, parses settings and commandline args
+and instanciates the :class:`UI <alot.ui.UI>` instance of that gets passes around later.
+From its constructor this instance starts the :mod:`urwid` :class:`mainloop <urwid.main_loop.TwistedEventLoop>`
+that takes over.
-* a :class:`~db.DBManager` to access the email database
-* an :class:`~account.AccountManager` to deal with user accounts
-* a :class:`~settings.AlotConfigParser` (subclasses :class:`configparser.ConfigParser`) for user settings
+Apart from the central :class:`UI <alot.ui.UI>`, there are two other "managers" responsible for
+core functionalities, also set up in :file:`init.py`:
+
+* :attr:`ui.dbman <alot.ui.UI.dbman>`: a :class:`DBManager <alot.db.DBManager>` to access the email database and
+* :attr:`alot.settings.settings`: a :class:`SettingsManager <alot.settings.SettingsManager>` fo access user settings
Every user action, triggered either by keybindings or as input to the commandprompt, is
-given as commandline string that gets :func:`translated <commands.commandfactory>`
-to a :class:`~commands.Command` which is then :meth:`applied <ui.UI.apply_command>`.
-Different actions are defined as a subclasses of :class:`~commands.Command`, which live
-in `alot/commands/MODE.py`, where MODE is the name of the mode (:class:`Buffer` type) they
+given as commandline string that gets :func:`translated <alot.commands.commandfactory>`
+to a :class:`Command <alot.commands.Command>` object which is then :meth:`applied <alot.ui.UI.apply_command>`.
+Different actions are defined as a subclasses of :class:`Command <alot.commands.Command>`, which live
+in :file:`alot/commands/MODE.py`, where MODE is the name of the mode (:class:`Buffer <alot.buffers.Buffer>` type) they
are used in.