UNPKG

tianditu-types

Version:
77 lines (58 loc) 2.15 kB
declare namespace T { class ContextMenu { /** * 创建一个右键菜单实例 */ constructor(opts: ContextMenuOptions); /** 添加菜单项 */ addItem(item: MenuItem): void; /** 返回指定索引位置的菜单项,第一个菜单项的索引为0 */ getItem(index: number): MenuItem; /** 移除菜单项 */ removeItem(item: MenuItem): void; /** 添加分隔符 */ addSeparator(): void; /** 移除指定索引位置的分隔符,第一个分隔符的索引为0 */ removeSeparator(index: number): void; /** 返回所有的菜单项 */ getItems(): MenuItem[]; /** 返回所有分隔符 */ getAllSeparator(): MenuItem[]; /** 添加事件监听 */ addEventListener<E extends keyof ContextMenuEvents>(event: E, handler: MapEvents[E]): void; /** 移除事件监听 */ removeEventListener<E extends keyof ContextMenuEvents>(event: E, handler: MapEvents[E]): void; } interface ContextMenuOptions { /** 菜单宽度 */ width?: number; } interface ContextMenuEvents { /** 左键单击地图时触发此事件 */ open(e: ContextMenuEvent & { point: Point }): void; /** 鼠标双击地图时会触发此事件 */ close(e: ContextMenuEvent): void; } interface ContextMenuEvent { /** 事件类型 */ type: string; /** 地图对象 */ target: ContextMenu; } class MenuItem { readonly isable: boolean readonly text: string /** * 创建一个右键菜单实例 * @param text 菜单项显示的文本 * @param callback 菜单项点击时的回调函数 */ constructor(text: string, callback: () => void); /** 设置菜单项显示的文本 */ setText(text: string): void; /** 启用菜单项 */ enable(): void; /** 禁用菜单项 */ disable(): void; } }