/**----------------------------------------------------------------------------------------- * Copyright © 2025 Progress Software Corporation. All rights reserved. * Licensed under commercial license. See LICENSE.md in the project root for more information *-------------------------------------------------------------------------------------------*/ import { TemplateRef, ElementRef, QueryList, EventEmitter, ViewContainerRef, NgZone, Renderer2, SimpleChanges, ChangeDetectorRef } from '@angular/core'; import { PopupService, PopupRef } from '@progress/kendo-angular-popup'; import { ResizeSensorComponent } from '@progress/kendo-angular-common'; import { LocalizationService } from '@progress/kendo-angular-l10n'; import { RefreshService } from './refresh.service'; import { NavigationService } from './navigation.service'; import { PopupSettings } from './popup-settings'; import { ToolBarToolComponent } from './tools/toolbar-tool.component'; import { ToolbarSize } from './common/size'; import { PreventableEvent } from './common/preventable-event'; import { Direction } from './direction'; import { RendererClickPayload } from './common/renderer-click'; import { SVGIcon } from '@progress/kendo-svg-icons'; import { ToolbarToolsService } from './tools/tools.service'; import { ToolbarFillMode } from './common/fillmode'; import { OverflowMode } from './common/overflow-mode'; import { ToolbarOverflowSettings } from './common/overflow-settings'; import { ToolbarScrollButtonsPosition } from './common/scroll-buttons'; import { ScrollService } from './scroll.service'; import { DisplayMode } from './display-mode'; import * as i0 from "@angular/core"; /** * Represents the [Kendo UI ToolBar component for Angular]({% slug overview_toolbar %}). * * @example * ```html * * * * ``` * * @remarks * Supported children components are: * {@link ToolBarButtonComponent}, * {@link ToolBarButtonGroupComponent}, * {@link ToolBarDropDownButtonComponent}, * {@link ToolBarSplitButtonComponent}, * {@link ToolBarSeparatorComponent}, * {@link ToolBarSpacerComponent}, * {@link ToolbarCustomMessagesComponent}, * {@link ToolBarToolComponent}, * {@link EditorColorPickerComponent}, * {@link EditorFontFamilyComponent}, * {@link EditorFontSizeComponent}, * {@link EditorFormatComponent}, * {@link EditorInsertTableButtonComponent}. */ export declare class ToolBarComponent { localization: LocalizationService; private popupService; refreshService: RefreshService; private navigationService; element: ElementRef; private zone; private renderer; private _cdr; private toolsService; private scrollService; get overflowClass(): string; /** * Sets the overflow mode for the ToolBar. * Use this property to control how tools render when their total size is greater than the ToolBar container. * @default false */ set overflow(overflow: boolean | OverflowMode | ToolbarOverflowSettings); get overflow(): boolean | OverflowMode | ToolbarOverflowSettings; get showScrollButtons(): boolean; /** * @hidden */ set resizable(value: boolean); get resizable(): boolean; /** * @hidden */ get hasScrollButtons(): { visible: boolean; position: ToolbarScrollButtonsPosition; }; /** * @hidden */ get isScrollMode(): boolean; /** * @hidden */ get showMenu(): boolean; /** * @hidden */ get overflowEnabled(): boolean; /** * Configures the popup for the ToolBar overflow button. * Use this property to customize the overflow popup appearance and behavior * ([see example](slug:responsive_toolbar#customizing-the-popup)). */ set popupSettings(settings: PopupSettings); get popupSettings(): PopupSettings; /** * Sets the fill mode for the ToolBar. * This property controls the background and border styles of the ToolBar * ([see example](slug:appearance_toolbar#toc-fill-mode)). * @default 'solid' */ set fillMode(fillMode: ToolbarFillMode); get fillMode(): ToolbarFillMode; /** * Sets the `tabindex` attribute of the ToolBar. * Use this property to control the tab order of the ToolBar component. * @default 0 */ tabindex: number; /** * Sets the size for all ToolBar elements. * Use this property to control the padding of the ToolBar elements. * @default 'medium' */ set size(size: ToolbarSize); get size(): ToolbarSize; /** * @hidden */ set tabIndex(tabIndex: number); get tabIndex(): number; /** * Sets the icon visibility for all tools in the ToolBar. * You can override this property for each tool using the `showIcon` property of the tool. * @default 'always' */ set showIcon(value: DisplayMode | boolean); /** * Sets the text visibility for all tools in the ToolBar. * You can override this property for each tool using the `showText` property of the tool. * @default 'always' */ set showText(value: DisplayMode | boolean); /** * Emits when the overflow popup of the ToolBar opens. */ open: EventEmitter; /** * Emits when the overflow popup of the ToolBar closes. */ close: EventEmitter; allTools: QueryList; overflowButton: ElementRef; popupTemplate: TemplateRef; popupSectionTemplate: TemplateRef; scrollContainer: ElementRef; resizeSensor: ResizeSensorComponent; container: ViewContainerRef; prevScrollButton: ElementRef; nextScrollButton: ElementRef; startButtonGroup: ElementRef; endButtonGroup: ElementRef; scrollSeparator: ElementRef; popupRef: PopupRef; direction: Direction; get appendTo(): ViewContainerRef; set popupOpen(open: boolean); get popupOpen(): boolean; /** * @hidden */ prevButtonIcon: SVGIcon; /** * @hidden */ nextButtonIcon: SVGIcon; /** * @hidden */ propertyChange: EventEmitter<{ property: string; value: any; }>; hostClass: boolean; get scrollableClass(): boolean; get sectionClass(): boolean; private _overflow; private _popupSettings; private cachedOverflowAnchorWidth; private _open; private toolbarKeydownListener; private overflowKeydownListener; private sectionKeydownListener; private cancelRenderedToolsSubscription$; private cachedGap; private _size; private _fillMode; private _showText; private _showIcon; private overflowButtonClickedTime; private showAutoButtons; private scrollButtonStateChangeSub; private scrollContainerScrollSub; /** * @hidden */ get normalizedOverflow(): ToolbarOverflowSettings; private subscriptions; private popupSubs; private focusedByPointer; /** * @hidden */ onFocus(ev: any): void; /** * @hidden */ onFocusOut(event: any): void; role: string; get getDir(): string; get resizableClass(): boolean; constructor(localization: LocalizationService, popupService: PopupService, refreshService: RefreshService, navigationService: NavigationService, element: ElementRef, zone: NgZone, renderer: Renderer2, _cdr: ChangeDetectorRef, toolsService: ToolbarToolsService, scrollService: ScrollService); ngAfterContentInit(): void; ngAfterViewInit(): void; ngOnInit(): void; ngOnChanges(changes: SimpleChanges): void; ngOnDestroy(): void; /** * @hidden */ showOverflowSeparator: boolean; /** * @hidden */ get moreToolsTitle(): string; /** * @hidden */ get cdr(): ChangeDetectorRef; /** * @hidden */ get sectionSizeClass(): string; /** * @hidden */ getScrollButtonTitle(buttonType: string): string; /** * @hidden */ scrollTools(dir: string): void; /** * @hidden */ onRendererClick(data: RendererClickPayload): void; /** * @hidden */ overflowButtonIcon(iconType: string): any; /** * @hidden */ showPopup(): void; /** * Toggles the visibility of the overflow popup. */ toggle(popupOpen?: boolean): void; /** * @hidden */ onResize(): void; /** * @hidden */ onPopupOpen(): void; /** * @hidden */ onPopupClose(): void; /** * @hidden */ overflowBtnId: string; /** * @hidden */ popupId: string; private displayAnchor; private get popupWidth(); private get popupHeight(); private get overflowAnchorWidth(); private get gap(); private get childrenWidth(); get visibleTools(): ToolBarToolComponent[]; get overflowTools(): ToolBarToolComponent[]; private shrink; private stretch; private hideLastVisibleTool; private showFirstHiddenTool; private setPopupContentDimensions; private destroyPopup; private handleClasses; private normalizePopupClasses; private setScrollableOverlayClasses; private handleScrollModeUpdates; private removeSubscriptions; private normalizeDisplayValue; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }