blockly > Flyout

Flyout-Kurs

Kurs 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) Erstellt eine neue Instanz der Flyout-Klasse

Attribute

Property Modifikatoren Typ Beschreibung
autoClose boolean Wird das Flyout-Fenster automatisch geschlossen, wenn ein Block erstellt wird?
buttons_ protected FlyoutButton[] Liste der sichtbaren Schaltflächen.
Inhalt protected FlyoutItem[] Liste der sichtbaren Schaltflächen und Blöcke.
CORNER_RADIUS readonly Zahl Eckenradius des Flyout-Hintergrunds.
dragAngleRange_ protected Zahl Bereich eines Ziehwinkels von einem Flyout, der als „in Richtung Arbeitsbereich ziehen“ gilt. Ziehbewegungen, die innerhalb des Rahmens um diese vielen Grad von der orthogonalen Linie zum Flyout-Kanten gezogen werden, werden als "Ziehen in Richtung des Arbeitsbereichs" angesehen.
FlyoutItemType static FlyoutItemType 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 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
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() Diesen Flyout entsorgen. Heben Sie die Verknüpfung mit allen DOM-Elementen auf, um Speicherlecks zu vermeiden.
getContents() Liste der Schaltflächen und Blöcke des aktuellen Flyouts abrufen.
getFlyoutScale() Ermitteln Sie den Maßstab (Zoomstufe) des Flyouts. Dies entspricht standardmäßig der Skalierung des Zielarbeitsbereichs, kann aber überschrieben werden.
getHeight() Ermitteln Sie die Höhe des Flyouts.
getWidth() Ermitteln Sie die Breite des Flyouts.
getWorkspace() Holen Sie sich den Arbeitsbereich innerhalb des Flyouts.
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-Fenster aus und leeren Sie es.
init(targetWorkspace) Initialisiert das Flyout.
initFlyoutButton_(button, x, y) protected Initialisieren Sie die angegebene Schaltfläche, indem Sie sie an die richtige Stelle verschieben, Listener hinzufügen usw.
isDragTowardWorkspace(currentDragDeltaXY) abstract Ermitteln Sie anhand der Position und Ausrichtung des Flyouts, ob sich ein Ziehdelta in Richtung des Arbeitsbereichs befindet. Wird in bestimmenDragIntention_ verwendet, um festzustellen, ob ein neuer Block erstellt oder das Flyout gescrollt werden soll.
isVisible() Ist das Flyout zu sehen?
layout_(contents, Lückes)

protected

abstract

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

protected

abstract

Höhe von Flyout berechnen. Positionieren Sie die Matte unter jedem Block. Bei RTL: Platzieren Sie die Blöcke rechtsbündig.
scrollToStart() abstract Scrollen Sie zum Anfang des Flyout-Inhalts.
serializeBlock(block) protected Serialisiert einen Block in JSON.
setAutoClose(autoClose) Legt fest, ob das Flyout-Fenster automatisch geschlossen wird, wenn Blöcke herausgezogen oder auf den Arbeitsbereich geklickt werden usw.
setContainerVisible(visible) Legen Sie fest, ob der Flyout-Container sichtbar ist.
setContents(contents) Speichern Sie die Liste der Schaltflächen und Blöcke im Flyout.
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 sein soll. Der Wert „true“ bedeutet nicht unbedingt, dass das Flyout-Fenster angezeigt wird. Sie ist möglicherweise ausgeblendet, weil ihr Container ausgeblendet ist.
show(flyoutDef) Flyout anzeigen und ausfüllen.
wheel_(e)

protected

abstract

Scrollen Sie durch das Flyout-Fenster.