Araç kutularını değiştirme

Uygulama, tek bir işlev çağrısıyla araç kutusunda bulunan blokları dilediğinde değiştirebilir:

workspace.updateToolbox(newTree);

İlk yapılandırma sırasında olduğu gibi, newTree bir düğüm ağacı, dize gösterimi veya JSON nesnesi olabilir. Tek kısıtlama, modun değiştirilememesidir. Yani, başlangıçta tanımlanan araç kutusunda kategoriler varsa yeni araç kutusunda da kategoriler olmalıdır (ancak kategoriler değişebilir). Benzer şekilde, başlangıçta tanımlanan araç kutusunda kategori yoksa yeni araç kutusunda da kategori olmayabilir.

Tek bir kategorinin içeriği şu yöntemlerle güncellenebilir:

var category = workspace.getToolbox().getToolboxItems()[0];
category.updateFlyoutContents(flyoutContents);

Burada flyoutContents, JSON kullanılarak tanımlanan blokların listesi, bir düğüm ağacı veya dize gösterimi olabilir.

Şu anda araç kutusunun güncellenmesinin bazı küçük kullanıcı arayüzü sıfırlamalarına neden olduğunu unutmayın:

  • Kategori içermeyen bir araç kutusunda, kullanıcı tarafından değiştirilen tüm alanlar (ör. açılır menü) varsayılan ayarlara geri döner.

Kategoriler ve blok grupları içeren bir ağacın canlı demosunu burada bulabilirsiniz.