devextreme-angular
Version:
Angular UI and visualization components based on DevExtreme widgets
482 lines (354 loc) • 14.3 kB
TypeScript
/*!
* devextreme-angular
* Version: 20.2.5
* Build date: Fri Jan 15 2021
*
* Copyright (c) 2012 - 2021 Developer Express Inc. ALL RIGHTS RESERVED
*
* This software may be modified and distributed under the terms
* of the MIT license. See the LICENSE file in the root of the project for details.
*
* https://github.com/DevExpress/devextreme-angular
*/
import { TransferState } from '@angular/platform-browser';
import { ElementRef, NgZone, OnDestroy, EventEmitter, OnChanges, DoCheck, SimpleChanges, QueryList } from '@angular/core';
import DevExpress from 'devextreme/bundles/dx.all';
import DxMenu from 'devextreme/ui/menu';
import { DxComponent, DxTemplateHost, NestedOptionHost, IterableDifferHelper, WatcherHelper } from 'devextreme-angular/core';
import { DxiItemComponent } from 'devextreme-angular/ui/nested';
/**
* The Menu UI component is a panel with clickable items. A click on an item opens a drop-down menu, which can contain several submenus.
*/
export declare class DxMenuComponent extends DxComponent implements OnDestroy, OnChanges, DoCheck {
private _watcherHelper;
private _idh;
instance: DxMenu;
/**
* Specifies the shortcut key that sets focus on the UI component.
*/
accessKey: string;
/**
* A Boolean value specifying whether or not the UI component changes its state when interacting with a user.
*/
activeStateEnabled: boolean;
/**
* Specifies whether adaptive UI component rendering is enabled on small screens. Applies only if the orientation is 'horizontal'.
*/
adaptivityEnabled: boolean;
/**
* Configures UI component visibility animations. This object contains two fields: show and hide.
*/
animation: {
hide?: DevExpress.animationConfig;
show?: DevExpress.animationConfig;
};
/**
* Specifies the name of the CSS class to be applied to the root menu level and all submenus.
*/
cssClass: string;
/**
* Binds the UI component to data.
*/
dataSource: DevExpress.data.DataSource | DevExpress.data.DataSourceOptions | string | Array<DevExpress.ui.dxMenuItem>;
/**
* Specifies whether the UI component responds to user interaction.
*/
disabled: boolean;
/**
* Specifies the name of the data source item field whose value defines whether or not the corresponding UI component item is disabled.
*/
disabledExpr: Function | string;
/**
* Specifies the data field whose values should be displayed.
*/
displayExpr: Function | string;
/**
* Specifies the global attributes to be attached to the UI component's container element.
*/
elementAttr: any;
/**
* Specifies whether the UI component can be focused using keyboard navigation.
*/
focusStateEnabled: boolean;
/**
* Specifies the UI component's height.
*/
height: number | Function | string;
/**
* Specifies whether or not the submenu is hidden when the mouse pointer leaves it.
*/
hideSubmenuOnMouseLeave: boolean;
/**
* Specifies text for a hint that appears when a user pauses on the UI component.
*/
hint: string;
/**
* Specifies whether the UI component changes its state when a user pauses on it.
*/
hoverStateEnabled: boolean;
/**
* Holds an array of menu items.
*/
items: Array<DevExpress.ui.dxMenuItem>;
/**
* Specifies which data field contains nested items.
*/
itemsExpr: Function | string;
/**
* Specifies a custom template for items.
*/
itemTemplate: any;
/**
* Specifies whether the menu has horizontal or vertical orientation.
*/
orientation: string;
/**
* Switches the UI component to a right-to-left representation.
*/
rtlEnabled: boolean;
/**
* Specifies whether or not an item becomes selected if a user clicks it.
*/
selectByClick: boolean;
/**
* Specifies the name of the data source item field whose value defines whether or not the corresponding UI component items is selected.
*/
selectedExpr: Function | string;
/**
* The selected item object.
*/
selectedItem: any;
/**
* Specifies the selection mode supported by the menu.
*/
selectionMode: string;
/**
* Specifies properties for showing and hiding the first level submenu.
*/
showFirstSubmenuMode: string | {
delay?: number | {
hide?: number;
show?: number;
};
name?: string;
};
/**
* Specifies properties of submenu showing and hiding.
*/
showSubmenuMode: string | {
delay?: number | {
hide?: number;
show?: number;
};
name?: string;
};
/**
* Specifies the direction at which the submenus are displayed.
*/
submenuDirection: string;
/**
* Specifies the number of the element when the Tab key is used for navigating.
*/
tabIndex: number;
/**
* Specifies whether the UI component is visible.
*/
visible: boolean;
/**
* Specifies the UI component's width.
*/
width: number | Function | string;
/**
* A function that is executed when the UI component's content is ready and each time the content is changed.
*/
onContentReady: EventEmitter<any>;
/**
* A function that is executed before the UI component is disposed of.
*/
onDisposing: EventEmitter<any>;
/**
* A function used in JavaScript frameworks to save the UI component instance.
*/
onInitialized: EventEmitter<any>;
/**
* A function that is executed when a collection item is clicked or tapped.
*/
onItemClick: EventEmitter<any>;
/**
* A function that is executed when a collection item is right-clicked or pressed.
*/
onItemContextMenu: EventEmitter<any>;
/**
* A function that is executed after a collection item is rendered.
*/
onItemRendered: EventEmitter<any>;
/**
* A function that is executed after a UI component property is changed.
*/
onOptionChanged: EventEmitter<any>;
/**
* A function that is executed when a collection item is selected or selection is canceled.
*/
onSelectionChanged: EventEmitter<any>;
/**
* A function that is executed after a submenu is hidden.
*/
onSubmenuHidden: EventEmitter<any>;
/**
* A function that is executed before a submenu is hidden.
*/
onSubmenuHiding: EventEmitter<any>;
/**
* A function that is executed before a submenu is displayed.
*/
onSubmenuShowing: EventEmitter<any>;
/**
* A function that is executed after a submenu is displayed.
*/
onSubmenuShown: EventEmitter<any>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
accessKeyChange: EventEmitter<string>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
activeStateEnabledChange: EventEmitter<boolean>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
adaptivityEnabledChange: EventEmitter<boolean>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
animationChange: EventEmitter<{
hide?: DevExpress.animationConfig;
show?: DevExpress.animationConfig;
}>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
cssClassChange: EventEmitter<string>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
dataSourceChange: EventEmitter<DevExpress.data.DataSource | DevExpress.data.DataSourceOptions | string | Array<DevExpress.ui.dxMenuItem>>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
disabledChange: EventEmitter<boolean>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
disabledExprChange: EventEmitter<Function | string>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
displayExprChange: EventEmitter<Function | string>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
elementAttrChange: EventEmitter<any>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
focusStateEnabledChange: EventEmitter<boolean>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
heightChange: EventEmitter<number | Function | string>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
hideSubmenuOnMouseLeaveChange: EventEmitter<boolean>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
hintChange: EventEmitter<string>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
hoverStateEnabledChange: EventEmitter<boolean>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
itemsChange: EventEmitter<Array<DevExpress.ui.dxMenuItem>>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
itemsExprChange: EventEmitter<Function | string>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
itemTemplateChange: EventEmitter<any>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
orientationChange: EventEmitter<string>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
rtlEnabledChange: EventEmitter<boolean>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
selectByClickChange: EventEmitter<boolean>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
selectedExprChange: EventEmitter<Function | string>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
selectedItemChange: EventEmitter<any>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
selectionModeChange: EventEmitter<string>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
showFirstSubmenuModeChange: EventEmitter<string | {
delay?: number | {
hide?: number;
show?: number;
};
name?: string;
}>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
showSubmenuModeChange: EventEmitter<string | {
delay?: number | {
hide?: number;
show?: number;
};
name?: string;
}>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
submenuDirectionChange: EventEmitter<string>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
tabIndexChange: EventEmitter<number>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
visibleChange: EventEmitter<boolean>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
widthChange: EventEmitter<number | Function | string>;
itemsChildren: QueryList<DxiItemComponent>;
constructor(elementRef: ElementRef, ngZone: NgZone, templateHost: DxTemplateHost, _watcherHelper: WatcherHelper, _idh: IterableDifferHelper, optionHost: NestedOptionHost, transferState: TransferState, platformId: any);
protected _createInstance(element: any, options: any): DxMenu;
ngOnDestroy(): void;
ngOnChanges(changes: SimpleChanges): void;
setupChanges(prop: string, changes: SimpleChanges): void;
ngDoCheck(): void;
_setOption(name: string, value: any): void;
}
export declare class DxMenuModule {
}