@adaptabletools/adaptable
Version:
Powerful data-agnostic HTML5 AG Grid extension which provides advanced, cutting-edge functionality to meet all DataGrid requirements
76 lines (75 loc) • 3.46 kB
TypeScript
import { AdaptableColumnMenuItemName, AdaptableIcon, AdaptableSystemColumnMenuItem, CustomColumnMenuContext, CustomColumnMenuItem, CustomGroupColumnMenuItem, MenuCategory } from '../types';
/**
* Provides run-time access to Column Menu
*/
export interface ColumnMenuApi {
/**
* Show the Column Menu
*/
showColumnMenu(columnKey: string): void;
/**
* Hide the Column Menu
*/
hideColumnMenu(columnKey: string): void;
/**
* Creates default menu structure; useful as final line in custom implementation
* @param context Current Menu Context
*/
createDefaultMenuStructure(context: CustomColumnMenuContext): any;
/**
* Gets all Menu Items in a given category
* @param category Category to filter on
* @param context Current Menu Context
*/
getColumnMenuItemsByCategory(category: MenuCategory, context: CustomColumnMenuContext): AdaptableSystemColumnMenuItem<AdaptableColumnMenuItemName>[];
/**
* Gets all Menu Items in given categories
* @param categories Categories to filter on
* @param context Current Menu Context
*/
getColumnMenuItemsByCategories(categories: MenuCategory[], context: CustomColumnMenuContext): AdaptableSystemColumnMenuItem<AdaptableColumnMenuItemName>[];
/**
* Returns the Menu Item with given name
* @param menuItemName Menu Item to filter on
* @param context Current Menu Context
*/
getColumnMenuItemByName(menuItemName: AdaptableColumnMenuItemName, context: CustomColumnMenuContext): AdaptableSystemColumnMenuItem<AdaptableColumnMenuItemName>;
/**
* Returns the Menu Items with given names
* @param menuItemNames Menu Items to filter on
* @param context Current Menu Context
*/
getColumnMenuItemsByNames(menuItemNames: AdaptableColumnMenuItemName[], context: CustomColumnMenuContext): AdaptableSystemColumnMenuItem<AdaptableColumnMenuItemName>[];
/**
* Returns Menu Item with given label
* @param label Label to filter on
* @param context Current Menu Context
*/
getColumnMenuItemByLabel(label: string, context: CustomColumnMenuContext): AdaptableSystemColumnMenuItem<AdaptableColumnMenuItemName>;
/**
* Returns Menu Items with given labels
* @param labels Labels to filter on
* @param context Current Menu Context
*/
getColumnMenuItemsByLabels(labels: string[], context: CustomColumnMenuContext): AdaptableSystemColumnMenuItem<AdaptableColumnMenuItemName>[];
/**
* Removes Menu Item with given name
* @param menuItemName name of Menu Item to remove
* @param context Current Menu Context
*/
removeAdaptableColumnMenuItemByName(menuItemName: AdaptableColumnMenuItemName, context: CustomColumnMenuContext): any;
/**
* Removes Menu Items with given names
* @param menuItemNames names of Menu Items to remove
* @param context Current Menu Context
*/
removeAdaptableColumnMenuItemsByNames(menuItemNames: AdaptableColumnMenuItemName[], context: CustomColumnMenuContext): any;
/**
* Creates a Group Menu Item
* @param label Label for Group
* @param subMenuItems Menu Items to place in Group
* @param disabled whether group is disabled
* @param icon icon for the Group Menu Item
*/
createGroupMenu(label: string, subMenuItems: CustomColumnMenuItem[], disabled?: boolean, icon?: AdaptableIcon): CustomGroupColumnMenuItem;
}