تحتوي عناصر الحظر على عدد من الخصائص التي تحدّد طريقة تفاعلها مع المستخدم. على الرغم من إمكانية ضبط هذه القيود في تعريف الكتلة، إلا أنّها تُستخدم بشكل أكثر شيوعًا لتقييد الكتل في مساحة العمل من أجل عرض خصائص معيّنة للنطاق (على سبيل المثال، هناك حدث "بدء" واحد بالضبط)، أو لتركيز جهود المستخدم (على سبيل المثال، برنامج تعليمي).
حالة قابلة للحذف
block.setDeletable(false);
عند ضبط السياسة على false
، لن يتمكّن المستخدم من حذف الحظر. يتم ضبط الإعداد التلقائي على إمكانية حذف الحظر في مساحة عمل قابلة للتعديل.
يمكن حذف أيّ كتلة (حتى تلك التي لا يمكن حذفها) آليًا:
block.dispose();
الحالة القابلة للتعديل
block.setEditable(false);
عند ضبطها على false
، لن يتمكّن المستخدم من تغيير حقول الكتلة (مثل القوائم المنسدلة وإدخالات النصوص). تكون الحقول قابلة للتعديل تلقائيًا في مساحة عمل قابلة للتعديل.
الحالة القابلة للنقل
block.setMovable(false);
عند ضبطها على false
، لن يتمكّن المستخدم من نقل البلوك مباشرةً. لا يمكن فصل كتلة غير قابلة للنقل عن كتلة أخرى إذا كانت تابعة لها، ولكن سيتم نقلها مع الكتلة الرئيسية إذا تم نقل الكتلة الرئيسية. تكون الحِزم قابلة للنقل تلقائيًا في مساحة عمل قابلة للتعديل.
يمكن نقل أيّ كتلة (حتى تلك التي لا يمكن نقلها) آليًا بعد وضعها في مساحة عمل.
block.moveBy(dx, dy)
يكون موضع البدء التلقائي لكتلة في مساحة العمل هو (0, 0)
.
حظر البيانات
block.data = '16dcb3a4-bd39-11e4-8dfc-aa07a5b093db';
البيانات هي سلسلة اختيارية وعشوائية يتم إرفاقها بالكتلة. عند تسلسل الحظر، يتم تسلسل سلسلة البيانات معه. ويشمل ذلك الحالات التي يتم فيها تكرار الفقرة أو نسخها ولصقها.
يُستخدَم هذا الإجراء غالبًا لربط أحد الأقسام بمصدر خارجي.
عند تحويل البيانات إلى تنسيق JSON، يتم تخزينها كسمة من المستوى الأعلى في الحظر:
{
"type": "my_block",
"data": "16dcb3a4-bd39-11e4-8dfc-aa07a5b093db",
// etc..
}
عند تحويل السلسلة إلى XML (نظام التحويل التسلسلي القديم iceboxed)، يتم تخزين سلسلة البيانات في علامة <data></data>
ضمن الحظر:
<block type="my_block">
<data>16dcb3a4-bd39-11e4-8dfc-aa07a5b093db</data>
<!-- etc... -->
</block>