blockly > พื้นที่ทำงาน

คลาส Workspace

ชั้นเรียนสำหรับพื้นที่ทำงาน นี่คือโครงสร้างข้อมูลที่ประกอบด้วยการบล็อก ทั้งนี้ไม่มี UI และสร้างได้โดยไม่ต้องมีส่วนหัว

ลายเซ็น:

export declare class Workspace implements IASTNodeLocation 

การใช้งาน: IASTNodeLocation

ผู้ผลิต

ผู้ผลิต ตัวปรับแต่ง คำอธิบาย
(เครื่องมือสร้าง)(opt_options) สร้างอินสแตนซ์ใหม่ของคลาส Workspace

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

พร็อพเพอร์ตี้ ตัวปรับแต่ง Type คำอธิบาย
connectionChecker IConnectionChecker
connectionDBList ConnectionDB[] ชุดฐานข้อมูลสำหรับการค้นหาตำแหน่งการเชื่อมต่ออย่างรวดเร็ว
horizontalLayout boolean
id สตริง
isFlyout readonly boolean พื้นที่ทำงานนี้เป็นพื้นผิวสำหรับการบินใช่ไหม
isMutator readonly boolean พื้นที่ทำงานนี้เป็นแพลตฟอร์มสำหรับการเปลี่ยนแปลงใช่ไหม
MAX_UNDO ตัวเลข จำนวนเหตุการณ์การเลิกทำสูงสุดในกลุ่ม 0 จะปิดการเลิกทำ Infinity ตั้งค่าเป็นไม่จำกัด
ตัวเลือก ตัวเลือก
redoStack_ protected บทคัดย่อ[]
แสดงผลแล้ว boolean แสดงผล true หากพื้นที่ทำงานมองเห็นได้ และแสดงผล false หากไม่มีส่วนหัว
RTL boolean
SCAN_ANGLE static ตัวเลข เงยมุมออกจากแนวนอนเพื่อกวาดหาบล็อก โดยทั่วไปลำดับการดำเนินการจะเรียงจากบนลงล่าง แต่มุมขนาดเล็กจะเปลี่ยนการสแกนเพื่อให้มีความเอนเอียงจากซ้ายไปขวาเล็กน้อย (ย้อนกลับใน RTL) หน่วยเป็นองศา ดู: https://tvtropes.org/pmwiki/pmwiki.php/Main/DiagonalBilling
toolboxPosition toolbox.Position
undoStack_ protected บทคัดย่อ[]

วิธีการ

วิธีการ ตัวปรับแต่ง คำอธิบาย
addChangeListener(func) เมื่อมีการเปลี่ยนแปลงเกิดขึ้นในพื้นที่ทำงาน ให้เรียกใช้ฟังก์ชัน โปรดทราบว่าอาจมีเหตุการณ์ล่าสุด 2-3 รายการอยู่แล้วในกลุ่ม ดังนั้นอาจมีการเรียก Listener การเปลี่ยนแปลงใหม่ด้วยเหตุการณ์ที่เกิดขึ้นไม่กี่มิลลิวินาทีก่อนที่จะเพิ่ม Listener การเปลี่ยนแปลง
addTopBlock(block) เพิ่มบล็อกลงในรายการบล็อกยอดนิยม
addTypedBlock(block) เพิ่มบล็อกลงในรายการบล็อกที่แบ่งตามประเภท
allInputsFilled(opt_shadowBlocksAreFilled) ตรวจสอบว่าอินพุตค่าและคำสั่งทั้งหมดในพื้นที่ทำงานเต็มไปด้วยบล็อกหรือไม่
clear() กำจัดบล็อกและความคิดเห็นทั้งหมดในพื้นที่ทำงาน
clearUndo() ล้างการเลิกทำ/ทำซ้ำสแต็ก
createVariable(name, opt_type, opt_id) สร้างตัวแปรพร้อมชื่อที่ตั้งไว้ ประเภทที่ไม่บังคับ และรหัสที่ไม่บังคับ
deleteVariableById(id) ลบตัวแปรตามรหัสที่ส่งและการใช้งานทั้งหมดจากพื้นที่ทำงานนี้ อาจแจ้งให้ผู้ใช้ยืนยัน
dispose() กำจัดพื้นที่ทำงานนี้ ยกเลิกการลิงก์จากองค์ประกอบ DOM ทั้งหมดเพื่อป้องกันข้อมูลรั่วไหล
fireChangeListener(event) เริ่มการทำงานของเหตุการณ์การเปลี่ยนแปลง
getAll() static ค้นหาพื้นที่ทำงานทั้งหมด
getAllBlocks(ordered) ค้นหาบล็อกทั้งหมดในพื้นที่ทํางาน บล็อกสามารถจัดเรียงได้ตามตำแหน่ง โดยสามารถเลือกจากบนลงล่าง (มีการให้น้ำหนักพิเศษแบบ LTR หรือ RTL เล็กน้อย)
getAllVariableNames() แสดงผลชื่อตัวแปรทั้งหมดทุกประเภท
getAllVariables() แสดงผลตัวแปรทุกประเภท
getBlockById(id) หาบล็อกในพื้นที่ทํางานนี้ด้วยรหัสที่ระบุ
getBlocksByType(type, ordered) ค้นหาบล็อกที่มีประเภทที่เกี่ยวข้องและส่งบล็อกเหล่านั้นกลับมา บล็อกสามารถจัดเรียงได้ตามตำแหน่ง โดยสามารถเลือกจากบนลงล่าง (มีการให้น้ำหนักพิเศษแบบ LTR หรือ RTL เล็กน้อย)
getById(id) static ค้นหาพื้นที่ทำงานที่มีรหัสที่ระบุ
getProcedureMap() แสดงผลแผนที่ของกระบวนการทั้งหมดในเวิร์กเพซ
getRootWorkspace()

แสดงผลพื้นที่ทำงานรูทของพื้นที่ทำงานนี้หากพื้นที่ทำงานมีระดับบนสุด

เช่น พื้นที่ทำงานในฟองอากาศขนาดเล็กและลูกโป่งพื้นที่ทำงานขนาดเล็กจะมีพื้นที่ทำงานระดับบนสุด

getTopBlocks(ordered) ค้นหาบล็อกระดับบนสุดและส่งคืน บล็อกสามารถจัดเรียงได้ตามตำแหน่ง โดยสามารถเลือกจากบนลงล่าง (มีการให้น้ำหนักพิเศษแบบ LTR หรือ RTL เล็กน้อย)
getVariable(name, opt_type) ค้นหาตัวแปรตามชื่อและแสดงผล แสดงผล Null หากไม่พบ
getVariableById(id) ค้นหาตัวแปรตามรหัสที่กำหนดและแสดงผลตัวแปร แสดงผล Null หากไม่พบ
getVariableMap() แสดงแมปของตัวแปรทั้งหมดในพื้นที่ทำงาน
getVariablesOfType(type) หาตัวแปรในประเภทที่ระบุ หากประเภทเป็น Null ระบบจะแสดงรายการตัวแปรที่มีประเภทสตริงว่างเปล่า
getVariableUsesById(id) หาการใช้งานทั้งหมดของตัวแปรที่กำหนดซึ่งระบุด้วยรหัส
getWidth() แสดงออฟเซ็ตแนวนอนของพื้นที่ทำงาน มีไว้สำหรับความเข้ากันได้กับ LTR/RTL ใน XML ไม่เกี่ยวข้องกับพื้นที่ทำงานแบบไม่มีส่วนหัว
hasBlockLimits() ตรวจสอบว่าพื้นที่ทำงานมีขีดจำกัดของจำนวนการบล็อกสูงสุด หรือจำนวนบล็อกสูงสุดของประเภทที่เจาะจงหรือไม่
isCapacityAvailable(typeCountsMap) ตรวจสอบว่ามีขีดจำกัดสำหรับบล็อกของจำนวนที่ระบุที่จะสร้างหรือไม่ หากจำนวนบล็อกทั้งหมดที่แสดงโดยแผนที่มีมากกว่าความจุที่เหลือทั้งหมด แผนที่จะแสดงค่าเท็จ หากจำนวนของประเภทมีค่ามากกว่าขีดจำกัดที่เหลือสำหรับประเภทนั้น ระบบจะแสดงผลเป็น "เท็จ"
newBlock(prototypeName, opt_id) รับบล็อกที่สร้างขึ้นใหม่
remainingCapacity() จำนวนบล็อกที่อาจเพิ่มไปยังพื้นที่ทำงานก่อนไปถึง maxBlocks
remainingCapacityOfType(type) จำนวนบล็อกของประเภทที่กำหนดซึ่งอาจเพิ่มไปยังพื้นที่ทำงานก่อนที่จะถึงจำนวนสูงสุดของอินสแตนซ์สูงสุดที่อนุญาตสำหรับประเภทนั้น
removeChangeListener(func) หยุดรับข้อมูลการเปลี่ยนแปลงของพื้นที่ทำงานนี้
removeTopBlock(block) นําการบล็อกออกจากรายการบล็อกยอดนิยม
removeTypedBlock(block) นําบล็อกออกจากรายการบล็อกที่ใส่ไว้ตามประเภท
renameVariableById(id, newName) เปลี่ยนชื่อตัวแปรโดยอัปเดตชื่อตัวแปรในแมปตัวแปร ระบุตัวแปรที่จะเปลี่ยนชื่อด้วยรหัสที่กำหนด
undo(ทำซ้ำ) เลิกทำหรือทำซ้ำการดำเนินการก่อนหน้า