BlockDragger-Klasse
Klasse für einen Blockzieher. Dabei werden Blöcke im Arbeitsbereich verschoben, wenn sie durch eine Maus oder Berührung gezogen werden.
Unterschrift:
export declare class BlockDragger implements IBlockDragger
Implementiert: IBlockDragger
Konstruktoren
Konstruktor | Modifikatoren | Beschreibung |
---|---|---|
(Konstruktor)(Block, Arbeitsbereich) | Erstellt eine neue Instanz der BlockDragger -Klasse |
Attribute
Attribut | Modifikatoren | Typ | Beschreibung |
---|---|---|---|
draggedConnectionManager_ | protected |
MarkerMarkerManager | |
draggingBlock_ | protected |
BlockSvg | Der oberste Block im Stack, der verschoben wird. |
dragIconData_ | protected |
SymbolPositionsdaten[] | |
startXY_ | protected |
Koordinaten | |
Arbeitsbereich | protected |
Workspace-SVG-Dateien | Der Arbeitsbereich, in den der Block gezogen wird. |
würdeDeleteBlock_ | protected |
boolean | Gibt an, ob der Block sofort gelöscht werden soll. |
Methoden
Methode | Modifikatoren | Beschreibung |
---|---|---|
disconnectBlock_(healStack, currentDragDeltaXY), | protected |
Hebt die Verbindung zum Block auf und verschiebt ihn an einen neuen Ort. |
drag(e, currentDragDeltaXY) | Führt einen Schritt des Block-Ziehens basierend auf dem angegebenen Ereignis aus. Aktualisieren Sie das Display entsprechend. | |
dragIcons_(dxy) | protected |
Verschiebe alle Symbole, die mit diesem Ziehen verbunden sind. |
endDrag(e, currentDragDeltaXY) | Beenden Sie das Ziehen eines Blocks und setzen Sie den Block wieder auf den Arbeitsbereich. | |
fireDragEndEvent_() | protected |
Lösen Sie ein UI-Ereignis nach dem Ziehen eines Blocks aus. |
fireDragStartEvent_() | protected |
Lösen Sie ein UI-Ereignis zu Beginn eines Block-Drag-Vorgangs. |
fireMoveEvent_() | protected |
Lösen Sie ein Verschieben-Ereignis am Ende eines Block-Ziehens aus. |
getInsertionMarkers() | Rufen Sie eine Liste der vorhandenen Einfügungsmarkierungen ab. Ziehen hat 0, 1 oder 2 Einfügemarken. | |
getNewLocationAfterDrag_(currentDragDeltaXY) | protected |
Berechnet das Drag-Delta und die neuen Standortwerte nach dem Ziehen eines Blocks. |
maybeDeleteBlock_() | protected |
Der Drag-Block kann gelöscht werden. Wenn this.wouldDeleteBlock_ nicht „true“ ist, wird die Blockierung nicht gelöscht. Dies sollte am Ende eines Block-Drag-Vorgangs aufgerufen werden. |
pixelsToWorkspaceUnits_(pixelCoord) | protected |
Ein Koordinatenobjekt von Pixeln in Arbeitsbereichseinheiten umwandeln, einschließlich Korrektur von mutatoren Arbeitsbereichen Diese Funktion berücksichtigt keine unterschiedlichen Ursprünge. Er skaliert einfach die x- und y-Werte der Eingabe. |
shouldTrennen_(HealStack) | protected |
Gibt an, ob die Blockierung des Blocks beim Ziehen verschoben werden soll. |
startDrag(currentDragDeltaXY, healStack): | Ziehen Sie einen Block. Dazu gehört auch das Verschieben auf die Oberfläche. | |
updateBlockAfterMove_(delta). | protected |
Aktualisiert die erforderlichen Informationen, um einen Block an einem bestimmten Ort zu platzieren. |
updateCursorDuringBlockDrag_() | protected |
Aktualisieren Sie den Cursor (und möglicherweise den Papierkorb), um anzugeben, ob der Drag-Block gelöscht werden soll, wenn er sofort losgelassen wird. |
updateToolboxStyle_(isEnd) | protected |
Fügt den Stil des Cursors für die Toolbox hinzu oder entfernt ihn. Damit wird der Cursor so geändert, dass ein x angezeigt wird, wenn ein delegierter Block über der Toolbox gehalten wird. |