@catull/igniteui-angular
Version:
Ignite UI for Angular is a dependency-free Angular toolkit for building modern web apps
226 lines (225 loc) • 7.63 kB
TypeScript
import { ChangeDetectorRef, TemplateRef } from '@angular/core';
import { IDisplayDensityOptions, DisplayDensityBase } from '../../core/displayDensity';
import { IgxCsvExporterService, IgxExcelExporterService } from '../../services/index';
import { GridBaseAPIService } from '../api.service';
import { IgxButtonDirective } from '../../directives/button/button.directive';
import { IgxGridBaseDirective } from '../grid-base.directive';
import { IgxDropDownComponent } from '../../drop-down/drop-down.component';
import { IgxColumnHidingComponent } from '../hiding/column-hiding.component';
import { IgxColumnPinningComponent } from '../pinning/column-pinning.component';
import { GridType } from '../common/grid.interface';
/**
* This class encapsulates the Toolbar's logic and is internally used by
* the `IgxGridComponent`, `IgxTreeGridComponent` and `IgxHierarchicalGridComponent`.
*/
export declare class IgxGridToolbarComponent extends DisplayDensityBase {
gridAPI: GridBaseAPIService<IgxGridBaseDirective & GridType>;
cdr: ChangeDetectorRef;
excelExporter: IgxExcelExporterService;
csvExporter: IgxCsvExporterService;
protected _displayDensityOptions: IDisplayDensityOptions;
/**
* @hidden
*/
gridID: string;
/**
* Gets the default text shown in the filtering box.
* ```typescript
* const filterPrompt = this.grid.toolbar.filterColumnsPrompt;
* ```
*/
/**
* Sets the default text shown in the filtering box.
* ```typescript
* this.grid.toolbar.filterColumnsPrompt('Filter columns ...');
* ```
*/
filterColumnsPrompt: string;
private _filterColumnsPrompt;
/**
* Gets the height for the `IgxGridToolbarComponent`'s drop down panels.
* ```typescript
* const dropdownHeight = this.grid.toolbar.defaultDropDownsMaxHeight;
* ```
*/
readonly defaultDropDownsMaxHeight: string;
/**
* Provides a reference to the `IgxDropDownComponent` of the Column Hiding UI.
* ```typescript
* const dropdownHiding = this.grid.toolbar.columnHidingDropdown;
* ```
*/
columnHidingDropdown: IgxDropDownComponent;
/**
* Provides a reference to the `IgxColumnHidingComponent`.
* ```typescript
* const hidingUI = this.grid.toolbar.columnHidingUI;
* ```
*/
columnHidingUI: IgxColumnHidingComponent;
/**
* Provides a reference to the Column Hiding button.
* ```typescript
* const hidingButton = this.grid.toolbar.columnHidingButton;
* ```
*/
columnHidingButton: IgxButtonDirective;
/**
* Provides a reference to the `IgxDropDownComponent` of the Export button.
* ```typescript
* const exportDropdown = this.grid.toolbar.exportDropdown;
* ```
*/
exportDropdown: IgxDropDownComponent;
/**
* Provides a reference to the Export button.
* ```typescript
* const exportBtn = this.grid.toolbar.exportButton;
* ```
*/
exportButton: IgxButtonDirective;
/**
* Provides a reference to the `IgxDropDownComponent` of the Column Pinning UI.
* ```typescript
* const dropdownPinning = this.grid.toolbar.columnPinningDropdown;
* ```
*/
columnPinningDropdown: IgxDropDownComponent;
/**
* Provides a reference to the `IgxColumnPinningComponent`.
* ```typescript
* const pinningUI = this.grid.toolbar.columnPinningDropdown;
* ```
*/
columnPinningUI: IgxColumnPinningComponent;
/**
* Provides a reference to the Column Pinning button.
* ```typescript
* const pinningButton = this.grid.toolbar.columnPinningButton;
* ```
*/
columnPinningButton: IgxButtonDirective;
/**
* Returns a reference to the `IgxGridComponent` component, hosting the `IgxGridToolbarComponent`.
* ```typescript
* const grid = this.igxGrid1.toolbar.grid;
* ```
*/
readonly grid: IgxGridBaseDirective;
/**
* Returns whether the `IgxGridComponent` renders an export button.
* ```typescript
* const exportButton = this.igxGrid1.toolbar.shouldShowExportButton;
* ```
*/
readonly shouldShowExportButton: boolean;
/**
* Returns whether the `IgxGridComponent` renders an Excel export button.
* ```typescript
* const exportExcelButton = this.igxGrid1.toolbar.shouldShowExportExcelButton;
* ```
*/
readonly shouldShowExportExcelButton: boolean;
/**
* Returns whether the `IgxGridComponent` renders an CSV export button.
* ```typescript
* const exportCSVButton = this.igxGrid1.toolbar.shouldShowExportCsvButton;
* ```
*/
readonly shouldShowExportCsvButton: boolean;
/**
* Returns how many columns are pinned.
* ```typescript
* const pinnedCount = this.igxGrid1.toolbar.pinnedColumnsCount;
* ```
*/
readonly pinnedColumnsCount: number;
/**
* Returns the theme of the `IgxGridToolbarComponent`.
* ```typescript
* const toolbarTheme = this.grid.toolbar.hostClass;
* ```
*/
readonly hostClass: string;
constructor(gridAPI: GridBaseAPIService<IgxGridBaseDirective & GridType>, cdr: ChangeDetectorRef, excelExporter: IgxExcelExporterService, csvExporter: IgxCsvExporterService, _displayDensityOptions: IDisplayDensityOptions);
private _positionSettings;
private _overlaySettings;
/**
* Returns the title of `IgxGridToolbarComponent`.
* ```typescript
* const toolbarTitle = this.igxGrid1.toolbar.getTitle();
* ```
*/
getTitle(): string;
/**
* Returns the text of the export button of the `IgxGridToolbarComponent`.
* ```typescript
* const toolbarExportText = this.igxGrid1.toolbar.getTitle();
* ```
*/
getExportText(): string;
/**
* Returns the text of the Excel export button of the `IgxGridToolbarComponent`.
* ```typescript
* const toolbarExcelText = this.igxGrid1.toolbar.getExportExcelText();
* ```
*/
getExportExcelText(): string;
/**
* Returns the text of the CSV export button of the `IgxGridToolbarComponent`.
* ```typescript
* const toolbarCSVText = this.igxGrid1.toolbar.getExportCsvText();
* ```
*/
getExportCsvText(): string;
/**
* Toggles the export button's dropdown menu.
* ```typescript
* this.igxGrid1.toolbar.exportClicked();
* ```
*/
exportClicked(): void;
/**
* Exports the grid to excel.
* ```typescript
* this.igxGrid1.toolbar.exportToExcelClicked();
* ```
*/
exportToExcelClicked(): void;
/**
* Exports the grid to CSV.
* ```typescript
* this.igxGrid1.toolbar.exportToCsvClicked();
* ```
*/
exportToCsvClicked(): void;
private performExport;
/**
* Toggles the Column Hiding UI.
* ```typescript
* this.grid1.toolbar.toggleColumnHidingUI();
* ```
*/
toggleColumnHidingUI(): void;
/**
* Toggles the Column Pinning UI.
* ```typescript
* this.grid1.toolbar.toggleColumnPinningUI();
* ```
*/
toggleColumnPinningUI(): void;
/**
* @hidden @internal
*/
showAdvancedFilteringUI(): void;
/**
* Returns the `context` object which represents the `template context` binding into the
* `toolbar custom container` by providing references to the parent IgxGird and the toolbar itself.
* ```typescript
* const context = this.igxGrid.toolbar.context;
* ```
*/
readonly context: any;
/** @hidden */
readonly customContentTemplate: TemplateRef<any>;
}