blockly > BlockSvg

Classe BlockSvg

Classe per la rappresentazione SVG di un blocco. In genere non viene chiamato direttamente, è preferibile workspace.newBlock().

Firma:

export declare class BlockSvg extends Block implements IBoundedElement, IContextMenu, ICopyable<BlockCopyData>, IDraggable, IDeletable, IFocusableNode 

Estende: Blocca

Implementa: IBoundedElement, IContextMenu, ICopyable<BlockCopyData>, IDraggable, IDeletable, IFocusableNode

Costruttori

Costruttore Modificatori Descrizione
(constructor)(workspace, prototypeName, opt_id) Crea una nuova istanza della classe BlockSvg

Proprietà

Proprietà Modificatori Tipo Descrizione
COLLAPSED_WARNING_ID

static

readonly

(non dichiarato) ID per visualizzare l'avviso "Avvisi compressi". Ci consente di rimuovere l'avviso "Avvisi compressi" senza rimuovere gli avvisi appartenenti al blocco.
customContextMenu? (p1: Array<ContextMenuOption | LegacyContextMenuOption>) => void (Facoltativo)
decompose? (p1: Workspace) => BlockSvg (Facoltativo)
height numero Altezza di questo blocco, esclusi eventuali blocchi di istruzioni sopra o sotto. L'altezza è espressa in unità dell'area di lavoro.
INLINE

static

readonly

(non dichiarato) Costante per identificare le righe da visualizzare in linea. Non entrare in conflitto con Blockly.inputTypes.
mutator MutatorIcon | null Icona del mutatore del blocco (se presente).
nextConnection RenderedConnection
outputConnection RenderedConnection
previousConnection RenderedConnection
rendered readonly (non dichiarato) Is this block a BlockSVG?
saveConnections? (rootBlock: BlockSvg) => void

(Facoltativo) Un metodo facoltativo che salva un record dei blocchi collegati a questo blocco in modo che possano essere ripristinati in un secondo momento dopo che questo blocco è stato ricomposto (riconfigurato). In genere registra i blocchi connessi alle proprietà nei blocchi nel riquadro a comparsa del mutatore, in modo che la riorganizzazione di questi blocchi componenti riorganizzi automaticamente i blocchi connessi corrispondenti in questo blocco dopo la sua ricomposizione.

Per mantenere aggiornate le informazioni di connessione salvate, MutatorIcon fa in modo che un listener di eventi chiami questo metodo ogni volta che il riquadro del mutatore è aperto e si verifica una modifica nello spazio di lavoro di questo blocco.

style BlockStyle
width numero Larghezza di questo blocco, inclusi eventuali blocchi di valori collegati. La larghezza è espressa in unità del workspace.
workspace WorkspaceSvg

Metodi

Metodo Modificatori Descrizione
addClass(className) Aggiungi una classe CSS al gruppo SVG di questo blocco.
addIcon(icon)
addSelect() Aggiunge l'effetto visivo "Seleziona" al blocco, ma non lo seleziona né attiva un evento.
appendInput(input)
bringToFront(blockOnly) Sposta questo blocco all'inizio dell'area di lavoro visibile. I tag non rispettano l'indice Z, quindi SVG li esegue il rendering nell'ordine in cui si trovano nel DOM. Se posizioni questo blocco per primo all'interno del del gruppo di blocchi, verrà visualizzato sopra tutti gli altri blocchi. Utilizza questo metodo con parsimonia, in quanto è costoso perché riordina i nodi DOM.
bumpNeighbours()

Sposta i blocchi non collegati fuori allineamento.

Due blocchi non collegati non devono essere allineati sullo schermo, perché ciò crea confusione per gli utenti finali.

calculateContextMenuLocation(e) protected Ottiene la posizione in cui mostrare il menu contestuale per questo blocco. Utilizza la posizione di un clic se è stato fatto clic sul blocco o una posizione basata sui campi del blocco in caso contrario.
canBeFocused() Consulta IFocusableNode.canBeFocused.
checkAndDelete() Elimina un blocco e nascondi la paglia quando lo fai. Il blocco non verrà eliminato se si trova in un riquadro a comparsa. Questa operazione viene chiamata dal menu contestuale e dalle scorciatoie da tastiera come azione di eliminazione completa. Se stai eliminando un blocco dallo spazio di lavoro e non devi eseguire controlli del menu a comparsa, gestire il raggruppamento di eventi o nascondere la paglia, utilizza direttamente block.dispose().
dispose(healStack, animate) Elimina questo blocco.
disposeInternal() Elimina questo blocco senza eseguire le operazioni richieste dal blocco superiore. Ad esempio, attiva effetti UI, rimuove nodi e così via.
drag(newLoc, e) Trascina il blocco nella posizione specificata.
endDrag(e) Termina il trascinamento del blocco.
generateContextMenu(e) protected Genera il menu contestuale per questo blocco.
getBoundingRectangle() Restituisce le coordinate di un riquadro di delimitazione che descrive le dimensioni di questo blocco e di tutti i blocchi impilati sotto. Sistema di coordinate: coordinate del workspace.
getBoundingRectangleWithoutChildren() Restituisce le coordinate di un riquadro di delimitazione che descrive le dimensioni di questo blocco da solo. Sistema di coordinate: coordinate del workspace.
getChildren(ordered) Trova tutti i blocchi direttamente nidificati all'interno di questo. Include gli input di valori e istruzioni, nonché qualsiasi istruzione successiva. Esclude qualsiasi connessione in una scheda di output o qualsiasi istruzione precedente. I blocchi vengono ordinati in modo facoltativo in base alla posizione, dall'alto verso il basso.
getColour() Ottieni il colore di un blocco.
getColourSecondary() Ottieni il colore secondario di un blocco.
getColourTertiary() Ottieni il colore terziario di un blocco.
getFocusableElement() Vedi IFocusableNode.getFocusableElement.
getFocusableTree() Consulta IFocusableNode.getFocusableTree.
getNextBlock() Restituisce il blocco di istruzioni successivo collegato direttamente a questo blocco.
getPreviousBlock() Restituisce il blocco collegato alla connessione precedente.
getRelativeToSurfaceXY() Restituisce le coordinate dell'angolo in alto a sinistra di questo blocco rispetto all'origine (0,0) della superficie di disegno, nelle unità dello spazio di lavoro. Se il blocco si trova nello spazio di lavoro, (0, 0) è l'origine del sistema di coordinate dello spazio di lavoro. Questo non cambia con la scalabilità dello spazio di lavoro.
getStyle() Restituisce l'oggetto BlockStyle utilizzato per applicare lo stile a questo blocco.
getSvgRoot() Restituisce il nodo radice dell'SVG o null se non esiste.
initSvg() Crea e inizializza la rappresentazione SVG del blocco. Può essere chiamato più di una volta.
isCopyable() Restituisce un valore che indica se questo blocco è copiabile o meno.
isMovable() Restituisce un valore che indica se questo blocco è spostabile o meno.
jsonInit(json)
markDirty() Notifica ogni input in questo blocco per contrassegnare i relativi campi come modificati. Un campo sporco è un campo che deve essere nuovamente sottoposto a rendering.
moveBy(dx, dy, reason) Sposta un blocco di un offset relativo.
moveNumberedInputBefore(inputIndex, refIndex) Sposta un input numerato in un'altra posizione di questo blocco.
moveTo(xy, reason) Sposta un blocco in una posizione.
onNodeBlur() Vedi IFocusableNode.onNodeBlur.
onNodeFocus() Consulta IFocusableNode.onNodeFocus.
removeClass(className) Rimuovi una classe CSS dal gruppo SVG di questo blocco.
removeIcon(type)
removeInput(name, opt_quiet) Rimuovi un input da questo blocco.
removeSelect() Rimuove l'effetto visivo "Seleziona" dal blocco, ma non lo deseleziona né attiva un evento.
render() Dispone e ridispone immediatamente un blocco in base ai suoi contenuti e alle sue impostazioni.
revertDrag() Sposta il blocco nella posizione in cui si trovava all'inizio del trascinamento.
scheduleSnapAndBump() Aggancia alla griglia e sposta i blocchi vicini alla fine del rendering successivo.
select() Seleziona questo blocco. Evidenzia visivamente il blocco.
setCollapsed(collapsed) Imposta se il blocco è compresso o meno.
setColour(colour) Modificare il colore di un blocco.
setDeletable(deletable) Aggiungi la classe blocklyNotDeletable quando il blocco non è eliminabile o rimuovi la classe quando il blocco è eliminabile
setDisabledReason(disabled, reason) Aggiungi o rimuovi un motivo per cui il blocco potrebbe essere disattivato. Se un blocco presenta motivi per essere disattivato, verrà considerato disattivato. Un blocco può essere disattivato per più motivi indipendenti contemporaneamente, ad esempio quando l'utente lo disattiva manualmente o quando il blocco non è valido.
setDragStrategy(dragStrategy) Imposta la strategia di trascinamento per questo blocco.
setEditable(editable) Imposta se questo blocco è modificabile o meno.
setHighlighted(highlighted) Imposta se il blocco è evidenziato o meno. L'evidenziazione dei blocchi viene spesso utilizzata per contrassegnare visivamente i blocchi attualmente in esecuzione.
setInputsInline(newBoolean) Imposta se gli input dei valori sono disposti orizzontalmente o verticalmente.
setMovable(movable) Imposta se questo blocco è spostabile o meno.
setMutator(mutator) Mostra una finestra di dialogo per questo blocco.
setNextStatement(newBoolean, opt_check) Imposta se un altro blocco può essere concatenato alla parte inferiore di questo blocco.
setOutput(newBoolean, opt_check) Imposta se questo blocco restituisce un valore.
setPreviousStatement(newBoolean, opt_check) Imposta se questo blocco può essere concatenato alla parte inferiore di un altro blocco.
setStyle(blockStyleName) Imposta i valori di stile e colore di un blocco.
setWarningText(text, id) Imposta il testo di avviso di questo blocco.
snapToGrid() Aggancia questo blocco al punto della griglia più vicino.
startDrag(e) Avvia un trascinamento sul blocco.
toCopyData() Codifica un blocco per la copia.
toFlyoutInfo() Restituisce una rappresentazione di questo blocco che può essere visualizzata in un riquadro.
translate(x, y) Trasforma un blocco impostando la traslazione sull'attributo di trasformazione dell'SVG del blocco.
unselect() Deseleziona questo blocco. Rimuove la evidenziazione visiva del blocco.