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
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
proposedLeftintproposedTopintwidthintheightintotherWindowsIReadOnlyList<(int Left, int Top)>workArea(int Left, int Top, int Right, int Bottom)