blockly > blockRendering > RenderInfo

blockRendering.RenderInfo クラス

このブロックの描画に必要なすべてのサイズ情報を含むオブジェクト。

この測定パスはブロックに変更を伝播しません(ただし、getSize() が呼び出されたときにフィールドによって再レンダリングが行われることがあります)。ただし、これを繰り返し呼び出すとコストが高くなる場合があります。

署名:

export declare class RenderInfo 

コンストラクタ

コンストラクタ 修飾子 説明
(コンストラクタ)(レンダラ, ブロック) RenderInfo クラスの新しいインスタンスを作成します。

プロパティ

プロパティ 修飾子 タイプ 説明
block_ BlockSvg
bottomRow BottomRow
constants_ protected ConstantProvider
高さ 数値 レンダリングされたブロックの高さ(子ブロックを含む)。
inputRows InputRow[] ブロック上の入力行の配列。
isCollapsed boolean
isInline boolean
isInsertionMarker boolean
outputConnection OutputConnection | null
renderer_

protected

readonly

レンダラ 使用中のブロック レンダラ。
[] サイズ設定情報を含む Row オブジェクトの配列。
RTL boolean
startX 数値
startY 数値
statementEdge 数値
topRow TopRow
数値 レンダリングされたブロックの幅(子ブロックを除く)。LTR をレンダリングしたときのブロックの右端です。
widthWithChildren 数値 レンダリングされたブロックの幅(子ブロックを含む)。

Methods

メソッド 修飾子 説明
addAlignmentPadding_(行, missingSpace) protected 行を変更して、そのフィールドの周囲に指定した量のパディングを追加します。パディングの正確な位置は、フィールド内の最後の入力のアライメント プロパティに基づきます。
addElemSpacing_() protected 各行内の要素間や周囲に水平方向のスペースを追加します。
addInput_(input, activeRow) protected 必要に応じて、アクティブな行に入力要素を追加し、行の入力のタイプを記録します。
addRowSpacing_() protected 行の間にスペーサーを追加し、サイズを設定します。
alignRowElements_() protected すべての行の右側を揃えるために、余分なスペースが必要になる場合があります。これは、すべての行のサイズを計算するための最初のパスの後にのみ計算できます。
alignStatementRow_(row) protected 計算された境界に基づいてステートメント行の要素を揃えます。他のタイプの行とは異なり、ステートメント行は複数の場所にスペースを追加します。
computeBounds_() protected ブロックの右端とステートメント入力の右端をどこに配置するか考えてください。
createRows_() protected ブロックのすべてのレンダリング可能な部分を表す Measurable オブジェクトの行を作成します。
finalize_() protected レンダリング情報オブジェクトに最終変更を行います。特に、各行の y 位置を保存し、ブロック全体の高さを記録します。
getDesiredRowWidth_(_row) protected 入力行の目的の幅を計算します。
getElemCenterline_(row, elem) protected レンダリングされた行の要素の中心線を計算します。この基本実装では、特別なケースではなく、垂直方向の中央にセンターラインが配置されます。(少なくとも)最上位行と最下位行を処理するには、追加のロジックが必要になる可能性があります。
getInRowSpacing_(prev, next) protected その行の前後の要素に基づいて、行のスペーサー要素の幅を計算します。たとえば、編集可能な 2 つのフィールドの間にパディングが追加されます。
getMeasureableForConnection(conn) 指定された接続に関連付けられた測定可能な接続を返します。
getRenderer() 使用中のブロック レンダラを取得します。
getSpacerRowHeight_(_prev, _next) protected スペーサー行の高さを計算します。
getSpacerRowWidth_(_prev, _next) protected スペーサー行の幅を計算します。
makeSpacerRow_(prev, next) protected 前後に移動するスペーサー行を作成し、サイズを設定します。
measure()

このオブジェクトには、ブロックの描画に必要なすべてのサイズ情報を設定します。

この測定パスはブロックに変更を伝播しません(ただし、getSize() が呼び出されたときにフィールドによって再レンダリングが行われることがあります)。ただし、これを繰り返し呼び出すとコストが高くなる場合があります。

populateBottomRow_() protected 一番下の行に属するスペーサー以外の要素をすべて作成します。
populateTopRow_() protected 最上行に属するスペーサー以外の要素をすべて作成します。
recordElemPositions_(row) protected 描画に使用するため、指定された行の要素に関する最終的な位置情報を記録します。少なくとも各要素の xPos と中心線が記録されます。
shouldStartNewRow_(currInput, prevInput) protected 2 つの Blockly.Inputs の間に新しい行を開始するかどうかを決定します。