---
name: "display-sub"
section: "7"
platform: "linux"
package: "libggi2"
version: "1:2.2.2-5"
release: "Debian 6.0 (Squeeze)"
platforms: ["linux"]
url: "https://new.carta.tech/display-sub"
---

# display-sub(7)

Make a child visual that is a window to the parent

## NAME

**display-sub** - Make a child visual that is a window to the parent

## SYNOPSIS

```
display-sub: <target-spec>
```

## DESCRIPTION

Creates a "child" visual within a "parent". This can be thought of as a window and the **display-sub** target is intended for simple windowing systems.

No textual arguments, since this target can only be used by applications. *argptr* must contain the parent visual.

The sub target behaves a bit special with respect to (i.e. abuses the semantics of :) the `ggiSetMode(3)` call. It uses the "visible" size for the top left corner position of the window within the visual, and the "virtual" size for window width and height.  Note, that moving/resizing the window does *not* cause any drawing action.  You have to perform those yourself. All it does for you is providing a virtual visual within an existing one, which is convenient to allow for window system canvases to be about any GGI program.

**Important:** It is possible to have (**0**, **0**) as upper, left corner. But beware, **0** means **GGI\_AUTO** and therefore it may get overridden by **GGI\_DEFMODE** environment variable. In this case, you may get unintended results.

## OPTIONS

- *target-spec*

  Specifies the target which to draw on (the *parent* target).  This defaults to automatic selection (just like using `ggiOpen(NULL)` when **GGI\_DISPLAY** is not set).

## FEATURES

- •

  DirectBuffer not supported.

- •

  Accelerated to the point of the parent. Calls are mapped through with modified clipping and coordinates.
