blockly > blockRendering > ลิ้นชัก

คลาส blockRendering.Drawer

วัตถุที่วาดบล็อกตามข้อมูลการแสดงผลที่ระบุ

ลายเซ็น:

export declare class Drawer 

ผู้ผลิต

ผู้ผลิต คีย์ตัวปรับแต่ง คำอธิบาย
(ตัวสร้าง)(บล็อก, ข้อมูล) สร้างอินสแตนซ์ใหม่ของคลาส Drawer

พร็อพเพอร์ตี้

พร็อพเพอร์ตี้ คีย์ตัวปรับแต่ง ประเภท คำอธิบาย
block_ BlockSvg
constants_ protected ConstantProvider
info_ RenderInfo
inlinePath_ สตริง
outlinePath_ สตริง
topLeft_ ประสานงาน

เมธอด

วิธีการ คีย์ตัวปรับแต่ง คำอธิบาย
draw()

วาดบล็อกสี่เหลี่ยมไปยังพื้นที่ทำงาน ที่นี่ "ภาพวาด" หมายถึงการตั้งค่าองค์ประกอบของเส้นทาง SVG และการย้ายช่อง ไอคอน และการเชื่อมต่อบนหน้าจอ

ส่วนต่างๆ ของเส้นทางจะพุชเข้าไปในอาร์เรย์ของ "ขั้นตอน" แล้วตามด้วยการเว้นวรรคและตั้งค่าโดยตรงบนบล็อก ขั้นตอนนี้ช่วยรับประกันว่าขั้นตอนต่างๆ จะคั่นด้วยการเว้นวรรคเพื่อให้อ่านง่ายขึ้น แต่ไม่จำเป็น

drawBottom_() protected เพิ่มขั้นตอนสำหรับขอบด้านล่างของบล็อก ซึ่งอาจรวมรอยบากสำหรับการเชื่อมต่อครั้งถัดไป
drawConnectionHighlightPath(measurable) แสดงเส้นทางเพื่อไฮไลต์การเชื่อมต่อที่ระบุ
drawInlineInput_(input) protected เพิ่มขั้นตอนสำหรับอินพุตในบรรทัด
drawInternals_() protected วาดภายในของบล็อก: อินพุตในบรรทัด ช่อง และไอคอน ค่าเหล่านี้ไม่ได้ขึ้นอยู่กับเส้นทางภายนอกสำหรับตำแหน่ง
drawJaggedEdge_(row) protected เพิ่มขั้นตอนสำหรับขอบหยักของแถวบนบล็อกที่ยุบ
drawLeft_() protected เพิ่มขั้นตอนสำหรับด้านซ้ายของบล็อก ซึ่งอาจรวมถึงการเชื่อมต่อเอาต์พุต
drawOutline_() protected สร้างโครงร่างของบล็อกสี่เหลี่ยม นี่คือเส้นทางเดียวต่อเนื่อง
drawRightSideRow_(row) protected เพิ่มขั้นตอนสำหรับด้านขวาของแถวที่ไม่มีการเชื่อมต่ออินพุตค่าหรือคำสั่ง
drawStatementInput_(row) protected เพิ่มขั้นตอนสำหรับอินพุตคำสั่ง
drawTop_() protected เพิ่มขั้นตอนสำหรับมุมด้านบนของบล็อกโดยพิจารณาถึงรายละเอียด เช่น หมวกและมุมโค้งมน
drawValueInput_(row) protected เพิ่มขั้นตอนสำหรับอินพุตค่าภายนอกที่แสดงผลเป็นรอยบากที่ด้านข้างของบล็อก
layoutField_(fieldInfo) protected ดันตำแหน่งใหม่ของช่องหรือไอคอนไปที่ราก SVG
positionExternalValueConnection_(row) protected วางการเชื่อมต่อบนอินพุตค่าภายนอกโดยพิจารณา RTL และช่องว่างเล็กๆ ระหว่างบล็อกระดับบนสุดและการบล็อกย่อยซึ่งจะแสดงเส้นทางมืดของบล็อกระดับบนสุดได้
positionInlineInputConnection_(input) protected จัดตำแหน่งการเชื่อมต่อในอินพุตค่าแบบอินไลน์ โดยพิจารณา RTL และช่องว่างเล็กๆ ระหว่างบล็อกระดับบนสุดกับการบล็อกย่อยซึ่งจะทำให้เส้นทางมืดของบล็อกระดับบนสุดแสดงออกมาได้
positionNextConnection_() protected วางการเชื่อมต่อถัดไปบนบล็อก
positionOutputConnection_() protected วางตำแหน่งการเชื่อมต่อเอาต์พุตบนบล็อก
positionPreviousConnection_() protected วางตำแหน่งการเชื่อมต่อก่อนหน้าบนบล็อก
positionStatementInputConnection_(row) protected วางการเชื่อมต่อในอินพุตคำสั่งโดยพิจารณา RTL และช่องว่างเล็กๆ ระหว่างบล็อกระดับบนสุดกับการบล็อกย่อยซึ่งจะแสดงเส้นทางมืดของบล็อกระดับบนสุดได้
recordSizeOnBlock_() protected บันทึกข้อมูลการปรับขนาดกลับไปที่บล็อก ข้อมูลการแสดงผลส่วนใหญ่สามารถทิ้งไปได้เมื่อสิ้นสุดการแสดงภาพ ส่วนใดๆ ที่จะต้องเก็บไว้ควรตั้งค่าในฟังก์ชันนี้
updateConnectionHighlights() protected อัปเดตออบเจ็กต์เส้นทางเพื่อแสดงการเชื่อมต่อในบล็อกที่ไฮไลต์