Status blok

Instance blok memiliki sejumlah properti yang mengonfigurasi perilakunya terhadap pengguna. Meskipun dapat ditetapkan dalam definisi blok, biasanya digunakan untuk membatasi blok di ruang kerja guna mencerminkan properti tertentu dari domain (misalnya, ada tepat satu peristiwa 'mulai'), atau memfokuskan upaya pengguna (misalnya, tutorial).

Status dapat dihapus

block.setDeletable(false);

Jika disetel ke false, pengguna tidak akan dapat menghapus pemblokiran. Blok secara default dapat dihapus di ruang kerja yang dapat diedit.

Blok apa pun (bahkan yang tidak dapat dihapus) dapat dihapus secara terprogram:

block.dispose();

Status yang dapat diedit

block.setEditable(false);

Jika disetel ke false, pengguna tidak akan dapat mengubah kolom blok (misalnya, dropdown dan input teks). Blok default dapat diedit di ruang kerja yang dapat diedit.

Status dapat dipindahkan

block.setMovable(false);

Jika disetel ke false, pengguna tidak akan dapat memindahkan blok secara langsung. Blok yang tidak dapat dipindahkan yang merupakan turunan dari blok lain tidak dapat dipisahkan dari blok tersebut, meskipun akan berpindah dengan induknya jika induknya dipindahkan. Blok secara default dapat dipindahkan di ruang kerja yang dapat diedit.

Blok apa pun (bahkan yang tidak dapat dipindahkan) dapat dipindahkan secara terprogram setelah berada di ruang kerja.

block.moveBy(dx, dy)

Posisi awal untuk blok di ruang kerja secara default adalah (0, 0).

Blokir data

block.data = '16dcb3a4-bd39-11e4-8dfc-aa07a5b093db';

Data adalah string opsional dan arbitrer yang dilampirkan ke blok. Saat blok diserialisasi, string data diserialisasi bersamanya. Hal ini termasuk saat blok diduplikasi atau disalin/ditempel.

Biasanya, ini digunakan untuk mengaitkan blok dengan resource eksternal.

Saat diserialisasi ke JSON, data disimpan sebagai properti tingkat teratas dalam blok:

{
  "type": "my_block",
  "data": "16dcb3a4-bd39-11e4-8dfc-aa07a5b093db",
  // etc..
}

Saat diserialisasi ke XML (sistem serialisasi lama yang tidak digunakan), string data disimpan dalam tag <data></data> di dalam blok:

<block type="my_block">
  <data>16dcb3a4-bd39-11e4-8dfc-aa07a5b093db</data>
  <!-- etc... -->
</block>