blockly > blockRendering > RenderInfo
blockRendering.RenderInfo 類別
一個物件,其中包含繪製此區塊所需的所有大小資訊。
這項測量過程不會將變更傳播至區塊 (雖然在呼叫 getSize() 時,欄位可能會選擇重新算繪)。不過,重複呼叫可能會耗費大量資源。
Signature:
export declare class RenderInfo
建構函式
建構函式 | 修飾符 | 說明 |
---|---|---|
(建構函式)(轉譯器, 區塊) | 建構 RenderInfo 類別的新例項 |
屬性
屬性 | 修飾符 | 類型 | 說明 |
---|---|---|---|
block_ | BlockSvg | ||
bottomRow | BottomRow | ||
constants_ | protected |
ConstantProvider | |
高度 | 號碼 | 轉譯區塊的高度,包括子區塊。 | |
inputRows | InputRow[] | 區塊上的輸入資料列陣列。 | |
isCollapsed | boolean | ||
isInline | boolean | ||
isInsertionMarker | boolean | ||
outputConnection | OutputConnection | 空值 | ||
renderer_ |
|
轉譯器 | 使用中的區塊轉譯器。 |
資料列 | 列[] | 包含大小設定資訊的 Row 物件陣列。 | |
RTL | boolean | ||
startX | 號碼 | ||
startY | 號碼 | ||
statementEdge | 號碼 | ||
topRow | TopRow | ||
寬度 | 號碼 | 算繪區塊的寬度,不包括子區塊。這是轉譯 LTR 時區塊的右側邊緣。 | |
widthWithChildren | 號碼 | 轉譯區塊的寬度,包括子區塊。 |
方法
方法 | 修飾符 | 說明 |
---|---|---|
addAlignmentPadding_(row, missingSpace) | protected |
修改指定資料列,在其欄位周圍加入指定的邊框間距。邊框間距的確切位置,以欄位中最後一個輸入的對齊屬性為準。 |
addElemSpacing_() | protected |
在每個資料列中的元素之間加入水平間距。 |
addInput_(input, ActiveRow) | protected |
視需要在有效資料列中加入輸入元素,並記錄該列的輸入類型。 |
addRowSpacing_() | protected |
在列之間加入空格字元並設定大小。 |
alignRowElements_() | protected |
因此可能需要額外的間距,才能確保所有資料列的右側對齊。您只能在第一次傳遞後計算這個數量,藉此計算所有資料列的大小。 |
alignStatementRow_(row) | protected |
根據計算的邊界對齊陳述式列的元素。與其他類型的資料列不同,陳述式列會在多個位置增加空格。 |
computeBounds_() | protected |
找出區塊右側邊緣和陳述式輸入內容的右側邊緣應放置的位置。 |
createRows_() | protected |
建立資料列的可評估物件列,代表區塊的所有可轉譯部分。 |
finalize_() | protected |
對算繪資訊物件進行最終變更。請特別留意每列的 y 位置,然後記錄整個區塊的高度。 |
getDesiredRowWidth_(_row) | protected |
計算輸入列的所需寬度。 |
getElemCenterline_(列, elem) | protected |
計算轉譯列中元素的中心線。這個基本實作會將中心線置於資料列中間,沒有特殊情況。您可能需要額外的邏輯來處理 (至少) 頂端和底部資料列。 |
getInRowSpacing_(上一個、下一個) | protected |
根據該列中的上一個和下一個元素,計算列中的空格字元元素的寬度。例如,在兩個可編輯欄位之間加入額外的邊框間距。 |
getMeasureableForConnection(conn) | 傳回與指定連線相關的可評估連線。 | |
getRenderer() | 取得使用中的區塊轉譯器。 | |
getSpacerRowHeight_(_prev, _next) | protected |
計算空格字元列的高度。 |
getSpacerRowWidth_(_prev, _next) | protected |
計算空格字元列的寬度。 |
makeSpacerRow_(上一個、下一個) | protected |
建立空格字元,用於切換上一個和下一個項目,並設定其大小。 |
measure() | 請在此物件中填入繪製區塊所需的所有大小資訊。 這項測量過程不會將變更傳播至區塊 (雖然在呼叫 getSize() 時,欄位可能會選擇重新算繪)。不過,重複呼叫可能會耗費大量資源。 |
|
populateBottomRow_() | protected |
建立位於底部列的所有非空格元素。 |
populateTopRow_() | protected |
建立位於第一列的所有非空格元素。 |
recordElemPositions_(row) | protected |
針對指定資料列中的元素記錄最終位置資訊,以便用於繪圖。至少要記錄每個元素上的 XPos 和中心線。 |
shouldStartNewRow_(currInput, prevInput) | protected |
決定是否要在兩個 Blockly.Inputs 之間開始新的資料列。 |