Strategi tarik blok adalah objek yang menentukan cara blok menangani tarik. Aplikasi tersebut menerapkan logika untuk membuat blok menjadi dapat ditarik. Dengan membuat strategi tarik blok baru, Anda dapat mengubah cara blok menangani tarik tanpa harus berurusan dengan pembuatan opsi kustom yang dapat dipilih, atau menangani pemilihan.
Misalnya, Anda mungkin ingin blok Anda diduplikasi saat menarik, bukan menarik seperti biasa. Strategi tarik blok memungkinkan Anda melakukannya.
Strategi tarik memiliki semua metode yang sama seperti IDraggable
,
selain metode getRelativeToSurfaceXY
.
Penerapan
Untuk membuat strategi tarik, Anda harus mengimplementasikan
antarmuka IDragStrategy
. Hal ini memerlukan semua metode yang sama seperti antarmuka IDraggable
, kecuali untuk metode getRelativeToSurfaceXY
, yang sudah diterapkan oleh blok tersebut.
Anda dapat mengikuti
petunjuk untuk mengimplementasikan elemen yang dapat ditarik guna
mengimplementasikan strategi tarik, tetapi lewati implementasi getRelativeToSurfaceXY()
.
Penggunaan
Untuk menggunakan strategi tarik kustom, Anda harus menerapkan strategi tarik ke setiap
instance blok. Anda dapat melakukannya dalam metode init
blok Anda, dengan
memanggil setDragStrategy
.
Blockly.Blocks['my_block'] = {
init: function() {
// Other initialization...
this.setDragStrategy(new MyDragStrategy());
// Other initialization...
}
}