@eclipse-scout/core
Version:
Eclipse Scout runtime
51 lines • 2.09 kB
TypeScript
import { AbstractLayout, Dimension, EllipsisMenu, HtmlCompPrefSizeOptions, Menu, MenuBox } from '../../index';
export declare class MenuBoxLayout extends AbstractLayout {
menuBox: MenuBox;
/** References to prevent too many DOM updates */
firstMenu: Menu;
lastMenu: Menu;
protected _ellipsis: EllipsisMenu;
constructor(menuBox: MenuBox);
layout($container: JQuery): void;
preferredLayoutSize($container: JQuery, options?: HtmlCompPrefSizeOptions): Dimension;
compact(menus?: Menu[]): void;
undoCompact(menus?: Menu[]): void;
/**
* Sets all menus into compact mode.
*/
compactMenus(menus?: Menu[]): void;
/**
* Restores to the previous state of the compact property.
*/
undoCompactMenus(menus?: Menu[]): void;
shrink(menus?: Menu[]): void;
/**
* Makes the text invisible of all menus with an icon.
*/
shrinkMenus(menus?: Menu[]): void;
undoShrink(menus?: Menu[]): void;
undoShrinkMenus(menus?: Menu[]): void;
collapse(containerSize: Dimension, menusWidth: number): void;
/**
* Undoes the collapsing by removing ellipsis and rendering non-rendered menus.
*/
undoCollapse(menus?: Menu[]): void;
protected _createAndRenderEllipsis($container: JQuery): void;
protected _destroyEllipsis(): void;
/**
* Moves every menu which doesn't fit into the container into the ellipsis menu.
* Returns the list of "surviving" menus (with the ellipsis menu being the last element).
*/
protected _moveOverflowMenusIntoEllipsis(containerSize: Dimension, menusWidth: number): Menu[];
protected _removeMenusFromEllipsis(menus?: Menu[]): void;
actualPrefSize(menus?: Menu[]): Dimension;
/**
* @returns the current width of all menus incl. the ellipsis
*/
protected _menusWidth(menus?: Menu[]): number;
compactPrefSize(menus?: Menu[]): Dimension;
shrinkPrefSize(menus?: Menu[]): Dimension;
visibleMenus(): Menu[];
updateFirstAndLastMenuMarker(menus?: Menu[]): void;
}
//# sourceMappingURL=MenuBoxLayout.d.ts.map