blockly > Flyout

Flyout-Kurs

Klasse für einen Flyout.

Unterschrift:

export declare abstract class Flyout extends DeleteArea implements IAutoHideable, IFlyout 

Erweitert:DeleteArea

Implementierungen: IAutoHideable, IFlyout

Konstruktoren

Konstruktor Modifikatoren Beschreibung
(Konstruktor)(workspaceOptions) Konstruiert eine neue Instanz der Klasse Flyout

Attribute

Property Modifikatoren Typ Beschreibung
autoClose boolean Wird das Flyout automatisch geschlossen, wenn ein Block erstellt wird?
buttons_ protected FlyoutButton[] Liste der sichtbaren Schaltflächen.
CORNER_RADIUS readonly Zahl Eckenradius des Flyout-Hintergrunds.
dragAngleRange_ protected Zahl Bereich eines Widerstandswinkels von einer Flyout-Anzeige, die als „in Richtung Arbeitsbereich gezogen“ angesehen wird. Ziehbewegungen innerhalb der Grenzen dieser Anzahl von Grad von der orthogonalen Linie zum Flyout-Kanten werden als „zum Arbeitsbereich hin gezogen“ angesehen.
FlyoutItemType static FlyoutItemType-Typ Der Typ eines Flyout-Inhaltselements.
GAP_X readonly Zahl
GAP_Y readonly Zahl
height_ protected Zahl Höhe des Flyouts
MARGE readonly Zahl
rectMap_ protected WeakMap<BlockSvg, SVGElement>
RTL boolean
SCROLLBAR_MARGIN readonly Zahl Abstand zwischen Bildlaufleiste und Rand des Flyout-Hintergrunds (oben/unten)
svgBackground_ protected SVGPathElement | null Der Pfad um den Hintergrund des Flyouts, der mit einer Hintergrundfarbe ausgefü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
addBlockListeners_(root, block, rect) protected Fügen Sie einem Block, der dem Flyout hinzugefügt wurde, Listener hinzu.
autoHide(onlyClosePopups) Blendet das Flyout automatisch aus, wenn es sich um ein automatisch schließendes Flyout-Element handelt.
blockIsRecyclable_(_block) protected Gibt an, ob der angegebene Block recycelt werden kann oder nicht.
createDom(tagName) Erstellt das DOM des Flyouts. Muss nur einmal aufgerufen werden. Das Flyout-Element kann entweder als eigenes SVG-Element oder als g-Element in einem separaten SVG-Element verschachtelt sein.
createRect_(block, x, y, blockHW, index) protected Erstellen und platzieren Sie ein Rechteck, das dem angegebenen Block entspricht.
dispose() Dieses Flyout entsorgen. Heben Sie die Verknüpfung mit allen DOM-Elementen auf, um Speicherlecks zu vermeiden.
getFlyoutScale() Rufen Sie den Maßstab (Zoomstufe) des Flyouts ab. Standardmäßig entspricht dies der Größe des Zielarbeitsbereichs, kann aber überschrieben werden.
getHeight() Ermitteln Sie die Höhe des Flyout-Elements.
getWidth() Ermitteln Sie die Breite des Flyout-Elements.
getWorkspace() Richten Sie den Arbeitsbereich innerhalb des Flyouts ein.
getX() abstract Berechnet die x-Koordinate für die Flyout-Position.
getY(). abstract Berechnet die y-Koordinate für die Flyout-Position.
hide() Flyout ausblenden und leeren.
init(targetWorkspace) Initialisiert das Flyout.
initFlyoutButton_(Schaltfläche, x, y) protected Initialisieren der Schaltfläche: an die richtige Stelle verschieben, Listener hinzufügen usw.
isDragTowardWorkspace(currentDragDeltaXY) abstract Ermitteln Sie anhand der Position und Ausrichtung des Flyouts, ob ein Ziehdelta in Richtung des Arbeitsbereichs liegt. Dieser wird in bestimmenDragIntention_ verwendet, um zu bestimmen, ob ein neuer Block erstellt oder das Flyout-Fenster gescrollt werden soll.
isVisible() Ist das Flyout-Fenster sichtbar?
layout_(contents, lücken)

protected

abstract

Legen Sie die Blöcke im Flyout an.
moveRectToBlock_(rect, block) protected Verschieben Sie ein Rechteck so, dass es genau hinter einem Block sitzt. Berücksichtigen Sie dabei Laschen, Hüte und andere von uns erfundene Vorsprünge.
position() abstract Positionieren Sie das Flyout-Element.
positionAt_(width, Höhe, x, y) protected Die Ansicht anhand der in position() berechneten Koordinaten aktualisieren.
reflow() Reflow-Blöcke und ihre Matten.
reflowInternal_()

protected

abstract

Höhe von Flyout berechnen. Positionieren Sie die Matte unter jedem Block. Bei linksläufiger Schreibrichtung: Legen Sie die Blöcke rechtsbündig aus.
scrollToStart() abstract Scrollen Sie zum Anfang des Flyout-Inhalts.
setAutoClose(autoClose) Legt fest, ob dieses Flyout-Fenster automatisch geschlossen wird, wenn Blöcke herausgezogen oder auf den Arbeitsbereich geklickt werden.
setContainerVisible(visible) Legen Sie fest, ob der Container dieses Flyouts sichtbar ist.
setMetrics_(xyRatio)

protected

abstract

Legt die Übersetzung des Flyouts so fest, dass sie den Bildlaufleisten entspricht.
setVisible(visible) Legen Sie fest, ob das Flyout-Fenster sichtbar ist. Der Wert "true" bedeutet nicht unbedingt, dass Flyout angezeigt wird. Es ist möglicherweise ausgeblendet, weil sein Container ausgeblendet ist.
show(flyoutDef) Flyout anzeigen und ausfüllen.
wheel_(e)

protected

abstract

Scrollen Sie durch das Flyout-Fenster.