vertices.d.ts 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. import { Point } from '@antv/x6-geometry';
  2. import { Dom, ModifierKey } from '@antv/x6-common';
  3. import { View } from '../../view/view';
  4. import { ToolsView } from '../../view/tool';
  5. import { EdgeView } from '../../view/edge';
  6. import { Edge } from '../../model/edge';
  7. import { Attr } from '../attr';
  8. import { Graph } from '../../graph';
  9. export declare class Vertices extends ToolsView.ToolItem<EdgeView, Vertices.Options> {
  10. protected handles: Vertices.Handle[];
  11. protected get vertices(): any[];
  12. protected onRender(): this;
  13. update(): this;
  14. protected resetHandles(): void;
  15. protected renderHandles(): void;
  16. protected updateHandles(): void;
  17. protected updatePath(): void;
  18. protected startHandleListening(handle: Vertices.Handle): void;
  19. protected stopHandleListening(handle: Vertices.Handle): void;
  20. protected getNeighborPoints(index: number): {
  21. prev: Point;
  22. next: Point;
  23. };
  24. protected getMouseEventArgs<T extends Dom.EventObject>(evt: T): {
  25. e: T;
  26. x: number;
  27. y: number;
  28. };
  29. protected onHandleChange({ e }: Vertices.Handle.EventArgs['change']): void;
  30. protected onHandleChanging({ handle, e, }: Vertices.Handle.EventArgs['changing']): void;
  31. protected stopBatch(vertexAdded: boolean): void;
  32. protected onHandleChanged({ e }: Vertices.Handle.EventArgs['changed']): void;
  33. protected snapVertex(vertex: Point.PointLike, index: number): void;
  34. protected onHandleRemove({ handle, e }: Vertices.Handle.EventArgs['remove']): void;
  35. protected allowAddVertex(e: Dom.MouseDownEvent): boolean | undefined;
  36. protected onPathMouseDown(evt: Dom.MouseDownEvent): void;
  37. protected onRemove(): void;
  38. }
  39. export declare namespace Vertices {
  40. interface Options extends ToolsView.ToolItem.Options {
  41. snapRadius?: number;
  42. addable?: boolean;
  43. removable?: boolean;
  44. removeRedundancies?: boolean;
  45. stopPropagation?: boolean;
  46. modifiers?: string | ModifierKey[];
  47. attrs?: Attr.SimpleAttrs | ((handle: Handle) => Attr.SimpleAttrs);
  48. createHandle?: (options: Handle.Options) => Handle;
  49. processHandle?: (handle: Handle) => void;
  50. onChanged?: (options: {
  51. edge: Edge;
  52. edgeView: EdgeView;
  53. }) => void;
  54. }
  55. }
  56. export declare namespace Vertices {
  57. class Handle extends View<Handle.EventArgs> {
  58. readonly options: Handle.Options;
  59. protected get graph(): Graph;
  60. constructor(options: Handle.Options);
  61. render(): void;
  62. updatePosition(x: number, y: number): void;
  63. onMouseDown(evt: Dom.MouseDownEvent): void;
  64. protected onMouseMove(evt: Dom.MouseMoveEvent): void;
  65. protected onMouseUp(evt: Dom.MouseUpEvent): void;
  66. protected onDoubleClick(evt: Dom.DoubleClickEvent): void;
  67. }
  68. namespace Handle {
  69. interface Options {
  70. graph: Graph;
  71. index: number;
  72. guard: (evt: Dom.EventObject) => boolean;
  73. attrs: Attr.SimpleAttrs | ((handle: Handle) => Attr.SimpleAttrs);
  74. }
  75. interface EventArgs {
  76. change: {
  77. e: Dom.MouseDownEvent;
  78. handle: Handle;
  79. };
  80. changing: {
  81. e: Dom.MouseMoveEvent;
  82. handle: Handle;
  83. };
  84. changed: {
  85. e: Dom.MouseUpEvent;
  86. handle: Handle;
  87. };
  88. remove: {
  89. e: Dom.DoubleClickEvent;
  90. handle: Handle;
  91. };
  92. }
  93. }
  94. }
  95. export declare namespace Vertices {
  96. }