blockly

pakiet blockly

Zajęcia

Klasa Opis
Blokowanie Klasa dla jednego bloku. Zwykle nie jest wywoływana bezpośrednio. Zalecane jest użycie workspace.newBlock().
BlockFlyoutInflater Klasa odpowiedzialna za tworzenie bloków wysuwanych.
BlockNavigationPolicy Zestaw reguł sterujących nawigacją za pomocą klawiatury z poziomu bloku.
BlockSvg Klasa reprezentacji SVG bloku. Zwykle nie jest wywoływana bezpośrednio. Zalecane jest użycie workspace.newBlock().
ButtonFlyoutInflater Klasa odpowiedzialna za tworzenie przycisków wysuwanych menu.
CodeGenerator Klasa generatora kodu, która tłumaczy bloki na język.
CollapsibleToolboxCategory Klasa dla kategorii w przyborniku, którą można zwinąć.
ComponentManager Menedżer wszystkich elementów zarejestrowanych w obszarze roboczym.
Połączenie Klasa połączenia między blokami.
ConnectionChecker Klasa logiki sprawdzania typu połączenia.
ConnectionDB Baza danych połączeń. Połączenia są przechowywane w kolejności ich komponentu pionowego. Dzięki temu połączenia w danym obszarze można szybko wyszukiwać za pomocą wyszukiwania binarnego.
ConnectionNavigationPolicy Zestaw reguł sterujących nawigacją za pomocą klawiatury z połączenia.
ContextMenuRegistry Klasa rejestrująca pozycje menu kontekstowego. Ma to być pojedynczy obiekt. Nie twórz nowej instancji. Dostęp do tej klasy uzyskuj tylko z poziomu ContextMenuRegistry.registry.
DeleteArea Klasa abstrakcyjna komponentu, który może usunąć blok lub dymek upuszczony na niego.
DragTarget Klasa abstrakcyjna komponentu z niestandardowym działaniem, gdy blok lub dymek jest przeciągany nad nim lub upuszczany na nim.
FieldCheckbox Klasa pola wyboru.
FieldDropdown Klasa edytowalnego pola rozwijanego.
FieldImage Klasa obrazu w bloku.
FieldLabel Klasa dla nieedytowalnego pola tekstowego, którego nie można serializować.
FieldLabelSerializable Klasa dla nieedytowalnego, serializowalnego pola tekstowego.
FieldNavigationPolicy Zestaw reguł sterujących nawigacją za pomocą klawiatury z pola.
FieldNumber Klasa edytowalnego pola liczbowego.
FieldTextInput Klasa edytowalnego pola tekstowego.
FieldVariable Klasa pola rozwijanego zmiennej.
FlyoutButton Klasa przycisku lub etykiety w wyskakującym okienku.
FlyoutButtonNavigationPolicy Zestaw reguł sterujących nawigacją za pomocą klawiatury z poziomu przycisku wysuwanego menu.
FlyoutItem Reprezentacja elementu wyświetlanego w wyskakującym okienku.
FlyoutMetricsManager Oblicza dane obszaru roboczego wysuwanego menu. Dane te służą głównie do określania rozmiaru pasków przewijania w wyskakującym okienku.
FlyoutNavigationPolicy Ogólne zasady nawigacji, które umożliwiają poruszanie się między elementami w wyskakującym menu.
FlyoutNavigator
FlyoutSeparator Reprezentacja odstępu między elementami w wyskakującym okienku.
FlyoutSeparatorNavigationPolicy Zestaw reguł sterujących nawigacją za pomocą klawiatury z poziomu separatora wysuwanego menu. Jest to element zastępczy, który nie wykonuje żadnej operacji, ponieważ do separatorów wysuwanych nie można przejść.
FocusableTreeTraverser Narzędzie pomocnicze dla implementacji IFocusableTree, które ułatwia typowe przechodzenie po drzewie.
FocusManager

Singleton na stronie, który zarządza fokusem Blockly w co najmniej 1 obiekcie IFocusableTree i dwukierunkowo synchronizuje ten fokus z DOM.

Dzwoniący, którzy chcą wyraźnie zmienić fokus wprowadzania danych w przypadku wybranych komponentów Blockly na stronie, powinni używać funkcji fokusu w tym menedżerze.

Menedżer jest odpowiedzialny za obsługę zdarzeń związanych z ogniskiem z DOM (które mogą wynikać z kliknięć elementów strony przez użytkowników) i zapewnienie, że odpowiednie węzły IFocusableNode są wyraźnie oznaczone jako aktywnie lub pasywnie wyróżnione w taki sam sposób, w jaki byłoby to reprezentowane przez wywołania funkcji focusNode().

Gest Klasa dla jednego gestu.
Siatka Klasa siatki obszaru roboczego.
HorizontalFlyout Klasa wysuwanego menu.
Wejście Klasa danych wejściowych z polami opcjonalnymi.
InsertionMarkerPreviewer
KeyboardNavigationController Klasa KeyboardNavigationController odpowiada za koordynowanie zachowania nawigacji za pomocą klawiatury w całym Blockly, np. włączanie i wyłączanie pełnej wizualizacji kursora.
LabelFlyoutInflater Klasa odpowiedzialna za tworzenie etykiet wysuwanych.
LineCursor Klasa kursora linii.
Znacznik Klasa znacznika. Jest używany w nawigacji za pomocą klawiatury do zapisywania lokalizacji w abstrakcyjnym drzewie składniowym Blockly.
MarkerManager Klasa do zarządzania wieloma markerami i kursorem w obszarze roboczym.
Menu Podstawowa klasa menu.
MenuItem Klasa reprezentująca element w menu.
MetricsManager Menedżer wszystkich obliczeń danych obszaru roboczego.
Nazwy Klasa bazy danych nazw encji (zmiennych, procedur itp.).
Navigator Klasa odpowiedzialna za określanie, gdzie ma się przenieść zaznaczenie w odpowiedzi na polecenia nawigacji za pomocą klawiatury.
Opcje Analizuj opcje określone przez użytkownika, używając rozsądnych wartości domyślnych w przypadku, gdy zachowanie nie jest określone.
RenderedConnection Klasa połączenia między blokami, które mogą być renderowane na ekranie.
Pasek przewijania Klasa czystego paska przewijania SVG. Ta technika zapewnia działanie paska przewijania, ale może on nie wyglądać ani nie działać jak paski przewijania systemu.
ScrollbarPair Klasa dla pary pasków przewijania. poziome i pionowe.
SeparatorFlyoutInflater Klasa odpowiedzialna za tworzenie separatorów w wyskakujących menu.
ShortcutRegistry Klasa rejestrująca skróty klawiszowe. Ma to być pojedynczy obiekt. Nie twórz nowej instancji. Dostęp do tej klasy uzyskuj tylko z poziomu ShortcutRegistry.registry.
Motyw Klasa motywu.
ThemeManager Klasa do przechowywania i aktualizowania motywu obszaru roboczego oraz komponentów interfejsu.
Toast Klasa, która umożliwia wyświetlanie i zamykanie tymczasowych powiadomień.
Toolbox Class for a Toolbox. Tworzy DOM przybornika.
ToolboxCategory Klasa kategorii w przyborniku.
ToolboxItem Klasa elementu w przyborniku.
ToolboxSeparator Klasa separatora narzędzi. Jest to cienka linia wizualna, która pojawia się na pasku narzędzi. Nie można wejść w interakcję z tym elementem.
Kosz na śmieci Klasa kosza na śmieci.
UnattachedFieldError Reprezentuje błąd, w którym pole próbuje uzyskać dostęp do bloku lub informacji o nim, zanim zostanie do niego dołączone.
VariableMap Klasa mapy zmiennych. Zawiera strukturę danych słownika, w której typy zmiennych są kluczami, a listy zmiennych – wartościami. Lista zmiennych to typ wskazany przez klucz.
VariableModel Klasa dla modelu zmiennych. Zawiera informacje o zmiennej, w tym nazwę, identyfikator i typ.
VerticalFlyout Klasa wysuwanego menu.
Workspace Zajęcia w obszarze roboczym. Jest to struktura danych zawierająca bloki. Nie ma interfejsu użytkownika i można go utworzyć bez interfejsu.
WorkspaceAudio Klasa do wczytywania, przechowywania i odtwarzania dźwięku w przestrzeni roboczej.
WorkspaceDragger Klasa elementu do przeciągania obszaru roboczego. Przesuwa obszar roboczy, gdy jest przeciągany myszą lub palcem.
WorkspaceNavigationPolicy Zestaw reguł sterujących nawigacją za pomocą klawiatury w obszarze roboczym.
WorkspaceSvg Zajęcia w obszarze roboczym. Jest to obszar na ekranie z opcjonalnym koszem, paskami przewijania, dymkami i przeciąganiem.
ZoomControls Klasa elementów sterujących powiększeniem.

Klasy abstrakcyjne

Klasa abstrakcyjna Opis
Pole Klasa abstrakcyjna dla pola z możliwością edytowania.
Flyout Klasa wysuwanego menu.

Wyliczenia

Wyliczenie Opis
ConnectionType Wyliczenie typu połączenia lub wejścia.

Funkcje

Funkcja Opis
getFocusManager() Funkcja ułatwiająca korzystanie z FocusManager.getFocusManager.
hasBubble(obj) Funkcja sprawdzająca, czy dany obiekt jest typu IHasBubble.
hideChaff(opt_onlyClosePopups) Zamykanie etykietek, menu kontekstowych, menu wyboru itp.
inject(container, opt_options) Wstaw edytor Blockly do określonego elementu kontenera (zwykle elementu div).
isCopyable(obj)
isDeletable(obj) Zwraca informację, czy dany obiekt jest obiektem IDeletable.
isDraggable(obj) Zwraca informację, czy dany obiekt jest obiektem IDraggable.
isIcon(obj) Funkcja sprawdzająca, czy dany obiekt jest obiektem IIcon.
isPaster(obj)
isRenderedElement(obj)
isSelectable(obj) Sprawdza, czy dany obiekt jest interfejsem ISelectable.
isSerializable(obj) Funkcja sprawdzająca typ, która sprawdza, czy dany obiekt jest obiektem ISerializable.
isVariableBackedParameterModel(param) Zwraca informację, czy dany obiekt jest uchwytem zmiennej.
navigateBlock(current, delta) Zwraca następny element, do którego można przejść, względem podanego elementu podrzędnego bloku.
navigateStacks(current, delta) Zwraca następny lub poprzedni stos względem stosu danego elementu.
setLocale(locale)

Ustawia język (czyli zlokalizowane wiadomości, tekst blokowy itp.) na podany język.

Nie jest to przydatne ani konieczne w przypadku wczytywania z tagu skryptu, ponieważ komunikaty są automatycznie wstawiane do obiektu Blockly.Msg. Udostępniamy go jednak w kontekście tagu skryptu i poza nim, aby kompilator TypeScript mógł prawidłowo tworzyć pliki definicji typów.

Interfejsy

Interfejs Opis
BlocklyOptions Opcje Blockly.
FieldCheckboxConfig Opcje konfiguracji pola wyboru.
FieldCheckboxFromJsonConfig Opcje konfiguracji fromJson dla pola wyboru.
FieldConfig Dodatkowe opcje konfiguracji pola podstawowego.
FieldDropdownFromJsonConfig Konfiguracja fromJson dla pola menu.
FieldImageConfig Opcje konfiguracji pola obrazu.
FieldImageFromJsonConfig Opcje konfiguracji fromJson dla pola obrazu.
FieldLabelConfig Opcje konfiguracji pola etykiety.
FieldLabelFromJsonConfig Opcje konfiguracji fromJson dla pola etykiety.
FieldNumberConfig Opcje konfiguracji pola liczbowego.
FieldNumberFromJsonConfig Opcje konfiguracji fromJson dla pola liczbowego.
FieldTextInputFromJsonConfig opcje konfiguracji fromJson dla pola wprowadzania tekstu.
FieldVariableConfig Opcje konfiguracji pola zmiennej.
FieldVariableFromJsonConfig Opcje konfiguracji fromJson dla pola zmiennej.
IAutoHideable Interfejs komponentu, który można automatycznie ukrywać.
IBoundedElement Interfejs elementu powiązanego.
IBubble Interfejs bąbelkowy.
ICollapsibleToolboxItem Interfejs elementu w przyborniku, który można zwinąć.
IComponent Interfejs komponentu obszaru roboczego, który można zarejestrować w ComponentManager.
IConnectionChecker Klasa logiki sprawdzania typu połączenia.
IConnectionPreviewer Wyświetla wizualne „podglądy” miejsc, w których blok zostanie połączony po upuszczeniu.
IContextMenu
ICopyable
IDeletable Interfejs obiektu, który można usunąć.
IDeleteArea Interfejs komponentu, który może usunąć blok lub dymek upuszczony na niego.
IDraggable Reprezentuje obiekt, który można przeciągnąć.
IDragger
IDragStrategy
IDragTarget Interfejs komponentu z niestandardowym działaniem, gdy blok lub dymek zostanie przeciągnięty nad niego lub upuszczony na nim.
IFlyout Interfejs wysuwany.
IFlyoutInflater
IFocusableNode Reprezentuje wszystko, co może mieć fokus wejściowy.
IFocusableTree

Reprezentuje drzewo elementów, które można zaznaczyć, z własnym aktywnym/pasywnym kontekstem zaznaczenia.

Pamiętaj, że fokus jest obsługiwany przez klasę FocusManager, a implementacje drzewa mogą mieć w danym momencie co najwyżej 1 węzeł IFocusableNode, na którym jest ustawiony fokus. Jeśli fokus jest ustawiony na drzewo, węzeł, na którym jest ustawiony fokus, jest uznawany za „aktywny” (jeśli fokus jest ustawiony na inne drzewo, węzeł jest uznawany za „pasywny”).

Skupienie jest dzielone między co najmniej 1 drzewo, przy czym każde drzewo może mieć dokładnie 1 węzeł aktywny lub pasywny (w danym momencie na całej stronie może istnieć tylko 1 węzeł aktywny). Pasywne ustawianie fokusu ma na celu dostarczenie użytkownikom kontekstu, w którym ich fokus zostanie przywrócony po powrocie do wcześniej wybranego drzewa.

Jeśli potrzebny jest aktualnie zaznaczony węzeł drzewa (pasywny lub aktywny), można użyć metody FocusableTreeTraverser.findFocusedNode.

Pamiętaj, że jeśli chcesz pobrać konkretne węzły z tego drzewa, użyj funkcji lookUpFocusableNode lub FocusableTreeTraverser.findFocusableNodeFor.

IHasBubble
IIcon
IKeyboardAccessible Interfejs obiektu, który obsługuje skróty klawiszowe.
ImageProperties Definicja opcji menu obrazu czytelnej dla człowieka.
IMetricsManager Interfejs menedżera danych.
IMovable Interfejs obiektu, który można przenosić.
INavigationPolicy Zestaw reguł określających, gdzie powinna się odbywać nawigacja za pomocą klawiatury.
IPaster Obiekt, który może wklejać dane w przestrzeni roboczej.
IPositionable Interfejs komponentu, który znajduje się nad obszarem roboczym.
IRegistrable Interfejs komponentu Blockly, który można zarejestrować.
IRenderedElement
ISelectable

Interfejs obiektu, który można wybrać.

Implementacje powinny zwykle używać swoich implementacji funkcji onNodeFocus() i onNodeBlur() do wywoływania funkcji setSelected() odpowiednio z argumentami „this” i „null”, aby zapewnić prawidłowe aktualizowanie zaznaczeń i wywoływanie zdarzenia zmiany zaznaczenia.

ISelectableToolboxItem Interfejs elementu w przyborniku, który można wybrać.
ISerializable
IStyleable Interfejs obiektu, do którego można dodać styl.
IToolbox Interfejs skrzynki narzędziowej.
IToolboxItem Interfejs elementu w skrzynce narzędziowej.
IVariableBackedParameterModel Interfejs modelu parametru, który zawiera model zmiennej.
IVariableMap

Mapy zmiennych to obiekty kontenera odpowiedzialne za przechowywanie i zarządzanie zestawem zmiennych, do których odwołuje się obszar roboczy.

Każda z tych metod może definiować niezmienniki dotyczące tego, które nazwy i typy są prawidłowe, i zgłaszać wyjątki, jeśli nie są spełnione.

IVariableModel
IVariableState Reprezentuje stan danej zmiennej.
ToastOptions Opcje wyświetlania i konfiguracji powiadomienia typu toast.

Przestrzenie nazw

Przestrzeń nazw Opis
Blokowanie
blockAnimations
blockRendering
browserEvents
bubbles
bumpObjects
schowek
CollapsibleToolboxCategory
komentarze,
common
ComponentManager
stałe
ContextMenu
ContextMenuItems
ContextMenuRegistry
Css
dialog
przeciąganie
Zdarzenia
Rozszerzenia
fieldRegistry
geras
ikony,
ICopyable
dane wejściowe,
warstwy
libraryBlocks
MetricsManager
Nazwy
Opcje
Procedury
rejestr
RenderedConnection
renderManagement
serialization
ShortcutItems
ShortcutRegistry
Motyw
ThemeManager
Motywy
thrasos
Toast Opcje określające, jak agresywnie czytniki ekranu powinny odczytywać powiadomienia. Wartości odpowiadają wartościom atrybutu aria-live.
ToolboxCategory
ToolboxSeparator
Etykietka
Dotyk
uiPosition
utils
Zmienne
VariablesDynamic
WidgetDiv
Xml
zelos

Zmienne

Zmienna Opis
Blokady Mapowanie nazw typów bloków na obiekty prototypów bloków.
COLLAPSE_CHARS
COLLAPSED_FIELD_NAME
COLLAPSED_INPUT_NAME
config Obiekt zawierający wszystkie wartości w Blockly, które deweloperzy mogą zmieniać.
defineBlocksWithJsonArray Zdefiniuj bloki z tablicy definicji bloków JSON, które mogą być generowane przez Narzędzia dla programistów Blockly.
DELETE_VARIABLE_ID
DropDownDiv
getMainWorkspace Zwraca główny obszar roboczy. Zwraca ostatnio używany główny obszar roboczy (na podstawie aktywności). Staraj się nie używać tej funkcji, zwłaszcza jeśli na stronie znajduje się wiele instancji Blockly.
getSelected Zwraca aktualnie wybrany obiekt, który można skopiować.
INPUT_VALUE
JavaScript
keyboardNavigationController Pojedyncza instancja kontrolera nawigacji za pomocą klawiatury.
Msg Słownik zlokalizowanych wiadomości.
NEXT_STATEMENT
OPPOSITE_TYPE
OUTPUT_VALUE
PREVIOUS_STATEMENT
PROCEDURE_CATEGORY_NAME Ciąg znaków do użycia w atrybucie „custom” kategorii w pliku XML skrzynki narzędziowej. Ten ciąg znaków oznacza, że kategoria powinna być dynamicznie wypełniana blokami procedur.
RENAME_VARIABLE_ID
setParentContainer Ustaw kontener nadrzędny. Jest to element kontenera, w którym po raz pierwszy renderowane są elementy WidgetDiv, dropDownDiv i Tooltip po wywołaniu funkcji Blockly.inject. Jeśli ta metoda zostanie wywołana po pierwszym Blockly.inject, nie będzie miała żadnego efektu.
svgResize Zmień rozmiar obrazu SVG, aby całkowicie wypełnić kontener. Wywołuj tę funkcję, gdy widok faktycznie zmienia rozmiar (np. po zmianie rozmiaru okna lub orientacji urządzenia). Aby zmienić rozmiar obszaru roboczego, gdy zmieni się jego zawartość (np. po dodaniu lub usunięciu bloku), użyj funkcji workspace.resizeContents. Zapisz wysokość i szerokość obrazu SVG.
TOOLBOX_AT_BOTTOM
TOOLBOX_AT_LEFT
TOOLBOX_AT_RIGHT
TOOLBOX_AT_TOP
VARIABLE_CATEGORY_NAME Ciąg znaków do użycia w atrybucie „custom” kategorii w pliku XML skrzynki narzędziowej. Ten ciąg znaków wskazuje, że kategoria powinna być wypełniana dynamicznie za pomocą bloków zmiennych.
VARIABLE_DYNAMIC_CATEGORY_NAME Ciąg znaków do użycia w atrybucie „custom” kategorii w pliku XML skrzynki narzędziowej. Ten ciąg znaków wskazuje, że kategoria powinna być wypełniana dynamicznie za pomocą bloków zmiennych.
WERSJA Wersja podstawowa Blockly. Ta stała jest zastępowana przez skrypt kompilacji (npm run build) wartością wersji w pliku package.json. Odbywa się to za pomocą kompilatora Closure w zadaniu gulp buildCompressed. W przypadku kompilacji lokalnych możesz przekazać do kompilatora argument --define='Blockly.VERSION=X.Y.Z', aby zastąpić tę stałą.

Aliasy typu

Alias typu Opis
FieldCheckboxValidator Funkcja wywoływana w celu sprawdzenia zmian wartości pola przed ich ustawieniem.
FieldDropdownConfig Opcje konfiguracji pola menu.
FieldDropdownValidator Funkcja wywoływana w celu sprawdzenia zmian wartości pola przed ich ustawieniem.
FieldNumberValidator Funkcja wywoływana w celu sprawdzenia zmian wartości pola przed ich ustawieniem.
FieldTextInputConfig Opcje konfiguracji pola wprowadzania tekstu.
FieldTextInputValidator Funkcja wywoływana w celu sprawdzenia zmian wartości pola przed ich ustawieniem.
FieldValidator Funkcja wywoływana w celu sprawdzenia zmian wartości pola przed ich ustawieniem.
FieldVariableValidator Funkcja wywoływana w celu sprawdzenia zmian wartości pola przed ich ustawieniem.
ICopyData
MenuGenerator Tablica opcji menu lub funkcja, która generuje tablicę opcji menu dla komponentu FieldDropdown lub jego elementów podrzędnych.
MenuGeneratorFunction Funkcja, która generuje tablicę opcji menu dla komponentu FieldDropdown lub jego elementów podrzędnych.
MenuOption Pojedyncza opcja w menu. Może to być ciąg znaków separator w przypadku elementu separatora menu lub tablica w przypadku zwykłych elementów menu działań. W tym drugim przypadku pierwszy element to wartość czytelna dla człowieka (tekst, obiekt ImageProperties lub element HTML), a drugi element to wartość niezależna od języka.
ReturnEphemeralFocus

Deklaracja typu, która po zakończeniu przepływu efemerycznego interfejsu (np. okna) przywraca fokus do FocusManager.

Więcej informacji znajdziesz w sekcji FocusManager.takeEphemeralFocus.