Kelas flyout
Kelas untuk flyout.
Tanda Tangan:
export declare abstract class Flyout extends DeleteArea implements IAutoHideable, IFlyout
Memperluas: DeleteArea
Implementasi: IAutoHideable, IFlyout
Konstruktor
Konstruktor | Pengubah | Deskripsi |
---|---|---|
(konstruktor)(workspaceOptions) | Membuat instance baru dari class Flyout |
Properti
Properti | Pengubah | Jenis | Deskripsi |
---|---|---|---|
autoClose | boolean | Apakah {i>flyout<i} menutup secara otomatis ketika sebuah blok dibuat? | |
buttons_ | protected |
FlyoutButton[] | Daftar tombol yang terlihat. |
isi | protected |
{i>FlyoutItem[] | Daftar tombol dan blok yang terlihat. |
CORNER_RADIUS | readonly |
angka | Radius sudut latar belakang flyout. |
dragAngleRange_ | protected |
angka | Rentang sudut tarik dari {i>flyout<i} dianggap "menarik menuju ruang kerja". Tarikan yang berada dalam batas sekian derajat dari garis ortogonal ke tepi flyout dianggap sebagai "seret menuju ruang kerja". |
FlyoutItemType | static |
typeof FlyoutItemType | Jenis item konten {i>flyout<i}. |
GAP_X | readonly |
angka | |
GAP_Y | readonly |
angka | |
height_ | protected |
angka | Ketinggian flyout. |
MARGIN | readonly |
angka | |
rectMap_ | protected |
WeakMap<BlockSvg, SVGElement> | |
RTL | boolean | ||
SCROLLBAR_MARGIN | readonly |
angka | Padding atas/bawah antara scrollbar dan tepi latar belakang flyout. |
svgBackground_ | protected |
SVGPathElement | null | Jalur di sekitar latar belakang menu flyout, yang akan diisi dengan warna latar belakang. |
svgGroup_ | protected |
SVGGElement | null | Grup root SVG untuk tombol atau label. |
tabWidth_ |
|
angka | |
toolboxPosition_ | protected |
angka | |
width_ | protected |
angka | Lebar menu flyout. |
workspace_ | protected |
WorkspaceSvg |
Metode
Metode | Pengubah | Deskripsi |
---|---|---|
addBlockListeners_(root, block, rect) | protected |
Menambahkan pemroses ke blok yang telah ditambahkan ke flyout. |
autoHide(onlyClosePopups) | Otomatis menyembunyikan flyout jika merupakan flyout yang tertutup otomatis. | |
blockIsRecyclable_(_block) | protected |
Menampilkan apakah blok yang ditentukan dapat didaur ulang atau tidak. |
createDom(tagName) | Membuat DOM flyout. Hanya perlu dipanggil sekali. Flyout bisa muncul sebagai elemen SVG-nya sendiri atau menjadi elemen g yang disarangkan di dalam elemen SVG yang terpisah. | |
createRect_(blok, x, y, blockHW, indeks) | protected |
Membuat dan menempatkan persegi panjang yang sesuai dengan blok yang diberikan. |
dispose() | Buang flyout ini. Batalkan tautan dari semua elemen DOM untuk mencegah kebocoran memori. | |
getContents() | Dapatkan daftar tombol dan blok flyout saat ini. | |
getFlyoutScale() | Dapatkan skala (tingkat zoom) menu flyout. Secara default, nilai ini cocok dengan skala ruang kerja target, tetapi hal ini dapat diganti. | |
getHeight() | Dapatkan tingginya flyout. | |
getWidth() | Mendapatkan lebar flyout. | |
getWorkspace() | Tambahkan ruang kerja di dalam flyout. | |
getX() | abstract |
Menghitung koordinat x untuk posisi flyout. |
getY() | abstract |
Menghitung koordinat y untuk posisi flyout. |
hide() | Sembunyikan dan kosongkan {i>flyout<i}. | |
init(targetWorkspace) | Melakukan inisialisasi flyout. | |
initFlyoutButton_(tombol, x, y) | protected |
Melakukan inisialisasi tombol yang diberikan: memindahkannya ke lokasi yang benar, menambahkan pemroses, dll. |
isDragTowardWorkspace(currentDragDeltaXY) | abstract |
Tentukan apakah delta tarik mengarah ke ruang kerja, berdasarkan posisi dan orientasi {i>flyout<i}. Ini digunakan dalam calculateDragIntention_ untuk menentukan apakah blok baru harus dibuat atau apakah flyout harus di-scroll. |
isVisible() | Apakah menu flyout terlihat? | |
layout_(isi, kesenjangan) |
|
Susun blok di {i>flyout<i}. |
moveRectToBlock_(persegi, blokir) | protected |
Pindahkan persegi panjang untuk duduk tepat di belakang balok, dengan mempertimbangkan tab, topi, dan tonjolan lain yang kita buat. |
position() | abstract |
Memosisikan {i>flyout<i}. |
positionAt_(lebar, tinggi, x, y) | protected |
Mengupdate tampilan berdasarkan koordinat yang dihitung di position(). |
perubahan posisi/geometri() | Mengubah posisi/geometri blok dan posisinya. | |
reflowInternal_() |
|
Menghitung tinggi {i>flyout<i}. Tempatkan matras di bawah setiap blok. Untuk RTL: Susun tata letak blok sejajar dengan kanan. |
scrollToStart() | abstract |
Scroll menu flyout ke awal konten. |
serializeBlock(block) | protected |
Menserialisasi blok ke JSON. |
setAutoClose(autoClose) | Menetapkan apakah {i>flyout<i} ini ditutup secara otomatis saat blok ditarik, ruang kerja diklik, dll., atau tidak. | |
setContainerVisible(visible) | Tetapkan apakah container flyout ini terlihat. | |
setContents(contents) | Menyimpan daftar tombol dan blok pada {i>flyout<i}. | |
setMetrics_(xyRatio) |
|
Menyetel terjemahan menu flyout agar sesuai dengan scrollbar. |
setVisible(visible) | Atur apakah menu flyout terlihat atau tidak. Nilai true (benar) tidak selalu berarti bahwa flyout ditampilkan. Label ini dapat disembunyikan karena penampungnya tersembunyi. | |
show(flyoutDef) | Tampilkan dan isi menu flyout. | |
wheel_(e) |
|
Scroll menu flyout. |