blockly > Workspace

کلاس فضای کاری

کلاس برای یک فضای کاری این یک ساختار داده ای است که شامل بلوک ها است. هیچ رابط کاربری وجود ندارد و می توان بدون سر و صدا ایجاد کرد.

امضا:

export declare class Workspace implements IASTNodeLocation 

پیاده سازی: IASTNodeLocation

سازندگان

سازنده اصلاح کننده ها شرح
(سازنده)(opt_Options) یک نمونه جدید از کلاس Workspace می سازد

خواص

ویژگی اصلاح کننده ها تایپ کنید شرح
بررسی کننده اتصال IConnectionChecker
connectDBList ConnectionDB [] مجموعه ای از پایگاه های داده برای جستجوی سریع مکان های اتصال.
طرح بندی افقی بولی
شناسه رشته
isFlyout است readonly بولی آیا این فضای کاری سطحی برای پرواز است؟
isMutator readonly بولی آیا این فضای کاری سطح یک جهش دهنده است؟
MAX_UNDO عدد حداکثر تعداد رویدادهای لغو در پشته. 0 undo را خاموش می کند، Infinity آن را روی نامحدود تنظیم می کند.
گزینه ها گزینه ها
redoStack_ protected خلاصه []
ارائه شده است بولی اگر فضای کاری قابل مشاهده باشد true و اگر بدون هد باشد false برمی‌گرداند.
RTL بولی
SCAN_ANGLE static عدد زاویه دور از افقی برای جارو کردن برای بلوک. ترتیب اجرا به طور کلی از بالا به پایین است، اما یک زاویه کوچک اسکن را تغییر می دهد تا کمی سوگیری از چپ به راست ایجاد کند (در RTL معکوس شده است). واحدها بر حسب درجه هستند. ببینید: https://tvtropes.org/pmwiki/pmwiki.php/Main/DiagonalBilling
موقعیت جعبه ابزار جعبه ابزار.موقعیت
undoStack_ protected خلاصه []

مواد و روش ها

روش اصلاح کننده ها شرح
addChangeListener (عملکرد) هنگامی که چیزی در این فضای کاری تغییر می کند، یک تابع را فراخوانی کنید. توجه داشته باشید که ممکن است چند رویداد اخیر در پشته وجود داشته باشد. بنابراین شنونده تغییرات جدید ممکن است با رویدادهایی که چند میلی ثانیه قبل از اضافه شدن شنونده تغییر رخ داده اند فراخوانی شود.
addTopBlock(block) یک بلوک را به لیست بلوک های برتر اضافه می کند.
addTypedBlock(block) یک بلوک را به لیست بلوک های کلید زده شده بر اساس نوع اضافه کنید.
allInputsFilled(opt_shadowBlocksAreFilled) بررسی می کند که آیا تمام ورودی های مقدار و دستورات در فضای کاری با بلوک ها پر شده اند یا خیر.
واضح () تمام بلوک ها و نظرات موجود در فضای کاری را دور بریزید.
clearUndo() پشته های لغو/دوباره را پاک کنید.
createVariable (نام، نوع_opt، opt_id) یک متغیر با نام مشخص، نوع اختیاری و شناسه اختیاری ایجاد کنید.
deleteVariableById(id) یک متغیر توسط شناسه پاس شده و همه کاربردهای آن را از این فضای کاری حذف کنید. ممکن است از کاربر برای تایید درخواست کند.
در معرض قرار دادن() این فضای کاری را دور بریزید. برای جلوگیری از نشت حافظه، همه عناصر DOM را قطع کنید.
fireChangeListener(رویداد) آتش یک رویداد تغییر.
getAll() static همه فضاهای کاری را پیدا کنید.
getAllBlocks (سفارش شده) همه بلوک ها را در فضای کاری پیدا کنید. بلوک ها به صورت اختیاری بر اساس موقعیت مرتب می شوند. از بالا به پایین (با کمی تعصب LTR یا RTL).
getAllVariableNames() همه نام‌های متغیر از همه نوع را برمی‌گرداند.
getAllVariables() همه متغیرها از همه نوع را برگردانید.
getBlockById(id) بلوک را در این فضای کاری با شناسه مشخص شده پیدا کنید.
getBlocksByType (نوع، سفارش داده شده) بلوک ها را با نوع مرتبط پیدا کرده و آنها را برمی گرداند. بلوک ها به صورت اختیاری بر اساس موقعیت مرتب می شوند. از بالا به پایین (با کمی تعصب LTR یا RTL).
getById(id) static فضای کاری را با شناسه مشخص شده پیدا کنید.
getProcedureMap() نقشه همه رویه‌ها را در محیط کار برمی‌گرداند.
getRootWorkspace()

اگر فضای کاری دارای والدین باشد، فضای کاری ریشه این فضای کاری را برمی‌گرداند.

به عنوان مثال، فضاهای کاری در فلای اوت ها و حباب های فضای کاری کوچک دارای فضای کاری والد هستند.

getTopBlocks (سفارش شده) بلوک های سطح بالا را پیدا کرده و آنها را برمی گرداند. بلوک ها به صورت اختیاری بر اساس موقعیت مرتب می شوند. از بالا به پایین (با کمی تعصب LTR یا RTL).
getVariable (نام، opt_type) متغیر را با نام داده شده پیدا کنید و آن را برگردانید. در صورت یافت نشدن، پوچ را برگردانید.
getVariableById(id) متغیر را با شناسه داده شده پیدا کنید و آن را برگردانید. در صورت یافت نشدن، پوچ را برگردانید.
getVariableMap() نقشه همه متغیرهای موجود در فضای کاری را برگردانید.
getVariablesOfType(نوع) متغیر را با نوع مشخص شده پیدا کنید. اگر نوع null است، لیستی از متغیرها را با نوع رشته خالی برگردانید.
getVariableUsesById(id) تمام کاربردهای متغیر داده شده را که با ID مشخص می شود، پیدا کنید.
getWidth() افست افقی فضای کاری را برمی گرداند. برای سازگاری LTR/RTL در XML در نظر گرفته شده است. برای فضای کاری بدون هد مناسب نیست.
hasBlockLimits() بررسی می‌کند که آیا فضای کاری محدودیتی برای حداکثر تعداد بلوک‌ها یا حداکثر تعداد بلوک‌های انواع خاص دارد یا خیر.
isCapacityAvailable (typeCountsMap) بررسی کنید که آیا ظرفیت باقی مانده برای بلوک های تعداد داده شده ایجاد می شود یا خیر. اگر تعداد کل بلوک های نشان داده شده توسط نقشه بیشتر از کل ظرفیت باقیمانده باشد، false را برمی گرداند. اگر یک تعداد نوع بیشتر از ظرفیت باقیمانده برای آن نوع باشد، false برمی‌گرداند.
newBlock(PrototypeName, opt_id) یک بلوک جدید ایجاد کنید.
باقی مانده ظرفیت() تعداد بلوک هایی که ممکن است قبل از رسیدن به maxBlocks به فضای کاری اضافه شوند.
باقیمانده ظرفیت نوع (نوع) تعداد بلوک هایی از نوع داده شده که ممکن است قبل از رسیدن به حداکثر مقدار مجاز برای آن نوع به فضای کاری اضافه شوند.
removeChangeListener(func) گوش دادن به تغییرات این فضای کاری را متوقف کنید.
removeTopBlock(block) یک بلوک را از لیست بلوک های برتر حذف می کند.
removeTypedBlock(block) یک بلوک را از لیست بلوک های کلید زده شده بر اساس نوع حذف کنید.
renameVariableById(id, newName) با به روز رسانی نام متغیر در نقشه متغیر، نام آن را تغییر دهید. متغیری را برای تغییر نام با شناسه داده شده شناسایی کنید.
لغو (دوباره) عمل قبلی را لغو یا دوباره انجام دهید.