@girs/gnome-shell
Version:
GJS TypeScript type definitions for GNOME Shell Extensions
70 lines (54 loc) • 2.35 kB
TypeScript
// https://gitlab.gnome.org/GNOME/gnome-shell/-/blob/main/js/ui/panelMenu.js
import type St from '@girs/st-16';
import Clutter from '@girs/clutter-16';
import type { PopupMenu, PopupDummyMenu } from './popupMenu.js';
/**
* @see https://gitlab.gnome.org/GNOME/gnome-shell/-/blob/main/js/ui/panelMenu.js#L11
* @version 48
*/
declare namespace ButtonBox {
interface ConstructorProps extends St.Widget.ConstructorProps {}
}
/**
* @see https://gitlab.gnome.org/GNOME/gnome-shell/-/blob/main/js/ui/panelMenu.js#L12
* @version 48
*/
declare class ButtonBox extends St.Widget {
constructor(params?: Partial<ButtonBox.ConstructorProps>);
/** @hidden Defined to resolve version conflicts */
_init(params: Partial<ButtonBox.ConstructorProps>): void;
container: St.Bin;
public vfunc_get_preferred_width(_forHeight: number): [number, number];
public vfunc_get_preferred_height(_forWidth: number): [number, number];
public vfunc_allocate(box: Clutter.ActorBox): void;
}
/**
* @see https://gitlab.gnome.org/GNOME/gnome-shell/-/blob/main/js/ui/panelMenu.js#L95
* @version 48
*/
export namespace Button {
interface ConstructorProps extends ButtonBox.ConstructorProps {}
}
/**
* @see https://gitlab.gnome.org/GNOME/gnome-shell/-/blob/main/js/ui/panelMenu.js#L97
* @version 48
*/
export class Button extends ButtonBox {
menu: PopupMenu | PopupDummyMenu;
constructor(menuAlignment: number, nameText: string, dontCreateMenu?: boolean);
/** @hidden Defined to resolve version conflicts */
_init(params?: Partial<ButtonBox.ConstructorProps>): void;
_init(menuAlignment: number, nameText: string, dontCreateMenu?: boolean): void;
setSensitive(sensitive: boolean): void;
setMenu(menu: PopupMenu | PopupDummyMenu): void;
public vfunc_event(event: Clutter.Event): boolean;
public vfunc_hide(): void;
// General signal handler methods
connect(sigName: string, callback: (...args: any[]) => void): number;
connect_after(sigName: string, callback: (...args: any[]) => void): number;
emit(sigName: string, ...args: any[]): void;
disconnect(id: number): void;
// Specific signal handler methods
connect(sigName: 'menu-set', callback: ($obj: Button) => void): number;
connect_after(sigName: 'menu-set', callback: ($obj: Button) => void): number;
}