Table of Contents

Class WindowCascade

Namespace
Archiver.App.Core
Assembly
Archiver.App.Core.dll

T-F201: Pakko is multi-instance by design (T-F88), and every new window opened at the same default spot, exactly over the one already open. Cascades a new window's top-left corner off every other Pakko window, staying inside the work area.

public static class WindowCascade
Inheritance
WindowCascade
Inherited Members

Fields

Step

Offset between cascaded windows, in pixels.

public const int Step = 32

Field Value

int

Methods

Place(int, int, int, int, IReadOnlyList<(int Left, int Top)>, (int Left, int Top, int Right, int Bottom))

Returns where the new window's top-left corner goes: proposedLeft/ proposedTop when no other window sits there, else the next cascade step that is free, wrapping to the work area's corner when a step would push the window out.

public static (int Left, int Top) Place(int proposedLeft, int proposedTop, int width, int height, IReadOnlyList<(int Left, int Top)> otherWindows, (int Left, int Top, int Right, int Bottom) workArea)

Parameters

proposedLeft int
proposedTop int
width int
height int
otherWindows IReadOnlyList<(int Left, int Top)>
workArea (int Left, int Top, int Right, int Bottom)

Returns

(int Left, int Top)