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 |
อัปเดตออบเจ็กต์เส้นทางเพื่อแสดงการเชื่อมต่อในบล็อกที่ไฮไลต์ |