blockly

Pacchetto blockly

Corsi

Classe Descrizione
Blocca Corso per un blocco. Di solito non viene chiamato direttamente, è preferibile utilizzare workspace.newBlock().
BlockFlyoutInflater Classe responsabile della creazione di blocchi per i menu a scomparsa.
BlockNavigationPolicy Set di regole che controllano la navigazione con la tastiera da un blocco.
BlockSvg Classe per la rappresentazione SVG di un blocco. Di solito non viene chiamato direttamente, è preferibile utilizzare workspace.newBlock().
ButtonFlyoutInflater Classe responsabile della creazione di pulsanti per i menu a scomparsa.
CodeGenerator Classe per un generatore di codice che traduce i blocchi in un linguaggio.
CollapsibleToolboxCategory Classe per una categoria in una cassetta degli attrezzi che può essere compressa.
ComponentManager Gestore di tutti gli elementi registrati nello spazio di lavoro.
Connessione Classe per una connessione tra blocchi.
ConnectionChecker Classe per la logica di controllo del tipo di connessione.
ConnectionDB Database delle connessioni. Le connessioni vengono memorizzate in base al componente verticale. In questo modo, le connessioni in un'area possono essere cercate rapidamente utilizzando una ricerca binaria.
ConnectionNavigationPolicy Set di regole che controllano la navigazione da tastiera da una connessione.
ContextMenuRegistry Classe per il registry delle voci del menu contestuale. Deve essere un singleton. Non devi creare una nuova istanza e devi accedere a questo corso solo da ContextMenuRegistry.registry.
DeleteArea Classe astratta per un componente che può eliminare un blocco o una bolla inseriti sopra.
DragTarget Classe astratta per un componente con comportamento personalizzato quando un blocco o una bolla viene trascinato sopra o rilasciato sopra di esso.
FieldCheckbox Classe per un campo di casella di controllo.
FieldDropdown Classe per un campo con elenco a discesa modificabile.
FieldImage Classe per un'immagine in un blocco.
FieldLabel Classe per un campo di testo non modificabile e non serializzabile.
FieldLabelSerializable Classe per un campo di testo non modificabile e serializzabile.
FieldNavigationPolicy Set di regole che controllano la navigazione con la tastiera da un campo.
FieldNumber Classe per un campo numerico modificabile.
FieldTextInput Classe per un campo di testo modificabile.
FieldVariable Classe per il campo del menu a discesa di una variabile.
FlyoutButton Classe per un pulsante o un'etichetta nel menu a scomparsa.
FlyoutButtonNavigationPolicy Set di regole che controllano la navigazione da tastiera da un menu a scomparsa.
FlyoutItem Rappresentazione di un elemento visualizzato in un menu a scomparsa.
FlyoutMetricsManager Calcola le metriche per lo spazio di lavoro di un popup. Le metriche vengono utilizzate principalmente per impostare le dimensioni delle barre di scorrimento per il popup.
FlyoutNavigationPolicy Norme di navigazione generiche che consentono di spostarsi tra gli elementi del menu a scomparsa.
FlyoutNavigator
FlyoutSeparator Rappresentazione di uno spazio tra gli elementi in un menu a scomparsa.
FlyoutSeparatorNavigationPolicy Set di regole che controllano la navigazione da tastiera da un separatore a scomparsa. Si tratta di un segnaposto senza operazione, poiché non è possibile accedere ai separatori popup.
FocusableTreeTraverser Un'utilità di supporto per le implementazioni di IFocusableTree per facilitare le esplorazioni comuni dell'albero.
FocusManager

Un singleton per pagina che gestisce lo stato attivo di Blockly in uno o più alberi IFocusableTree e sincronizza questo stato attivo in modo bidirezionale con il DOM.

Gli utenti che vogliono modificare esplicitamente lo stato attivo dell'input per componenti Blockly selezionati nella pagina devono utilizzare le funzioni di attivazione in questo gestore.

Il gestore è responsabile della gestione degli eventi di messa a fuoco dal DOM (che possono verificarsi quando gli utenti fanno clic sugli elementi della pagina) e di garantire che gli elementi IFocusableNode corrispondenti siano chiaramente contrassegnati come evidenziati attivamente/passivamente nello stesso modo in cui verrebbero rappresentati con le chiamate a focusNode().

Gesto Classe per un gesto.
Griglia Classe per la griglia di uno spazio di lavoro.
HorizontalFlyout Classe per un menu a scomparsa.
Ingresso Classe per un input con campi facoltativi.
InsertionMarkerPreviewer
LabelFlyoutInflater Classe responsabile della creazione di etichette per i menu a scomparsa.
LineCursor Classe per un cursore di riga.
Indicatore Classe per un indicatore. Viene utilizzato nella navigazione da tastiera per salvare una posizione nell'AST di Blockly.
MarkerManager Classe per gestire più indicatori e il cursore in uno spazio di lavoro.
Menu Un'entità di menu di base.
MenuItem Classe che rappresenta un elemento in un menu.
MetricsManager Il gestore di tutti i calcoli delle metriche dello spazio di lavoro.
Nomi Classe per un database di nomi di entità (variabili, procedure e così via).
Navigator Classe responsabile della determinazione di dove deve spostarsi lo stato attivo in risposta ai comandi di navigazione da tastiera.
Opzioni Analizza le opzioni specificate dall'utente, utilizzando valori predefiniti ragionevoli se il comportamento non è specificato.
RenderedConnection Classe per un collegamento tra blocchi che possono essere visualizzati sullo schermo.
Barra di scorrimento Classe per una barra di scorrimento SVG pura. Questa tecnica offre una barra di scorrimento che funziona, ma potrebbe non avere lo stesso aspetto o lo stesso comportamento delle barre di scorrimento del sistema.
ScrollbarPair Classe per una coppia di barre di scorrimento. Orizzontale e verticale.
SeparatorFlyoutInflater Classe responsabile della creazione di separatori per i menu a scomparsa.
ShortcutRegistry Classe per il registro delle scorciatoie da tastiera. Deve essere un singleton. Non devi creare una nuova istanza e devi accedere a questo corso solo da ShortcutRegistry.registry.
Tema Corso per un tema.
ThemeManager Classe per memorizzare e aggiornare i componenti dell'interfaccia utente e del tema di uno spazio di lavoro.
Toast Classe che consente di mostrare e ignorare le notifiche temporanee.
Cassetta degli attrezzi Classe per una cassetta degli attrezzi. Crea il DOM della cassetta degli attrezzi.
ToolboxCategory Classe per una categoria in una cassetta degli attrezzi.
ToolboxItem Classe per un elemento della cassetta degli attrezzi.
ToolboxSeparator Classe per un separatore della cassetta degli attrezzi. Si tratta della linea visiva sottile visualizzata nella cassetta degli attrezzi. Questo elemento non è interattivo.
Cestino Classe per un cestino.
UnattachedFieldError Rappresenta un errore in cui il campo tenta di accedere al proprio blocco o alle informazioni relative al proprio blocco prima che sia effettivamente stato collegato a detto blocco.
VariableMap Classe per una mappa di variabili. Contiene una struttura di dati di dizionario con tipi di variabili come chiavi e elenchi di variabili come valori. L'elenco delle variabili è del tipo indicato dalla chiave.
VariableModel Classe per un modello di variabile. Contiene informazioni sulla variabile, tra cui nome, ID e tipo.
VerticalFlyout Classe per un menu a scomparsa.
Workspace Classe per uno spazio di lavoro. Si tratta di una struttura di dati che contiene blocchi. Non è presente un'interfaccia utente e può essere creato senza interfaccia.
WorkspaceAudio Classe per caricare, archiviare e riprodurre l'audio per uno spazio di lavoro.
WorkspaceDragger Classe per un cursore dell'area di lavoro. Consente di spostare lo spazio di lavoro quando viene trascinato con il mouse o il tocco.
WorkspaceNavigationPolicy Set di regole che controllano la navigazione da tastiera da uno spazio di lavoro.
WorkspaceSvg Classe per uno spazio di lavoro. Si tratta di un'area sullo schermo con cestino, barre di scorrimento, bolle e trascinamento facoltativi.
ZoomControls Classe per i controlli dello zoom.

Classi astratte

Classe astratta Descrizione
Campo Classe astratta per un campo modificabile.
Menu a scomparsa Classe per un menu a scomparsa.

Enumerazioni

Enumerazione Descrizione
ConnectionType Enum per il tipo di connessione o input.

Funzioni

Funzione Descrizione
getFocusManager() Funzione di utilità per FocusManager.getFocusManager.
hasBubble(obj) Guardia di tipo che verifica se l'oggetto specificato è un IHasBubble.
hideChaff(opt_onlyClosePopups) Chiudere descrizioni comando, menu contestuali, selezioni del menu a discesa e così via.
inject(container, opt_options) Inserisci un editor Blockly nell'elemento contenitore specificato (di solito un div).
isCopyable(obj)
isDeletable(obj) Restituisce se l'oggetto specificato è un IDeletable.
isDraggable(obj) Restituisce se l'oggetto specificato è un IDraggable o meno.
isIcon(obj) Guardia di tipo che verifica se l'oggetto specificato è un IIcon.
isPaster(obj)
isRenderedElement(obj)
isSelectable(obj) Verifica se l'oggetto specificato è un ISelectable.
isSerializable(obj) Controllo di tipo che verifica se l'oggetto specificato è un ISerializable.
isVariableBackedParameterModel(param) Restituisce se l'oggetto specificato è un contenitore di variabili o meno.
setLocale(locale)

Imposta le impostazioni internazionali (ad es.i messaggi/il testo del blocco/ecc. localizzati) sulle impostazioni internazionali specificate.

Questo non è utile/necessario durante il caricamento da un tag script, perché i messaggi vengono inseriti automaticamente nell'oggetto Blockly.Msg. Tuttavia, lo forniamo sia nei contesti di tag script che in quelli senza tag script in modo che tscompiler possa creare correttamente i nostri file di definizione dei tipi.

Interfacce

Interfaccia Descrizione
BlocklyOptions Opzioni di Blockly.
FieldCheckboxConfig Opzioni di configurazione per il campo della casella di controllo.
FieldCheckboxFromJsonConfig Opzioni di configurazione fromJson per il campo della casella di controllo.
FieldConfig Opzioni di configurazione aggiuntive per il campo di base.
FieldDropdownFromJsonConfig Configurazione fromJson per il campo del menu a discesa.
FieldImageConfig Opzioni di configurazione per il campo immagine.
FieldImageFromJsonConfig Opzioni di configurazione fromJson per il campo immagine.
FieldLabelConfig Opzioni di configurazione per il campo dell'etichetta.
FieldLabelFromJsonConfig Opzioni di configurazione fromJson per il campo dell'etichetta.
FieldNumberConfig Opzioni di configurazione per il campo numerico.
FieldNumberFromJsonConfig Opzioni di configurazione fromJson per il campo numerico.
FieldTextInputFromJsonConfig Opzioni di configurazione fromJson per il campo di immissione di testo.
FieldVariableConfig Opzioni di configurazione per il campo della variabile.
FieldVariableFromJsonConfig Opzioni di configurazione fromJson per il campo della variabile.
IAutoHideable Interfaccia per un componente che può essere nascosto automaticamente.
IBoundedElement Un'interfaccia di elemento con limiti.
IBubble Un'interfaccia a bolle.
ICollapsibleToolboxItem Interfaccia per un elemento della cassetta degli attrezzi che può essere compresso.
IComponent L'interfaccia per un componente dello spazio di lavoro che può essere registrato con ComponentManager.
IConnectionChecker Classe per la logica di controllo del tipo di connessione.
IConnectionPreviewer Mostra "anteprime" visive di dove verrà collegato un blocco se viene rilasciato.
IContextMenu
ICopyable
IDeletable L'interfaccia di un oggetto che può essere eliminato.
IDeleteArea Interfaccia per un componente che può eliminare un blocco o una bolla inseriti sopra.
IDraggable Rappresenta un oggetto che può essere trascinato.
IDragger
IDragStrategy
IDragTarget Interfaccia per un componente con comportamento personalizzato quando un blocco o una bolla viene trascinato sopra o rilasciato sopra di esso.
IFlyout Interfaccia per un menu a scomparsa.
IFlyoutInflater
IFocusableNode Rappresenta qualsiasi elemento che può avere lo stato attivo di immissione.
IFocusableTree

Rappresenta una struttura ad albero di elementi attivabili con il proprio contesto di attivazione attivo/passivo.

Tieni presente che lo stato attivo viene gestito da FocusManager e che le implementazioni dell'albero possono avere al massimo un IFocusableNode attivo alla volta. Se l'albero stesso è attivo, il nodo attivo dell'albero è considerato "attivo" ("passivo" se è attivo un altro albero).

Lo stato attivo è condiviso tra uno o più alberi, in cui ogni albero può avere esattamente un nodo attivo o passivo (e in un determinato momento può esistere un solo nodo attivo in tutta la pagina). L'idea dell'attenzione passiva è fornire agli utenti il contesto in cui verrà ripristinato il loro stato attivo quando torneranno a un albero precedentemente attivo.

Tieni presente che, se è necessario il nodo attualmente attivo (passivo o attivo) dell'albero, puoi utilizzare FocusableTreeTraverser.findFocusedNode.

Tieni presente che, se è necessario recuperare nodi specifici per questa struttura ad albero, utilizza lookUpFocusableNode o FocusableTreeTraverser.findFocusableNodeFor.

IHasBubble
IIcon
IKeyboardAccessible Un'interfaccia per un oggetto che gestisce le scorciatoie da tastiera.
ImageProperties Definizione di un'opzione di menu a discesa di immagini leggibili.
IMetricsManager Interfaccia per un gestore delle metriche.
IMovable L'interfaccia di un oggetto spostabile.
INavigationPolicy Un insieme di regole che specificano dove deve continuare la navigazione con la tastiera.
IPaster Un oggetto che può incollare dati in uno spazio di lavoro.
IPositionable Interfaccia per un componente posizionato sopra lo spazio di lavoro.
IRegistrable L'interfaccia di un componente Blockly che può essere registrato.
IRenderedElement
ISelectable

L'interfaccia di un oggetto selezionabile.

In genere, le implementazioni devono utilizzare le proprie implementazioni di onNodeFocus() e onNodeBlur() per chiamare setSelected() con se stesse e null, rispettivamente, per assicurarsi che le selezioni vengano aggiornate correttamente e che venga attivato l'evento di modifica della selezione.

ISelectableToolboxItem Interfaccia per un elemento della cassetta degli attrezzi che può essere selezionato.
ISerializable
IStyleable Interfaccia per un oggetto a cui è possibile aggiungere uno stile.
IToolbox Interfaccia per una cassetta degli attrezzi.
IToolboxItem Interfaccia per un elemento della cassetta degli attrezzi.
IVariableBackedParameterModel Interfaccia per un modello di parametro che contiene un modello di variabile.
IVariableMap

Le mappe di variabili sono oggetti contenitore responsabili della memorizzazione e della gestione dell'insieme di variabili a cui viene fatto riferimento in uno spazio di lavoro.

Qualsiasi di questi metodi può definire invarianti su quali nomi e tipi sono legali e generare un'eccezione se non vengono soddisfatti.

IVariableModel
IVariableState Rappresenta lo stato di una determinata variabile.
ToastOptions Opzioni di visualizzazione/configurazione per una notifica popup.

Spazi dei nomi

Spazio dei nomi Descrizione
Blocca
blockAnimations
blockRendering
browserEvents
bolle
bumpObjects
clipboard
CollapsibleToolboxCategory
commenti
comuni
ComponentManager
costanti
ContextMenu
ContextMenuItems
ContextMenuRegistry
Css
dialog
Trascinamento
Eventi
Estensioni
fieldRegistry
geras
icone
ICopyable
inputs
livelli
libraryBlocks
MetricsManager
Nomi
Opzioni
Procedure
registry
RenderedConnection
renderManagement
serializzazione
ShortcutItems
ShortcutRegistry
Tema
ThemeManager
Temi
thrasos
Toast Opzioni per la modalità di lettura dei popup da parte degli screen reader. I valori corrispondono a quelli di aria-live.
ToolboxCategory
ToolboxSeparator
Descrizione comando
Tocco
uiPosition
utils
Variabili
VariablesDynamic
WidgetDiv
Xml
zelos

Variabili

Variabile Descrizione
Blocchi Una mappatura dei nomi dei tipi di blocchi agli oggetti prototipo dei blocchi.
COLLAPSE_CHARS
COLLAPSED_FIELD_NAME
COLLAPSED_INPUT_NAME
config Oggetto contenente tutti i valori di Blockly che ci aspettiamo che gli sviluppatori possano modificare.
defineBlocksWithJsonArray Definisci i blocchi da un array di definizioni di blocchi JSON, come potrebbe essere generato dagli Strumenti per sviluppatori di Blockly.
DELETE_VARIABLE_ID
DropDownDiv
getMainWorkspace Restituisce l'area di lavoro principale. Restituisce l'ultima area di lavoro principale utilizzata (in base allo stato attivo). Cerca di non utilizzare questa funzione, in particolare se in una pagina sono presenti più istanze di Blockly.
getSelected Restituisce l'oggetto copiabile attualmente selezionato.
INPUT_VALUE
JavaScript
Msg Un dizionario di messaggi localizzati.
NEXT_STATEMENT
OPPOSITE_TYPE
OUTPUT_VALUE
PREVIOUS_STATEMENT
PROCEDURE_CATEGORY_NAME Stringa da utilizzare nell'attributo "custom" di una categoria nel file XML della cassetta degli attrezzi. Questa stringa indica che la categoria deve essere compilata dinamicamente con blocchi di procedure.
RENAME_VARIABLE_ID
setParentContainer Imposta il contenitore principale. Si tratta dell'elemento contenitore in cui vengono visualizzati WidgetDiv, dropDownDiv e Tooltip la prima volta che viene chiamato Blockly.inject. Questo metodo è un NOP se viene chiamato dopo il primo Blockly.inject.
svgResize Modifica le dimensioni dell'immagine SVG in modo che riempia completamente il contenitore. Chiama questo metodo quando la visualizzazione cambia effettivamente le dimensioni (ad es. in caso di ridimensionamento della finestra/modifica dell'orientamento del dispositivo). Consulta workspace.resizeContents per ridimensionare lo spazio di lavoro quando i contenuti cambiano (ad es. quando viene aggiunto o rimosso un blocco). Registra l'altezza/larghezza dell'immagine SVG.
TOOLBOX_AT_BOTTOM
TOOLBOX_AT_LEFT
TOOLBOX_AT_RIGHT
TOOLBOX_AT_TOP
VARIABLE_CATEGORY_NAME Stringa da utilizzare nell'attributo "custom" di una categoria nel file XML della cassetta degli attrezzi. Questa stringa indica che la categoria deve essere compilata dinamicamente con blocchi di variabili.
VARIABLE_DYNAMIC_CATEGORY_NAME Stringa da utilizzare nell'attributo "custom" di una categoria nel file XML della cassetta degli attrezzi. Questa stringa indica che la categoria deve essere compilata dinamicamente con blocchi di variabili.
VERSIONE Versione di Blockly Core. Questa costante viene sostituita dallo script di compilazione (npm run build) con il valore della versione in package.json. Questa operazione viene eseguita dal compilatore Closure nell'attività gulp buildCompressed. Per le build locali, puoi passare --define='Blockly.VERSION=X.Y.Z' al compilatore per eseguire l'override di questa costante.

Alias di tipo

Alias tipo Descrizione
FieldCheckboxValidator Una funzione chiamata per convalidare le modifiche al valore del campo prima che vengano impostate.
FieldDropdownConfig Opzioni di configurazione per il campo del menu a discesa.
FieldDropdownValidator Una funzione chiamata per convalidare le modifiche al valore del campo prima che vengano impostate.
FieldNumberValidator Una funzione chiamata per convalidare le modifiche al valore del campo prima che vengano impostate.
FieldTextInputConfig Opzioni di configurazione per il campo di immissione di testo.
FieldTextInputValidator Una funzione chiamata per convalidare le modifiche al valore del campo prima che vengano impostate.
FieldValidator Una funzione chiamata per convalidare le modifiche al valore del campo prima che vengano impostate.
FieldVariableValidator Una funzione chiamata per convalidare le modifiche al valore del campo prima che vengano impostate.
ICopyData
MenuGenerator Un array di opzioni di menu o una funzione che genera un array di opzioni di menu per il campo FieldDropdown o i relativi discendenti.
MenuGeneratorFunction Una funzione che genera un array di opzioni di menu per CampoDropdown o i relativi discendenti.
MenuOption Una singola opzione nel menu a discesa. Può essere la stringa letterale separator per un elemento separatore di menu o un array per le normali voci di menu di azioni. In quest'ultimo caso, il primo elemento è il valore leggibile (testo, oggetto ImageProperties o elemento HTML) e il secondo elemento è il valore indipendente dalla lingua.
ReturnEphemeralFocus

Dichiarazione del tipo per restituire lo stato attivo a FocusManager al termine di un flusso temporaneo dell'interfaccia utente (ad esempio una finestra di dialogo).

Per ulteriori dettagli, consulta FocusManager.takeEphemeralFocus.