blockly > Flyout

Flyout-Klasse

Klasse für ein Flyout.

Unterschrift:

export declare abstract class Flyout extends DeleteArea implements IAutoHideable, IFlyout, IFocusableNode 

Erweitert: DeleteArea

Implementiert: IAutoHideable, IFlyout, IFocusableNode

Konstruktoren

Konstruktor Modifikatoren Beschreibung
(constructor)(workspaceOptions) Erstellt eine neue Instanz der Klasse Flyout.

Attribute

Attribut Modifikatoren Typ Beschreibung
autoClose boolean Wird das Flyout automatisch geschlossen, wenn ein Block erstellt wird?
Inhalte protected FlyoutItem[] Liste der Flyout-Elemente.
CORNER_RADIUS readonly Zahl Der Eckenradius des Flyout-Hintergrunds.
dragAngleRange_ protected Zahl Bereich eines Ziehwinkels aus einem Flyout, der als „in Richtung Arbeitsbereich ziehen“ betrachtet wird. Ziehbewegungen, die innerhalb der Grenzen dieses Winkelbereichs von der orthogonalen Linie zur Flyout-Kante liegen, werden als „Ziehbewegungen in Richtung des Arbeitsbereichs“ betrachtet.
GAP_X readonly Zahl
GAP_Y readonly Zahl
height_ protected Zahl Höhe des Flyouts.
inflaters protected Map<string, IFlyoutInflater> Ordnen Sie den Flyout-Inhaltstyp der entsprechenden Inflater-Klasse zu, die für das Erstellen konkreter Instanzen des Inhaltstyps verantwortlich ist.
MARGIN readonly Zahl
RTL boolean
SCROLLBAR_MARGIN readonly Zahl Abstand zwischen dem oberen und unteren Rand der Scrollleiste und dem Rand des Flyout-Hintergrunds.
svgBackground_ protected SVGPathElement | null Der Pfad um den Hintergrund des Flyouts, der mit einer Hintergrundfarbe gefüllt wird.
svgGroup_ protected SVGGElement | null Die SVG-Stammgruppe für die Schaltfläche oder das Label.
tabWidth_

protected

readonly

Zahl
toolboxPosition_ protected Zahl
width_ protected Zahl Breite des Flyouts.
workspace_ protected WorkspaceSvg

Methoden

Methode Modifikatoren Beschreibung
autoHide(onlyClosePopups) Das Flyout wird automatisch ausgeblendet, wenn es sich um ein automatisch schließendes Flyout handelt.
canBeFocused() Siehe IFocusableNode.canBeFocused.
createDom(tagName) Erstellt das DOM des Flyouts. Muss nur einmal aufgerufen werden. Das Flyout kann entweder als eigenes SVG-Element oder als g-Element in einem separaten SVG-Element vorhanden sein.
dispose() Dieses Flyout schließen. Verknüpfung mit allen DOM-Elementen aufheben, um Speicherlecks zu vermeiden
getContents() Ruft die Liste der Elemente des aktuellen Flyouts ab.
getFlyoutScale() Ruft die Skalierung (Zoomstufe) des Flyouts ab. Standardmäßig entspricht dies der Zielskalierung des Arbeitsbereichs, kann aber überschrieben werden.
getFocusableElement() Siehe IFocusableNode.getFocusableElement.
getFocusableTree() Weitere Informationen finden Sie unter IFocusableNode.getFocusableTree.
getHeight() Ruft die Höhe des Flyouts ab.
getInflaterForType(type) protected Gibt den Inflater zurück, der für die Erstellung von Elementen des angegebenen Typs verantwortlich ist.
getNestedTrees() Weitere Informationen finden Sie unter IFocusableNode.getNestedTrees.
getRestoredFocusableNode(_previousNode) Siehe IFocusableNode.getRestoredFocusableNode.
getRootFocusableNode() Siehe IFocusableNode.getRootFocusableNode.
getTargetWorkspace() Rufen Sie den Zielarbeitsbereich im Flyout auf.
getWidth() Ruft die Breite des Flyouts ab.
getWorkspace() Rufen Sie den Arbeitsbereich im Flyout auf.
getX() abstract Berechnet die X-Koordinate für die Flyout-Position.
getY() abstract Berechnet die Y-Koordinate für die Flyout-Position.
hide() Blenden Sie das Flyout aus und leeren Sie es.
init(targetWorkspace) Initialisiert das Flyout.
isDragTowardWorkspace(currentDragDeltaXY) abstract Ermitteln, ob ein Drag-Delta in Richtung des Arbeitsbereichs erfolgt, basierend auf der Position und Ausrichtung des Flyouts. Damit wird in determineDragIntention_ festgelegt, ob ein neuer Block erstellt oder das Flyout gescrollt werden soll.
isVisible() Ist das Flyout sichtbar?
layout_(contents)

protected

abstract

Ordnen Sie die Elemente im Flyout an.
lookUpFocusableNode(_id) Siehe IFocusableNode.lookUpFocusableNode.
normalizeSeparators(contents) protected

Aktualisiert und gibt die angegebene Liste der Flyout-Inhalte zurück, um Trennzeichen nach Bedarf zu reduzieren.

Wenn mehrere Trennzeichen nacheinander vorkommen, hat das letzte Trennzeichen Vorrang und die vorherigen Trennzeichen in der Gruppe werden entfernt.

onNodeBlur() Weitere Informationen finden Sie unter IFocusableNode.onNodeBlur.
onNodeFocus() Weitere Informationen finden Sie unter IFocusableNode.onNodeFocus.
onTreeBlur(_nextTree) Weitere Informationen finden Sie unter IFocusableNode.onTreeBlur.
onTreeFocus(_node, _previousTree) Siehe IFocusableTree.onTreeFocus.
position() abstract Positionieren Sie das Flyout.
positionAt_(width, height, x, y) protected Aktualisieren Sie die Ansicht basierend auf den in „position()“ berechneten Koordinaten.
reflow() Inhalte des Flyouts dynamisch umbrechen.
reflowInternal_()

protected

abstract

Berechne die Grenzen des Flyouts. Bei RTL: Elemente rechtsbündig anordnen.
scrollToStart() abstract Scrollt das Flyout zum Anfang des Inhalts.
serializeBlock(block) protected Einen Block in JSON serialisieren.
setAutoClose(autoClose) Legt fest, ob dieses Flyout automatisch geschlossen wird, wenn Blöcke herausgezogen werden, auf den Arbeitsbereich geklickt wird usw.
setContainerVisible(visible) Legen Sie fest, ob der Container dieses Flyouts sichtbar ist.
setContents(contents) Speichern Sie die Liste der Elemente im Flyout.
setMetrics_(xyRatio)

protected

abstract

Legt die Übersetzung des Flyouts so fest, dass sie mit den Scrollbalken übereinstimmt.
setVisible(visible) Legt fest, ob das Flyout sichtbar ist. Ein Wert von „true“ bedeutet nicht unbedingt, dass das Flyout angezeigt wird. Möglicherweise ist sie ausgeblendet, weil ihr Container ausgeblendet ist.
show(flyoutDef) Flyout anzeigen und mit Daten füllen
wheel_(e)

protected

abstract

Scrollen Sie im Flyout.