chặn > blockRendering > RenderInfo

lớp blockRendering.RenderInfo

Một đối tượng chứa tất cả thông tin về kích thước cần thiết để vẽ khối này.

Lượt đo lường này không truyền các thay đổi vào khối (mặc dù các trường có thể chọn kết xuất lại khi getSize() được gọi). Tuy nhiên, việc gọi lại dữ liệu này nhiều lần có thể gây tốn kém.

Chữ ký:

export declare class RenderInfo 

Hàm khởi tạo

Hàm dựng Đối tượng sửa đổi Mô tả
(hàm khởi tạo)(renderer; block) Tạo một thực thể mới của lớp RenderInfo

Thuộc tính

Thuộc tính Đối tượng sửa đổi Loại Mô tả
block_ BlockSvg
bottomRow BottomRow
constants_ protected ConstantProvider
height (chiều cao) số Chiều cao của khối được kết xuất, bao gồm cả các khối con.
inputRows InputRow[] Một mảng các hàng đầu vào trên khối.
isCollapsed boolean
isInline boolean
isInsertionMarker boolean
outputConnection OutputConnection | rỗng
renderer_

protected

readonly

Trình kết xuất Trình kết xuất khối đang được sử dụng.
hàng Hàng[] Một mảng gồm các đối tượng Hàng chứa thông tin về kích thước.
RTL boolean
startX số
startY số
statementEdge số
topRow TopRow
chiều rộng số Chiều rộng của khối được kết xuất, không bao gồm các khối con. Đây là cạnh phải của khối khi kết xuất từ trái sang phải.
widthWithChildren số Chiều rộng của khối được kết xuất, bao gồm cả các khối con.

Phương thức

Phương thức Đối tượng sửa đổi Mô tả
addAlignmentPadding_(row, missingSpace) protected Sửa đổi hàng đã cho để thêm lượng khoảng đệm đã cho xung quanh các trường. Vị trí chính xác của khoảng đệm dựa trên thuộc tính căn chỉnh của giá trị nhập gần đây nhất trong trường.
addElemSpacing_() protected Thêm khoảng cách theo chiều ngang giữa và xung quanh các phần tử trong mỗi hàng.
addInput_(dữ liệu đầu vào, activityRow) protected Thêm một phần tử đầu vào vào hàng đang hoạt động (nếu cần) và ghi lại loại dữ liệu đầu vào trên hàng.
addRowSpacing_() protected Thêm khoảng trống giữa các hàng và đặt kích thước của chúng.
alignRowElements_() protected Có thể cần thêm khoảng cách để đảm bảo rằng các cạnh bên phải của tất cả các hàng thẳng hàng. Giá trị này chỉ có thể được tính sau lần truyền đầu tiên để tính kích thước của tất cả các hàng.
alignStatementRow_(row) protected Căn chỉnh các phần tử của một hàng câu lệnh dựa trên giới hạn đã tính toán. Không giống như các loại hàng khác, hàng câu lệnh thêm khoảng trống ở nhiều vị trí.
computeBounds_() protected Xác định vị trí nên đặt cạnh phải của khối và cạnh phải của mục nhập câu lệnh.
createRows_() protected Tạo các hàng chứa các đối tượng có thể đo lường để đại diện cho tất cả các phần có thể kết xuất của khối.
finalize_() protected Thực hiện thay đổi cuối cùng đối với đối tượng thông tin kết xuất. Cụ thể, hãy lưu trữ vị trí y của mỗi hàng và ghi lại chiều cao của toàn bộ khối.
getDesiredRowWidth_(_row) protected Tính toán chiều rộng mong muốn của hàng nhập dữ liệu.
getElemCenterline_(row; elem) protected Tính đường tâm của một phần tử trong một hàng đã kết xuất. Cách triển khai cơ sở này đặt đường tâm ở giữa hàng theo chiều dọc mà không có trường hợp đặc biệt nào. Có thể bạn sẽ cần thêm logic để xử lý (tối thiểu) các hàng trên cùng và dưới cùng.
getInRowSpacing_(trước, tiếp theo) protected Tính chiều rộng của một phần tử dấu cách trong một hàng dựa trên các phần tử đứng trước và tiếp theo trong hàng đó. Ví dụ: khoảng đệm bổ sung được thêm vào giữa 2 trường có thể chỉnh sửa.
getMeasureableForConnection(conn) Trả về kết nối có thể đo lường được liên kết với kết nối đã cho.
getRenderer() Tải trình kết xuất khối đang sử dụng.
getSpacerRowHeight_(_ "trước, _next) protected Tính chiều cao của một hàng dấu cách.
getSpacerRowWidth_(_ Studio, _next) protected Tính chiều rộng của một hàng dấu cách.
makeSpacerRow_(trước, tiếp theo) protected Tạo một hàng dấu cách để di chuyển giữa nội dung tiếp theo và nội dung tiếp theo, đồng thời đặt kích thước của hàng đó.
measure()

Điền vào đối tượng này tất cả thông tin kích thước cần thiết để vẽ khối.

Lượt đo lường này không truyền các thay đổi vào khối (mặc dù các trường có thể chọn kết xuất lại khi getSize() được gọi). Tuy nhiên, việc gọi lại dữ liệu này nhiều lần có thể gây tốn kém.

populateBottomRow_() protected Tạo tất cả các phần tử không có dấu cách ở hàng dưới cùng.
populateTopRow_() protected Tạo tất cả các phần tử không có dấu cách thuộc hàng trên cùng.
recordElemPositions_(row) protected Ghi lại thông tin vị trí cuối cùng của các phần tử trên hàng đã cho để sử dụng khi vẽ. Ở mức tối thiểu, giá trị này sẽ ghi lại xPos và đường tâm trên mỗi phần tử.
nên protected Quyết định xem có bắt đầu một hàng mới giữa hai Blockly.Inputs hay không.