rt-graphic-component/components/packages/Section/common/SectionDrawAssistant.d.ts
2024-01-09 14:11:27 +08:00

41 lines
1.7 KiB
TypeScript

import { GraphicDrawAssistant, GraphicInteractionPlugin, IDrawApp, IGraphicApp, JlGraphic, KeyListener, MenuItemOptions } from 'jl-graphic';
import { ISectionData, SectionTemplate } from './Section';
import { Point, Graphics, type FederatedMouseEvent, type IHitArea, type DisplayObject } from 'pixi.js';
import { Section } from '../bjrtss/Section';
export declare class SectionDraw extends GraphicDrawAssistant<SectionTemplate, ISectionData> {
points: Point[];
graphic: Graphics;
keyQListener: KeyListener;
keyZListener: KeyListener;
constructor(app: IDrawApp, template: SectionTemplate);
bind(): void;
unbind(): void;
onLeftDown(e: FederatedMouseEvent): void;
onLeftUp(e: FederatedMouseEvent): void;
onRightClick(): void;
onEsc(): void;
redraw(p: Point): void;
prepareData(data: ISectionData): boolean;
clearCache(): void;
}
export declare class SectionGraphicHitArea implements IHitArea {
section: Section;
constructor(section: Section);
contains(x: number, y: number): boolean;
}
export declare const addWaypointConfig: MenuItemOptions;
export declare const clearWaypointsConfig: MenuItemOptions;
export declare const splitSectionConfig: MenuItemOptions;
export declare class SectionPointEditPlugin extends GraphicInteractionPlugin<Section> {
static Name: string;
drawAssistant: SectionDraw;
constructor(app: IGraphicApp, da: SectionDraw);
static init(app: IGraphicApp, da: SectionDraw): SectionPointEditPlugin;
filter(...grahpics: JlGraphic[]): Section[] | undefined;
bind(g: Section): void;
unbind(g: Section): void;
onContextMenu(e: FederatedMouseEvent): void;
onSelected(g: DisplayObject): void;
onUnselected(g: DisplayObject): void;
}