import { IControl } from "../UiControl"; import { WindowLike } from "./UiWindow"; import { DpiSize, DpiSize_2, DpiMargin } from "../UiCommon"; import { Vec4 } from "../../Math/Vector"; export declare enum DockMode { None = 0, Left = 1, Top = 2, Right = 3, Bottom = 4, Fill = 5 } export declare enum AnchorMode { Left = 1, Top = 2, Right = 4, Bottom = 8, All = 15, CornerLT = 3, CornerRT = 6, CornerLB = 9, CornerRB = 12, ExceptL = 14, ExceptT = 13, ExceptR = 11, ExceptB = 7 } export declare class GridDefinition { Size: DpiSize; Minimum: DpiSize; Maximum: DpiSize; } export interface IGridControl { GetControl(): T; SetDock(v: DockMode): IGridControl; GetDock(): DockMode; SetAnchor(v: AnchorMode): IGridControl; GetAnchor(): AnchorMode; SetMargin(v: DpiMargin): IGridControl; GetMargin(): DpiMargin; SetGrid(x: number, y: number, xspan?: number, yspan?: number): IGridControl; GetGrid(): Vec4; SetPos(v: DpiSize_2): IGridControl; SetPos(x: DpiSize, y: DpiSize): IGridControl; SetSize(v: DpiSize_2): IGridControl; SetPosZ(v: number): IGridControl; GetPosZ(): number; BringToFront(): IGridControl; BringToBack(): IGridControl; } export interface IGrid extends IControl { new (x: WindowLike): IGrid; SetBackground(b: boolean): Grid; GetBackground(): boolean; SetBackColor(vColor: Vec4): Grid; GetBackColor(): Vec4; SetSplitterX(n: DpiSize): Grid; GetSplitterX(): DpiSize; SetSplitterY(n: DpiSize): Grid; GetSplitterY(): DpiSize; RowClear(): Grid; RowGetCount(): number; RowGetOffset(nIndex: number): number; RowGetSize(nIndex: number): number; RowGetDef(nIndex: number): GridDefinition; RowAdd(def: GridDefinition): Grid; RowInsert(nInsertBefore: number, def: GridDefinition): Grid; RowRemove(nIndex: number): Grid; RowSet(nIndex: number, def: DpiSize): Grid; RowSetDef(nIndex: number, def: GridDefinition): Grid; ColClear(): Grid; ColGetCount(): number; ColGetOffset(nIndex: number): number; ColGetSize(nIndex: number): number; ColGetDef(nIndex: number): GridDefinition; ColAdd(def: GridDefinition): Grid; ColInsert(nInsertBefore: number, def: GridDefinition): Grid; ColRemove(nIndex: number): Grid; ColSet(nIndex: number, def: DpiSize): Grid; ColSetDef(nIndex: number, def: GridDefinition): Grid; ControlAdd(c: IControl, bIsParasite?: boolean): any; ControlGet(c: T): IGridControl; ControlRemove(c: IControl): IControl; ControlRemoveAll(): Grid; } declare const Grid_base: IGrid; export declare class Grid extends Grid_base { private children; constructor(window: WindowLike); RowAdd(defOrSize: GridDefinition | DpiSize, nMin?: DpiSize, nMax?: DpiSize): Grid; RowAddPx(...x: number[]): this; RowAddDpx(...x: number[]): this; RowAddSlice(...x: number[]): this; RowInsert(nInsertBefore: number, defOrSize: GridDefinition | DpiSize, nMin?: DpiSize, nMax?: DpiSize): Grid; ColAdd(defOrSize: GridDefinition | DpiSize, nMin?: DpiSize, nMax?: DpiSize): Grid; ColAddPx(...x: number[]): this; ColAddDpx(...x: number[]): this; ColAddSlice(...x: number[]): this; ColInsert(nInsertBefore: number, defOrSize: GridDefinition | DpiSize, nMin?: DpiSize, nMax?: DpiSize): Grid; GetBackColor(): Vec4; private AddGridExtension; ControlAdd(c: T, bIsParasite?: boolean): IGridControl; ControlGet(c: T): IGridControl; ControlRemove(c: IControl): IControl; ControlRemoveAll(): Grid; } export {};