blockly > blockRendering > RenderInfo

Classe blockRendering.RenderInfo

Un oggetto contenente tutte le informazioni sulle dimensioni necessarie per disegnare questo blocco.

Questa misura non propaga le modifiche al blocco (sebbene i campi possano scegliere di eseguire il rendering quando viene chiamato getSize()). Tuttavia, chiamarlo ripetutamente può essere costoso.

Firma:

export declare class RenderInfo 

Costruttori

Costruttore Modificatori Descrizione
(costruttore)(rendering, blocco) Crea una nuova istanza della classe RenderInfo

Proprietà

Proprietà Modificatori Tipo Descrizione
block_ BlockSvg
bottomRow BottomRow
constants_ protected ConstantProvider
altezza numero L'altezza del blocco visualizzato, inclusi i blocchi secondari.
inputRows InputRow[] Un array di righe di input nel blocco.
isCollapsed boolean
isInline boolean
isInsertionMarker boolean
outputConnection OutputConnection | null
renderer_

protected

readonly

Renderer Il renderer a blocchi in uso.
righe Riga[] Un array di oggetti Row contenente informazioni sulle dimensioni.
RTL boolean
startX numero
startY numero
statementEdge numero
topRow TopRow
larghezza numero La larghezza del blocco visualizzato, esclusi i blocchi secondari. Questo è il bordo destro del blocco quando viene visualizzato in LTR.
widthWithChildren numero La larghezza del blocco visualizzato, inclusi i blocchi secondari.

Metodi

Metodo Modificatori Descrizione
addAllineamentPadding_(riga, MissingSpace) protected Modifica la riga specificata per aggiungere la quantità di spaziatura interna specificata nei campi. La posizione esatta della spaziatura interna si basa sulla proprietà di allineamento dell'ultimo input nel campo.
addElemSpacing_() protected Aggiungi spazio orizzontale tra e intorno agli elementi di ogni riga.
addInput_(input, activeRow) protected Se necessario, aggiungi un elemento di input alla riga attiva e registra il tipo di input nella riga.
addRowSpacing_() protected Aggiungi i distanziali tra le righe e impostane le dimensioni.
alignRowElements_() protected Potrebbe essere necessario uno spazio aggiuntivo per garantire che i lati destro di tutte le righe siano allineati. Questo valore può essere calcolato solo dopo una prima passata per calcolare le dimensioni di tutte le righe.
alignStatementRow_(row) protected Allinea gli elementi di una riga di istruzione in base ai limiti calcolati. A differenza di altri tipi di righe, le righe di istruzioni aggiungono spazio in più posizioni.
computeBounds_() protected Capire dove inserire il bordo destro del blocco e quello destro degli input dell'istruzione.
createRows_() protected Crea righe di oggetti misurabili che rappresentano tutte le parti del blocco di cui è possibile eseguire il rendering.
finalize_() protected Apporta le modifiche finali all'oggetto informazioni sul rendering. In particolare, memorizza la posizione y di ogni riga e registra l'altezza di un blocco intero.
getDesiredRowWidth_(_row) protected Calcola la larghezza desiderata di una riga di input.
getElemCenterline_(riga, elem) protected Calcolare la linea centrale di un elemento in una riga visualizzata. Questa implementazione di base posiziona la linea di mezzeria al centro della riga in verticale, senza casi speciali. Probabilmente avrai bisogno di una logica aggiuntiva per gestire (almeno) le righe superiore e inferiore.
getInRowSPacing_(prev, next) protected Calcola la larghezza di un elemento spaziatore in una riga in base agli elementi precedenti e successivi nella riga in questione. Ad esempio, viene aggiunta ulteriore spaziatura interna tra due campi modificabili.
getMeasureableForConnection(conn) Restituisce la connessione misurabile associata alla connessione specificata.
getRenderer() Ottieni il renderer a blocchi in uso.
getSpacerRowHeight_(_prev, _next) protected Calcola l'altezza di una riga di spazi.
getSpacerRowLarghezza_(_prev, _next) protected Calcola la larghezza di una riga di spazi.
makeSpacerRow_(prev, next) protected Crea una riga di spaziatura tra "prev" e "next" e imposta le dimensioni corrispondenti.
measure()

Compila questo oggetto con tutte le informazioni sulle dimensioni necessarie per tracciare il blocco.

Questa misura non propaga le modifiche al blocco (sebbene i campi possano scegliere di eseguire il rendering quando viene chiamato getSize()). Tuttavia, chiamarlo ripetutamente può essere costoso.

populateBottomRow_() protected Crea tutti gli elementi non spaziali che appartengono alla riga inferiore.
populateTopRow_() protected Crea tutti gli elementi non spaziali che appartengono alla riga superiore.
recordElemPositions_(row) protected Registra le informazioni sulla posizione finale degli elementi nella riga specificata per utilizzarli nel disegno. Registra almeno xPos e la linea di mezzeria di ogni elemento.
dovStartNewRow_(currInput, prevInput) protected Decidi se creare una nuova riga tra i due valori Blockly.Input.