blockly > blockRendering > RenderInfo
Classe blockRendering.RenderInfo
Um objeto que contém todas as informações de dimensionamento necessárias para desenhar esse bloco.
Essa passagem de medição não propaga mudanças no bloco, embora os campos possam optar por renderizar novamente quando getSize() é chamado. No entanto, chamá-lo repetidamente pode ser caro.
Signature:
export declare class RenderInfo
Construtores
Construtor | Modificadores | Descrição |
---|---|---|
(construtor)(renderizador, bloco) | Cria uma nova instância da classe RenderInfo |
Propriedades
Propriedade | Modificadores | Tipo | Descrição |
---|---|---|---|
block_ | BlockSvg | ||
bottomRow | BottomRow | ||
constants_ | protected |
ConstantProvider | |
height (em inglês) | number | A altura do bloco renderizado, incluindo blocos filhos. | |
inputRows | InputRow[] | Uma matriz de linhas de entrada no bloco. | |
isCollapsed | booleano | ||
isInline | booleano | ||
isInsertionMarker | booleano | ||
outputConnection | OutputConnection | nulo | ||
renderer_ |
|
Renderizador | O renderizador de bloco em uso. |
linhas | Linha[] | Uma matriz de objetos Row contendo informações de dimensionamento. | |
RTL | booleano | ||
startX | number | ||
startY | number | ||
statementEdge | number | ||
topRow | TopRow | ||
largura | number | A largura do bloco renderizado, excluindo blocos filhos. É a borda direita do bloco quando renderizada como LTR. | |
widthWithChildren | number | A largura do bloco renderizado, incluindo blocos filhos. |
Métodos
Método | Modificadores | Descrição |
---|---|---|
addAlignmentPadding_(row, missingSpace) | protected |
Modifique a linha para adicionar a quantidade especificada de preenchimento em torno de seus campos. A localização exata do padding é baseada na propriedade de alinhamento da última entrada no campo. |
addElemSpacing_() | protected |
Adicione espaçamento horizontal entre e ao redor dos elementos em cada linha. |
addInput_(input, activeRow) | protected |
Adicione um elemento de entrada à linha ativa, se necessário, e registre o tipo de entrada na linha. |
addRowSpacing_() | protected |
Adicionar espaçadores entre as linhas e definir seus tamanhos. |
alignRowElements_() | protected |
Pode ser necessário um espaçamento extra para garantir que os lados certos de todas as linhas fiquem alinhados. Isso só pode ser calculado após uma primeira passagem para calcular os tamanhos de todas as linhas. |
alignStatementRow_(row) | protected |
Alinhe os elementos de uma linha de instrução com base nos limites calculados. Ao contrário de outros tipos de linhas, as de instruções adicionam espaço em vários lugares. |
computeBounds_() | protected |
Descobrir onde a borda direita do bloco e a borda direita das entradas de instrução precisam ser colocadas. |
createRows_() | protected |
Crie linhas de objetos mensuráveis que representem todas as partes do bloco que podem ser renderizadas. |
finalize_() | protected |
Faça as alterações finais no objeto de informações de renderização. Em particular, armazene a posição y de cada linha e registre a altura do bloco completo. |
getDesiredRowWidth_(_row) | protected |
Calcule a largura desejada de uma linha de entrada. |
getElemCenterline_(linha, elem) | protected |
Calcular a linha central de um elemento em uma linha renderizada. Essa implementação básica coloca a linha central no meio da linha verticalmente, sem casos especiais. Você provavelmente vai precisar de lógica extra para lidar, no mínimo, com as linhas superior e inferior. |
getInRowSpacing_(prev, next) | protected |
Calcule a largura de um elemento espaçador em uma linha com base nos elementos anterior e seguinte dessa linha. Por exemplo, um padding extra é adicionado entre dois campos editáveis. |
getMeasureableForConnection(conn) | Retorna a conexão mensurável associada à conexão especificada. | |
getRenderer() | Coloque o renderizador em bloco em uso. | |
getSpacerRowHeight_(_prev, _next). | protected |
Calcule a altura de uma linha espaçadora. |
getSpacerRowWidth_(_prev, _next) | protected |
Calcule a largura de uma linha de espaçador. |
makeSpacerRow_(prev, next) | protected |
Crie uma linha espaçadora para alternar entre a anterior e a próxima, e defina o tamanho dela. |
measure() | Preencha esse objeto com todas as informações de dimensionamento necessárias para desenhar o bloco. Essa passagem de medição não propaga mudanças no bloco, embora os campos possam optar por renderizar novamente quando getSize() é chamado. No entanto, chamá-lo repetidamente pode ser caro. |
|
populateBottomRow_() | protected |
Crie todos os elementos sem espaçadores que pertençam à linha inferior. |
populateTopRow_() | protected |
Crie todos os elementos sem espaçadores que pertençam à linha superior. |
recordElemPositions_(row) | protected |
Registra informações de posição final nos elementos da linha em questão para usar em desenhos. No mínimo, isso registra xPos e centerline em cada elemento. |
devStartNewRow_(currInput, prevInput) | protected |
Decida se você quer iniciar uma nova linha entre os dois Blockly.Inputs. |