---
name: "Cascade"
section: "1x"
platform: "linux"
package: "afterstep"
version: "1.8.11-5woody1"
release: "Debian 3.0 (Woody)"
platforms: ["linux"]
url: "https://new.carta.tech/Cascade"
---

# Cascade(1x)

the AfterStep window cascading module

## NAME

**Cascade** - the AfterStep window cascading module

## SYNOPSIS

**Cascade** \[-f *config\_file*\] \[-v \| --version\] \[-h \| --help\] \[-a\] \[-desk\] \[-flatx\] \[-flaty\] \[-incx *arg*\] \[-incy *arg*\]  \[-m\] \[-noraise\] \[-nostretch\] \[-r\] \[-resize\] \[-s\] \[-t\] \[-u\]  \[x y \[width height\]\]

Although **Cascade** can be run from the command line, it is normally  spawned by afterstep in the *autoexec* file, in the following manner:

```

% cat "~/GNUstep/Library/AfterStep/start/Modules/Cascade"
	Module "Animate" Cascade -resize 10 2 80 70
	MiniPixmap "mini-as.xpm"
```

To stop the **Cascade** module, a menu item can be used:

```

% cat "~/GNUstep/Library/AfterStep/start/Modules/Cascade_Stop"
	KillModuleByName "Stop Cascade" Cascade
	MiniPixmap "mini-as.xpm"
```

## DESCRIPTION

The **Cascade** module attempts to cascade windows on the current screen subject to certain constraints.  Layering is performed so consecutive windows will have their window titles visible underneath the previous.

## OPTIONS

- \-f *config\_file*

  Use *config\_file* instead of the default configuration file.

- \-h \| --help

  Print a usage message and exit successfully.

- \-v \| --version

  Print version information and exit successfully.

- \-a

  Causes *all* window styles to be affected, even ones with the WindowListSkip style.

- \-desk

  Causes all windows on the desk to be cascaded instead of the current screen only.

- \-flatx

  Inhibits border width increment.

- \-flaty

  Inhibits border height increment.

- \-incx *arg*

  Specifies a horizontal increment which is successively added to cascaded windows.  *arg* is a percentage of screen width, or pixel value if a *p* is suffixed.  Default is zero.

- \-incy *arg*

  Specifies a vertical increment which is successively added to cascaded windows.  *arg* is a percentage of screen height, or pixel value if a *p* is suffixed.  Default is zero.

- \-m

  Causes maximized windows to also be affected (implied by -all).

- \-noraise

  Inhibits window raising, leaving the depth ordering intact.

- \-nostretch

  Inhibits window expansion when using the -resize option.  Windows will only shrink to fit the maximal width and height (if given).

- \-r

  Reverses the window sequence.

- \-resize

  Forces all windows to resize to the constrained width and height (if given).

- \-s

  Causes sticky windows to also be affected (implied by -all).

- \-t

  Causes transient windows to also be affected (implied by -all).

- \-u

  Causes untitled windows to also be affected (implied by -all).

## INVOCATION

**Cascade** can be invoked from binding the action "Module Cascade *options*" to a key-stroke in the *feel*, or from a menu item as shown in the Synopsis section above.

The **Cascade** module can also be called multiple times with different options. This way multiple Cascading programs can be used, and is unlike other modules which require a symlink to run multiple times.

## CONFIGURATION OPTIONS

Command-line arguments passed to **Cascade** are described in the  *OPTIONS* section, above.

Up to four numbers can be placed on the command line that are not switches.  The first pair specify an x and y offset to start the first window (default is 0, 0).  The second pair specify a maximal width and height for the layered windows.  If an affected window exceeds either this width or height, it is resized to the maximal width or height. If each number is suffixed with the letter p, then it is taken to be a pixel value, otherwise it is interpreted as a screen percentage. Specifying zero for any parameter is equivalent to not specifying it.

## EXAMPLE

As an example case, one could call Cascade with the following arguments:

**Cascade -resize 10 2 80 70**

This invocation will cascade windows starting 10 by 2 percent into and down the screen.  Windows will be constrained to 80 by 70 percent of the screen dimensions.  Since the *resize* is also specified, windows will be resized to the given constrained width and height.

## BUGS

It is probably not a good idea to delete windows while windows are being cascaded.

## AUTHOR

Andrew Veliath

```
David Mihm <dmihm@swbell.net> [Man page]
```

## SEE ALSO

**afterstep**(1)
