ชั้นเรียน Workspace
ชั้นเรียนสำหรับพื้นที่ทำงาน นี่คือโครงสร้างข้อมูลที่มีบล็อก ไม่มี UI และสร้างได้โดยไม่ต้องมีส่วนหัว
ลายเซ็น:
export declare class Workspace
ผู้ผลิต
| ผู้ผลิต | คีย์ตัวปรับแต่ง | คำอธิบาย |
|---|---|---|
| (constructor)(opt_options) | สร้างอินสแตนซ์ใหม่ของคลาส Workspace |
พร็อพเพอร์ตี้
| พร็อพเพอร์ตี้ | คีย์ตัวปรับแต่ง | ประเภท | คำอธิบาย |
|---|---|---|---|
| connectionChecker | IConnectionChecker | ||
| connectionDBList | ConnectionDB[] | ชุดฐานข้อมูลสำหรับการค้นหาตำแหน่งการเชื่อมต่ออย่างรวดเร็ว | |
| horizontalLayout | บูลีน | ||
| id | สตริง | ||
| isFlyout | readonly |
บูลีน | พื้นที่ทำงานนี้เป็นพื้นผิวสำหรับเมนูแบบเลื่อนลงใช่ไหม |
| isMutator | readonly |
บูลีน | พื้นที่ทำงานนี้เป็นพื้นผิวสำหรับ Mutator ใช่ไหม |
| MAX_UNDO | ตัวเลข | จำนวนเหตุการณ์เลิกทำสูงสุดในสแต็ก 0 จะปิดการเลิกทำ ส่วน Infinity จะตั้งค่าให้เลิกทำได้ไม่จำกัด |
|
| ตัวเลือก | ตัวเลือก | ||
| redoStack_ | protected |
บทคัดย่อ[] | |
| rendered | บูลีน | แสดงผล true หากพื้นที่ทำงานมองเห็นได้ และ false หากเป็นแบบไม่มีส่วนหัว |
|
| RTL | บูลีน | ||
| SCAN_ANGLE | static |
ตัวเลข | เอียงออกจากแนวนอนเพื่อกวาดหาบล็อก โดยทั่วไปแล้ว ลำดับการดำเนินการจะเริ่มจากบนลงล่าง แต่การเปลี่ยนมุมเล็กน้อยจะทำให้การสแกนมีแนวโน้มจากซ้ายไปขวาเล็กน้อย (กลับด้านใน RTL) หน่วยเป็นองศา ดูที่ https://tvtropes.org/pmwiki/pmwiki.php/Main/DiagonalBilling |
| toolboxPosition | toolbox.Position | ||
| undoStack_ | protected |
บทคัดย่อ[] |
เมธอด
| วิธีการ | คีย์ตัวปรับแต่ง | คำอธิบาย |
|---|---|---|
| addChangeListener(func) | เรียกใช้ฟังก์ชันเมื่อมีการเปลี่ยนแปลงในพื้นที่ทำงานนี้ โปรดทราบว่าอาจมีเหตุการณ์ล่าสุดบางรายการอยู่ในสแต็กแล้ว ดังนั้น ระบบอาจเรียกใช้ 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) | ค้นหาบล็อกทั้งหมดในพื้นที่ทำงาน คุณเลือกจัดเรียงบล็อกตามตำแหน่งได้ โดยเรียงจากบนลงล่าง (มีอคติเล็กน้อยจากซ้ายไปขวาหรือขวาไปซ้าย) | |
| getAllVariableNames() | แสดงชื่อตัวแปรทั้งหมดของทุกประเภท | |
| getAllVariables() | แสดงตัวแปรทั้งหมดของทุกประเภท | |
| getBlockById(id) | ค้นหาบล็อกในพื้นที่ทำงานนี้ที่มีรหัสที่ระบุ | |
| getBlocksByType(type, ordered) | ค้นหาบล็อกที่มีประเภทที่เชื่อมโยงและแสดงบล็อกเหล่านั้น คุณเลือกจัดเรียงบล็อกตามตำแหน่งได้ โดยเรียงจากบนลงล่าง (มีอคติเล็กน้อยจากซ้ายไปขวาหรือขวาไปซ้าย) | |
| getById(id) | static |
ค้นหาพื้นที่ทำงานที่มีรหัสที่ระบุ |
| getCommentById(id) | ค้นหาความคิดเห็นในพื้นที่ทำงานนี้ด้วยรหัสที่ระบุ | |
| getPotentialVariableMap() | ส่งคืนแผนที่ตัวแปรที่มีตัวแปร "มีโอกาส" ซึ่งจะอยู่ในเมนูแบบเลื่อนลงแต่ไม่อยู่ในพื้นที่ทำงาน | |
| getProcedureMap() | แสดงแผนที่ของกระบวนการทั้งหมดในพื้นที่ทำงาน | |
| getRootWorkspace() | แสดงพื้นที่ทำงานระดับบนสุดของพื้นที่ทำงานนี้ หากพื้นที่ทำงานมีพื้นที่ทำงานระดับบนสุด เช่น พื้นที่ทำงานในเมนูแบบเลื่อนลงและบับเบิลพื้นที่ทำงานขนาดเล็กจะมีพื้นที่ทำงานระดับบน |
|
| getTopBlocks(ordered) | ค้นหาบล็อกระดับบนสุดและแสดงผล คุณเลือกจัดเรียงบล็อกตามตำแหน่งได้ โดยเรียงจากบนลงล่าง (มีอคติเล็กน้อยจากซ้ายไปขวาหรือขวาไปซ้าย) | |
| getVariable(name, opt_type) | ค้นหาตัวแปรตามชื่อที่ระบุแล้วส่งคืน แสดงผล Null หากไม่พบ | |
| getVariableById(id) | ค้นหาตัวแปรตามรหัสที่ระบุและแสดงผล แสดงผล Null หากไม่พบ | |
| getVariableMap() | แสดงแผนที่ของตัวแปรทั้งหมดในพื้นที่ทำงาน | |
| getVariableMapClass() | protected |
|
| getVariablesOfType(type) | ค้นหาตัวแปรที่มีประเภทที่ระบุ หากประเภทเป็น Null ให้แสดงรายการตัวแปรที่มีประเภทสตริงว่าง | |
| getVariableUsesById(id) | ค้นหาการใช้งานตัวแปรที่ระบุทั้งหมด ซึ่งระบุด้วยรหัส | |
| getWidth() | แสดงออฟเซ็ตแนวนอนของพื้นที่ทำงาน มีไว้สำหรับความเข้ากันได้ของ LTR/RTL ใน XML ไม่เกี่ยวข้องกับพื้นที่ทำงานแบบไม่มีส่วนหัว | |
| hasBlockLimits() | ตรวจสอบว่าพื้นที่ทำงานมีขีดจำกัดเกี่ยวกับจำนวนบล็อกสูงสุดหรือจำนวนบล็อกสูงสุดของประเภทที่เฉพาะเจาะจงหรือไม่ | |
| isCapacityAvailable(typeCountsMap) | ตรวจสอบว่ามีความจุเหลือสำหรับสร้างบล็อกที่มีจำนวนตามที่ระบุหรือไม่ หากจำนวนบล็อกทั้งหมดที่แผนที่แสดงมากกว่าความจุที่เหลือทั้งหมด ฟังก์ชันจะแสดงผลเป็นเท็จ หากจำนวนประเภทมากกว่าความจุที่เหลือสำหรับประเภทนั้น ระบบจะแสดงผลเป็นเท็จ | |
| isReadOnly() | แสดงผลว่าพื้นที่ทำงานนี้อยู่ในโหมดอ่านอย่างเดียวหรือไม่ | |
| newBlock(prototypeName, opt_id) | รับบล็อกที่สร้างขึ้นใหม่ | |
| newComment(id) | รับความคิดเห็นที่สร้างขึ้นใหม่ | |
| remainingCapacity() | จำนวนบล็อกที่เพิ่มลงในพื้นที่ทำงานได้ก่อนถึง maxBlocks | |
| remainingCapacityOfType(type) | จำนวนบล็อกของประเภทที่ระบุซึ่งอาจเพิ่มลงในพื้นที่ทำงานก่อนที่จะถึง maxInstances ที่อนุญาตสำหรับประเภทนั้น | |
| removeChangeListener(func) | หยุดฟังการเปลี่ยนแปลงของพื้นที่ทำงานนี้ | |
| removeTopBlock(block) | นำบล็อกออกจากรายการบล็อกยอดนิยม | |
| removeTypedBlock(block) | นำบล็อกออกจากรายการบล็อกที่จัดเรียงตามประเภท | |
| renameVariableById(id, newName) | เปลี่ยนชื่อตัวแปรโดยอัปเดตชื่อในแผนที่ตัวแปร ระบุตัวแปรที่จะเปลี่ยนชื่อด้วยรหัสที่ระบุ | |
| setIsReadOnly(readOnly) | กำหนดว่าพื้นที่ทำงานนี้จะอยู่ในโหมดอ่านอย่างเดียวหรือไม่ | |
| sortByOrigin(a, b) | protected |
จัดเรียงองค์ประกอบที่ล้อมรอบในพื้นที่ทำงานตามตำแหน่งสัมพัทธ์จากบนลงล่าง (มีค่า LTR หรือ RTL เล็กน้อย) |
| เลิกทำ(ทำซ้ำ) | เลิกทำหรือทำซ้ำการดำเนินการก่อนหน้า |