Preparing search index...

    Popup menu widget.

        const root = new Widget(parent);
    const layout = new BoxLayout();
    layout.setDirection(Direction.TopToBottom);
    layout.spacing = 8;
    root.layout = layout;

    const status = new Label(root);
    status.text = 'Right-click the button for a menu';
    status.fontRole = FontRole.Title;
    layout.addWidget(status);

    const btn = new PushButton(root);
    btn.text = 'Show Menu';
    layout.addWidget(btn);

    // Create a popup Menu
    const menu = new Menu(root);

    const newAction = new Action(root);
    newAction.text = 'New File';
    const c1 = newAction.onTrigger.connect(() => {
    status.text = 'Action: New File';
    console.log('Menu action: New File');
    });
    this.connections.push(c1);
    menu.addAction(newAction);

    const openAction = new Action(root);
    openAction.text = 'Open File';
    const c2 = openAction.onTrigger.connect(() => {
    status.text = 'Action: Open File';
    console.log('Menu action: Open File');
    });
    this.connections.push(c2);
    menu.addAction(openAction);

    menu.addSeparator();

    // Add a submenu
    const exportMenu = menu.addMenu('Export');
    const pngAction = new Action(root);
    pngAction.text = 'As PNG';
    const c3 = pngAction.onTrigger.connect(() => {
    status.text = 'Action: Export as PNG';
    console.log('Menu action: Export as PNG');
    });
    this.connections.push(c3);
    exportMenu.addAction(pngAction);

    // Show menu on button click
    const c4 = btn.onClick.connect(() => {
    menu.popup(btn);
    });
    this.connections.push(c4);

    Hierarchy (View Summary)

    Index

    Constructors

    Properties

    autoFillBackground: boolean

    Whether the widget automatically fills its background before painting.

    backgroundRole: ColorRole

    The color role used for the widget's background.

    className: string
    contextMenuPolicy: ContextMenuPolicy

    Controls how the widget handles context menu requests.

    devicePixelRatio: number

    The ratio between physical and logical pixels for the widget's display.

    enabled: boolean

    Whether the widget is interactive and accepts user input.

    fontRole: FontRole

    The font role applied to the widget's text rendering.

    foregroundRole: ColorRole

    The color role used for the widget's foreground elements.

    hasFocus: boolean
    height: number

    Current height of the widget in pixels.

    hidden: boolean

    Whether the widget is hidden from view.

    isNull: boolean

    True if the underlying native widget object has been destroyed.

    isTransparentForMouseEvents: boolean
    layout: Layout

    The layout manager assigned to arrange child widgets.

    objectName: string
    onClose: signal1<CloseEvent, void>

    Signal emitted when the widget is closed.

    onFocusIn: signal0<void>
    onFocusOut: signal0<void>
    onHide: signal0<void>

    Signal emitted when the widget becomes hidden.

    onKeyPress: signal1<number, void>

    Signal emitted when a key is pressed while the widget has focus.

    onMouseDoubleClick: signal1<MouseEvent, void>

    Signal emitted when the user double-clicks on the widget.

    onMouseMove: signal1<MouseEvent, void>

    Signal emitted when the mouse moves over the widget.

    onMousePress: signal1<MouseEvent, void>

    Signal emitted when a mouse button is pressed on the widget.

    onMouseRelease: signal1<MouseEvent, void>

    Signal emitted when a mouse button is released on the widget.

    onResize: signal2<number, number, void>

    Signal emitted when the widget is resized.

    onShow: signal0<void>

    Signal emitted when the widget becomes visible.

    toolTip: string

    Text displayed in a tooltip when the user hovers over the widget.

    visible: boolean

    Whether the widget is currently visible.

    width: number

    Current width of the widget in pixels.

    windowTitle: string

    Title text displayed in the widget's title bar when shown as a window.

    Methods

    • Brings the widget's top-level window to the foreground and gives it focus.

      Returns void

    • Resizes the widget to fit its contents based on the size hint.

      Returns void

    • Blocks or unblocks signal emission from the widget.

      Parameters

      • blocked: boolean

      Returns void

    • Closes the widget, hiding it and emitting the onClose signal.

      Returns void

    • Schedules the widget for deletion after the current event loop iteration.

      Returns void

    • Returns true if the object is of the specified type.

      Parameters

      • type: string

      Returns boolean

    • Moves the widget to the specified position.

      Parameters

      • ax: number
      • ay: number

      Returns void

    • Display the menu at the target widget's location.

      Parameters

      Returns void

    • Raises the widget to the top of the parent widget's stack.

      Returns void

    • Resizes the widget to the specified width and height.

      Parameters

      • width: number
      • height: number

      Returns void

    • Sets the margins around the widget's contents.

      Parameters

      • left: number
      • top: number
      • right: number
      • bottom: number

      Returns void

    • Locks the widget's height to the given value, preventing resizing.

      Parameters

      • height: number

      Returns void

    • Locks the widget's width to the given value, preventing resizing.

      Parameters

      • width: number

      Returns void

    • Gives keyboard input focus to the widget.

      Returns void

    • Sets the maximum height the widget can be resized to.

      Parameters

      • height: number

      Returns void

    • Sets the maximum width the widget can be resized to.

      Parameters

      • width: number

      Returns void

    • Sets the minimum height the widget must maintain.

      Parameters

      • height: number

      Returns void

    • Sets the minimum width the widget must maintain.

      Parameters

      • width: number

      Returns void

    • Parameters

      • name: string
      • value: any

      Returns boolean

    • Marks property changes on this widget as undoable via the undo stack.

      Parameters

      • undoable: boolean

      Returns void

    • Marks property changes on this widget and all its children as undoable.

      Parameters

      • undoable: boolean

      Returns void

    • Makes the widget visible.

      Returns void

    • Resets the cursor to the parent widget's cursor.

      Returns void