import type { Class_DrawingArea } from './DrawingArea'; export declare class Class_DrawingAreaInteractions { private _ghost_link_source; private _ghost_link_target; private _starting_x_point; private _starting_y_point; private _place_line_flip; private _node_tool_armed; private _press_started_on_da; private _release_watcher; /** * Pose les écouteurs sur la zone de dessin. Les gestes d'édition (création de flux, sélection) * ne sont branchés qu'en mode éditable ; le zoom/pan l'est toujours. */ setEventsListeners(da: Class_DrawingArea): void; /** * Deal with simple left Mouse Button (LMB) click on given element */ private _eventSimpleLMBClick; /** * Deal with simple right Mouse Button (RMB) click on given element */ private _eventSimpleRMBClick; /** * #485 — Mémorise qu'un appui vient d'avoir lieu dans la zone de dessin, et arme un * guetteur de relâché au niveau du document pour désarmer quel que soit l'endroit où * le bouton est relâché. Le guetteur est posé sur le document de la DA (fenêtre fille * comprise, quand la zone de dessin est détachée) et se retire de lui-même. * * Ordre garanti : le `mouseup` remonte d'abord au groupe de dessin (`_eventReleasedClick`, * qui lit le drapeau) puis au document (ce guetteur, qui l'efface). */ private _armPressOnDrawingArea; /** * Define maintained left mouse button click for drawing area */ private _eventMaintainedClick; /** * Define released left mouse button click for drawing area */ private _eventReleasedClick; /** * os#1344 — double-clic sur la zone de dessin. Comportement HISTORIQUE conservé : * replier le rectangle de sélection. NOUVEAU : un double-clic sur le canvas VIDE * (fond ou grille, aucun élément sous le curseur) en mode sélection crée un nœud * standard au point cliqué — même fabrique que l'outil nœud (_createNodeAtPoint) — * avec le nom en édition inline immédiate. Un double-clic sur un ÉLÉMENT continue de * passer par le discriminateur de clic unique des éléments (édition de label…) : le * garde sur la cible DOM (#g_background) exclut tout ce qui n'est pas le fond. */ private _eventDoubleClick; /** * Outil « nœud » : pose un nœud centré sur le point donné, le sélectionne et ouvre * l'inspecteur, en une seule transition d'historique. `node` est réassignée par * `create` pour que l'undo qui suit un redo vise bien le nœud recréé (même schéma * que la création d'une zone de texte). Renvoie le nœud créé (os#1344 : le double-clic * sur canvas vide réutilise cette fabrique et enchaîne sur l'édition inline du nom). */ private _createNodeAtPoint; /** * Define event when mouse moves in drawing area */ private _eventMouseMove; /** * Define event when mouse scrolls in drawing area * Note : Under the hood, this calls eventZoom method throught da.zoomListener */ private _eventMouseScroll; }