Divide display into tiles similar to a video wall
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. manpage:: 7 display-tile

Synopsis
--------

::

  display-tile : [ [-usedb] | [-nodb] ]
		 <offset-x>,<offset-y>,<size-x>,<size-y>,<child-target-spec>
		 ...

Description
-----------

Emulates one big target, where one or more areas are mapped to
different child visuals.


Options
-------

For each tile (i.e. child visual or mapped area), the following must
be specified:

:p:`offset-x`, :p:`offset-y`
    coordinates (within the parent visual) of the top-left corner of
    the child visual

:p:`size-x`, :p:`size-y`
    width and height of the child visual

:p`child-target-spec`
    a target spec.  Since target specs can (and often do) contain colons, it
    needs to be enclosed in parentheses.


The following options apply to the whole `display-tile`:


``-usedb``
    Enables DirectBuffer emulation. This is the default mode.  

    The contents of each mapped area is blitted from the DirectBuffer into
    their respective child visuals at regular intervals or when the visual
    is flushed.  DirectBuffer emulation works regardless of whether the
    child visuals support DirectBuffer or not.

``-nodb``
    Disables DirectBuffer emulation.  LibGGI primitives are passed to each
    of the child visuals with the necessary clipping and translation.  Thus,
    if a child visual underlying a mapped area supports acceleration, then
    the operation on that area will be accelerated.


Features
--------

- DirectBuffer support depends on the ``-usedb`` and ``-nodb``
  options.

- Accelerated in no-DB mode if the underlying target is, otherwise
  unaccelerated.

.. tip::

    `display-tile` can be used to emulate DirectBuffer for obstinate
    applications that cannot run without it, by specifying one tile
    which maps the whole screen.
