refactor: ♻️ move RectDelta to rect.ts

This commit is contained in:
Mikhail Zolotukhin 2021-10-19 00:48:14 +03:00
parent 014a777ff5
commit fbcb4c002a
19 changed files with 46 additions and 61 deletions

View File

@ -4,7 +4,7 @@
// SPDX-License-Identifier: MIT
import Config from "../config";
import Rect from "../util/rect";
import { Rect } from "../util/rect";
export interface DriverSurface {
readonly id: string;

View File

@ -5,7 +5,7 @@
import { DriverSurface, DriverSurfaceImpl } from "./surface";
import Rect from "../util/rect";
import { Rect } from "../util/rect";
import { clip, matchWords } from "../util/func";
import Config from "../config";
import { Log } from "../util/log";

View File

@ -12,7 +12,7 @@ import { Controller } from "../controller";
import { DriverSurface } from "../driver/surface";
import { Log } from "../util/log";
import Rect from "../util/rect";
import { Rect } from "../util/rect";
import TileLayout from "./layout/tile_layout";
import LayoutStore from "./layout_store";
import { EngineWindow, WindowState } from "./window";

View File

@ -13,8 +13,7 @@ import { Controller } from "../controller";
import { DriverSurface } from "../driver/surface";
import Rect from "../util/rect";
import RectDelta from "../util/rectdelta";
import { Rect, RectDelta } from "../util/rect";
import { overlap, wrapIndex } from "../util/func";
import Config from "../config";
import { Log } from "../util/log";

View File

@ -15,7 +15,7 @@ import {
} from "../../controller/action";
import { Controller } from "../../controller";
import Rect from "../../util/rect";
import { Rect } from "../../util/rect";
export enum CascadeDirection {
NorthWest = 0,

View File

@ -7,7 +7,7 @@ import { WindowsLayout } from ".";
import { WindowState, EngineWindow } from "../window";
import Rect from "../../util/rect";
import { Rect } from "../../util/rect";
import { Controller } from "../../controller";
export default class FloatingLayout implements WindowsLayout {

View File

@ -9,8 +9,7 @@ import { Engine } from "..";
import { Controller } from "../../controller";
import { Action } from "../../controller/action";
import Rect from "../../util/rect";
import RectDelta from "../../util/rectdelta";
import { Rect, RectDelta } from "../../util/rect";
import Config from "../../config";
export interface WindowsLayoutClass {

View File

@ -8,8 +8,7 @@ import LayoutUtils from "./layout_utils";
import { EngineWindow } from "../window";
import Config from "../../config";
import Rect from "../../util/rect";
import RectDelta from "../../util/rectdelta";
import { Rect, RectDelta } from "../../util/rect";
export interface ILayoutPart {
adjust(

View File

@ -4,8 +4,7 @@
// SPDX-License-Identifier: MIT
import { clip } from "../../util/func";
import Rect from "../../util/rect";
import RectDelta from "../../util/rectdelta";
import { Rect, RectDelta } from "../../util/rect";
export default class LayoutUtils {
/**

View File

@ -17,7 +17,7 @@ import {
FocusUpperWindow,
} from "../../controller/action";
import Rect from "../../util/rect";
import { Rect } from "../../util/rect";
import Config from "../../config";
import { Controller } from "../../controller";
import { Engine } from "..";

View File

@ -8,8 +8,7 @@ import { WindowsLayout } from ".";
import { WindowState, EngineWindow } from "../window";
import { clip } from "../../util/func";
import Rect from "../../util/rect";
import RectDelta from "../../util/rectdelta";
import { Rect, RectDelta } from "../../util/rect";
import Config from "../../config";
import { Controller } from "../../controller";

View File

@ -9,8 +9,7 @@ import { WindowsLayout } from ".";
import { WindowState, EngineWindow } from "../window";
import Rect from "../../util/rect";
import RectDelta from "../../util/rectdelta";
import { Rect, RectDelta } from "../../util/rect";
import Config from "../../config";
import { Controller } from "../../controller";

View File

@ -13,7 +13,7 @@ import {
IncreaseMasterAreaWindowCount,
} from "../../controller/action";
import Rect from "../../util/rect";
import { Rect } from "../../util/rect";
import { Controller } from "../../controller";
import { Engine } from "..";

View File

@ -13,7 +13,7 @@ import {
IncreaseMasterAreaWindowCount,
} from "../../controller/action";
import Rect from "../../util/rect";
import { Rect } from "../../util/rect";
import { Controller } from "../../controller";
import { Engine } from "..";

View File

@ -17,8 +17,7 @@ import {
} from "../../controller/action";
import { partitionArrayBySizes, clip, slide } from "../../util/func";
import Rect from "../../util/rect";
import RectDelta from "../../util/rectdelta";
import { Rect, RectDelta } from "../../util/rect";
import Config from "../../config";
import { Controller } from "../../controller";
import { Engine } from "..";

View File

@ -23,8 +23,7 @@ import {
} from "../../controller/action";
import { clip, slide } from "../../util/func";
import Rect from "../../util/rect";
import RectDelta from "../../util/rectdelta";
import { Rect, RectDelta } from "../../util/rect";
import Config from "../../config";
import { Controller } from "../../controller";
import { Engine } from "..";

View File

@ -8,8 +8,7 @@ import { DriverSurface } from "../driver/surface";
import Config from "../config";
import { Log } from "../util/log";
import Rect from "../util/rect";
import RectDelta from "../util/rectdelta";
import { Rect, RectDelta } from "../util/rect";
export enum WindowState {
/**

View File

@ -3,7 +3,7 @@
//
// SPDX-License-Identifier: MIT
export default class Rect {
export class Rect {
constructor(
public x: number,
public y: number,
@ -94,3 +94,31 @@ export default class Rect {
return "Rect(" + [this.x, this.y, this.width, this.height].join(", ") + ")";
}
}
/**
* Describes geometric changes of a rectangle, in terms of changes per edge.
* Outward changes are in positive, and inward changes are in negative.
*/
export class RectDelta {
/** Generate a delta that transforms basis to target. */
public static fromRects(basis: Rect, target: Rect): RectDelta {
const diff = target.subtract(basis);
return new RectDelta(
diff.width + diff.x,
-diff.x,
diff.height + diff.y,
-diff.y
);
}
constructor(
public readonly east: number,
public readonly west: number,
public readonly south: number,
public readonly north: number
) {}
public toString(): string {
return `WindowResizeDelta(east=${this.east} west=${this.west} north=${this.north} south=${this.south}}`;
}
}

View File

@ -1,34 +0,0 @@
// SPDX-FileCopyrightText: 2018-2019 Eon S. Jeon <esjeon@hyunmu.am>
// SPDX-FileCopyrightText: 2021 Mikhail Zolotukhin <mail@genda.life>
//
// SPDX-License-Identifier: MIT
import Rect from "./rect";
/**
* Describes geometric changes of a rectangle, in terms of changes per edge.
* Outward changes are in positive, and inward changes are in negative.
*/
export default class RectDelta {
/** Generate a delta that transforms basis to target. */
public static fromRects(basis: Rect, target: Rect): RectDelta {
const diff = target.subtract(basis);
return new RectDelta(
diff.width + diff.x,
-diff.x,
diff.height + diff.y,
-diff.y
);
}
constructor(
public readonly east: number,
public readonly west: number,
public readonly south: number,
public readonly north: number
) {}
public toString(): string {
return `WindowResizeDelta(east=${this.east} west=${this.west} north=${this.north} south=${this.south}}`;
}
}