blockly > blockRendering > RenderInfo
Classe blockRendering.RenderInfo
Objet contenant toutes les informations de dimensionnement nécessaires pour dessiner ce volume.
Cette mesure ne propage pas les modifications apportées au bloc (bien que les champs puissent choisir d'effectuer un nouveau rendu lorsque getSize() est appelé). Cependant, l'appeler à plusieurs reprises peut s'avérer coûteux.
Signature :
export declare class RenderInfo
Constructeurs
Constructeur | Modificateurs | Description |
---|---|---|
(constructeur)(moteur de rendu, bloc) | Construit une nouvelle instance de la classe RenderInfo . |
Propriétés
Propriété | Modificateurs | Type | Description |
---|---|---|---|
block_ | BlockSvg | ||
bottomRow | BottomRow | ||
constants_ | protected |
ConstantProvider | |
hauteur | Nombre | Hauteur du bloc affiché, y compris les blocs enfants. | |
inputRows | InputRow[] | Tableau de lignes d'entrée dans le bloc. | |
isCollapsed | booléen | ||
isInline | booléen | ||
isInsertionMarker | booléen | ||
outputConnection | OutputConnection | nul | ||
renderer_ |
|
Moteur de rendu | Moteur de rendu de blocs utilisé. |
lignes | Ligne[] | Tableau d'objets Row contenant des informations de dimensionnement. | |
RTL | booléen | ||
startX | Nombre | ||
startY | Nombre | ||
statementEdge | Nombre | ||
topRow | TopRow | ||
largeur | Nombre | Largeur du bloc affiché, à l'exclusion des blocs enfants. Il s'agit du bord droit du bloc lorsqu'il est affiché de gauche à droite. | |
widthWithChildren | Nombre | Largeur du bloc affiché, blocs enfants compris. |
Méthodes
Méthode | Modificateurs | Description |
---|---|---|
addAlignmentPadding_(row, missingSpace) | protected |
Modifiez la ligne donnée pour ajouter la marge intérieure indiquée autour de ses champs. L'emplacement exact de la marge intérieure est basé sur la propriété d'alignement de la dernière entrée du champ. |
addElemSpacing_() | protected |
Ajoutez un espacement horizontal entre et autour des éléments de chaque ligne. |
addInput_(input, activeRow) | protected |
Ajoutez un élément d'entrée à la ligne active, si nécessaire, et enregistrez le type d'entrée sur la ligne. |
addRowSpacing_() | protected |
Ajoutez des espacements entre les lignes et définissez leur taille. |
alignRowElements_() | protected |
Un espacement supplémentaire peut être nécessaire pour vous assurer que les côtés droits de toutes les lignes sont alignés. Cette valeur ne peut être calculée qu'après un premier passage pour calculer la taille de toutes les lignes. |
alignStatementRow_(row) | protected |
Permet d'aligner les éléments d'une ligne d'instruction en fonction des limites calculées. Contrairement aux autres types de lignes, les lignes d'instruction ajoutent de l'espace à plusieurs endroits. |
computeBounds_() | protected |
Déterminez où le bord droit du bloc et le bord droit des entrées d’instruction doivent être placés. |
createRows_() | protected |
Créez des lignes d'objets mesurables représentant toutes les parties du bloc pouvant être rendues. |
finalize_() | protected |
Apportez les modifications finales à l'objet d'informations de rendu. En particulier, stockez la position Y de chaque ligne et notez la hauteur du bloc complet. |
getDesiredRowWidth_(_row) | protected |
Calculez la largeur souhaitée d'une ligne d'entrée. |
getElemCenterline_(row, elem) | protected |
Calculez la ligne médiane d'un élément dans une ligne affichée. Cette implémentation de base place la ligne médiane au milieu de la ligne verticalement, sans cas particulier. Vous aurez probablement besoin d'une logique supplémentaire pour gérer (au minimum) les lignes du haut et du bas. |
getInRowSpacing_(prev, next) | protected |
Calculez la largeur d'un élément d'espace vide sur une ligne en fonction des éléments précédents et suivants de cette ligne. Par exemple, une marge intérieure supplémentaire est ajoutée entre deux champs modifiables. |
getMeasureableForConnection(conn) | Affiche la connexion mesurable associée à la connexion donnée. | |
getRenderer() | Utilisez le moteur de rendu de blocs. | |
getSpacerRowHeight_(_prev, _next) | protected |
Calculez la hauteur d'une ligne d'espace vide. |
getSpacerRowWidth_(_prev, _next) | protected |
Calculez la largeur d'une ligne d'espace vide. |
makeSpacerRow_(prev, next) | protected |
Créez une ligne d'espace vide pour passer de la ligne précédente à la ligne suivante, puis définissez sa taille. |
measure() | Renseignez cet objet avec toutes les informations de dimensionnement nécessaires pour dessiner le volume. Cette mesure ne propage pas les modifications apportées au bloc (bien que les champs puissent choisir d'effectuer un nouveau rendu lorsque getSize() est appelé). Cependant, l'appeler à plusieurs reprises peut s'avérer coûteux. |
|
populateBottomRow_() | protected |
Créez tous les éléments qui ne sont pas des espaces vides sur la ligne du bas. |
populateTopRow_() | protected |
Créez tous les éléments qui ne sont pas des espaces vides sur la ligne supérieure. |
recordElemPositions_(row) | protected |
Enregistrez les informations de position finale des éléments sur la ligne donnée, pour les utiliser dans le dessin. Au minimum, les valeurs xPo et la ligne médiane sont enregistrées pour chaque élément. |
doiventStartNewRow_(currInput, prevInput) | protected |
Décidez si vous souhaitez créer une nouvelle ligne entre les deux blocs Blockly.Inputs. |