import { NativeElement } from "../core/Component"; import { QWidget, QWidgetSignals } from "./QWidget"; import { QAction } from "./QAction"; import { QPoint } from "../QtCore/QPoint"; import { QRect } from "../QtCore/QRect"; import { QIcon } from "../QtGui/QIcon"; /** > The QMenu class provides a menu widget for use in menu bars, context menus, and other popup menus. * **This class is a JS wrapper around Qt's [QMenu class](https://doc.qt.io/qt-5/qmenu.html)** ### Example ```javascript import { QMenu } from "@vixen-js/core"; const menu = new QMenu(); ``` */ export declare class QMenu extends QWidget { constructor(arg?: QWidget | NativeElement); clear(): void; addSeparator(): QAction; exec(point?: QPoint, action?: QAction | null): void; popup(point: QPoint, action?: QAction): void; actionAt(pt: QPoint): QAction; actionGeometry(act: QAction): QRect; activeAction(): QAction; addMenu(title: string): QMenu; addMenu(icon: QIcon, title: string): QMenu; addSection(text: string): QAction; addSection(icon: QIcon, text: string): QAction; defaultAction(): QAction; hideTearOffMenu(): void; insertMenu(before: QAction, menu: QMenu): QAction; insertSection(before: QAction, text: string): QAction; insertSection(before: QAction, icon: QIcon, text: string): QAction; insertSeparator(before: QAction): QAction; isEmpty(): boolean; isTearOffMenuVisible(): boolean; menuAction(): QAction; setActiveAction(act: QAction): void; setAsDockMenu(): void; setDefaultAction(act: QAction): void; showTearOffMenu(pos?: QPoint | null): void; icon(): QIcon; setIcon(icon: QIcon): void; separatorsCollapsible(): boolean; setSeparatorsCollapsible(collapse: boolean): void; isTearOffEnabled(): boolean; setTearOffEnabled(tearOffEnabled: boolean): void; toolTipsVisible(): boolean; setToolTipsVisible(visible: boolean): void; title(): string; setTitle(title: string): void; } export interface QMenuSignals extends QWidgetSignals { onAboutToHide: () => void; onAboutToShow: () => void; onHover: (action: NativeElement) => void; onTrigger: (action: NativeElement) => void; }