41 lines
1.7 KiB
TypeScript
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;
|
|
}
|