dragService.d.ts 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. import { BeanStub } from "../context/beanStub";
  2. /** Adds drag listening onto an element. In ag-Grid this is used twice, first is resizing columns,
  3. * second is moving the columns and column groups around (ie the 'drag' part of Drag and Drop. */
  4. export declare class DragService extends BeanStub {
  5. private loggerFactory;
  6. private gridOptionsWrapper;
  7. private columnApi;
  8. private gridApi;
  9. private currentDragParams;
  10. private dragging;
  11. private mouseStartEvent;
  12. private touchLastTime;
  13. private touchStart;
  14. private logger;
  15. private dragEndFunctions;
  16. private dragSources;
  17. private init;
  18. private removeAllListeners;
  19. private removeListener;
  20. removeDragSource(params: DragListenerParams): void;
  21. private setNoSelectToBody;
  22. addDragSource(params: DragListenerParams, includeTouch?: boolean): void;
  23. private onTouchStart;
  24. private onMouseDown;
  25. private addTemporaryEvents;
  26. private isEventNearStartEvent;
  27. private getFirstActiveTouch;
  28. private onCommonMove;
  29. private onTouchMove;
  30. private onMouseMove;
  31. onTouchUp(touchEvent: TouchEvent, el: HTMLElement): void;
  32. onMouseUp(mouseEvent: MouseEvent, el: HTMLElement): void;
  33. onUpCommon(eventOrTouch: MouseEvent | Touch, el: HTMLElement): void;
  34. }
  35. export interface DragListenerParams {
  36. /** After how many pixels of dragging should the drag operation start. Default is 4px. */
  37. dragStartPixels?: number;
  38. /** Dom element to add the drag handling to */
  39. eElement: HTMLElement;
  40. /** Some places may wish to ignore certain events, eg range selection ignores shift clicks */
  41. skipMouseEvent?: (mouseEvent: MouseEvent) => boolean;
  42. /** Callback for drag starting */
  43. onDragStart: (mouseEvent: MouseEvent | Touch) => void;
  44. /** Callback for drag stopping */
  45. onDragStop: (mouseEvent: MouseEvent | Touch) => void;
  46. /** Callback for mouse move while dragging */
  47. onDragging: (mouseEvent: MouseEvent | Touch) => void;
  48. }