Criar um espaço de trabalho

Você pode criar um espaço de trabalho e injetá-lo no DOM em uma única chamada ou apenas criar um espaço de trabalho.

Injeção

É possível criar um espaço de trabalho do Blockly e injetá-lo no DOM com uma chamada para Blockly.inject(location, options). O primeiro argumento informa ao Blockly onde injetar o espaço de trabalho no DOM. O segundo argumento é um objeto que contém opções de configuração.

Para mais informações, consulte Criar um espaço de trabalho.

Criação direta

É possível criar um espaço de trabalho diretamente chamando new Blockly.WorkspaceSvg(new Blockly.Options(options)). Ao fazer essa chamada, transmita as opções de configuração em uma chamada para new Blockly.Options(options). O construtor WorkspaceSvg não pode aceitar o objeto de opções de configuração diretamente.

Opções de configuração

O objeto de configuração implementa Blockly.BlocklyOptions e tem as seguintes opções. Várias dessas opções mudam o valor padrão com base na presença ou não de categorias na caixa de ferramentas fornecida.

Nome Tipo Descrição
collapse booleano Se os menus de contexto de bloco incluem um item para recolher ou expandir blocos. O padrão é true se a caixa de ferramentas tiver categorias e false caso contrário.
comments booleano Se os menus de contexto de bloqueio incluem um item para adicionar ou remover comentários. O padrão é true se a caixa de ferramentas tiver categorias. Caso contrário,o padrão será false.
css booleano Se for "false", não injete CSS (fornecer CSS se torna responsabilidade do documento). O valor padrão é true.
disable booleano Indica se os menus de contexto de bloqueio incluem um item para desativar ou ativar bloqueios. O padrão é true se a caixa de ferramentas tiver categorias e false caso contrário.
grid objeto Configura uma grade em que os blocos podem se ajustar. Consulte Grade.
horizontalLayout booleano Se a caixa de ferramentas true for horizontal, se a caixa de ferramentas false for vertical. O valor padrão é false.
maxBlocks número Número máximo de blocos que podem ser criados. Útil para exercícios de estudantes. O valor padrão é Infinity.
maxInstances objeto Mapeia tipos de bloco para o número máximo de blocos desse tipo que podem ser criados. Os tipos não declarados são definidos como Infinity. Exemplo: maxInstances: {'controls_if': 3, 'math_number': 42}
maxTrashcanContents número Número máximo de itens excluídos que vão aparecer no menu suspenso da lixeira. '0' desativa o recurso. O padrão é '32'.
media string Caminho da página (ou frame) para o diretório de mídia do Blockly. O padrão é 'https://blockly-demo.appspot.com/static/media/'. Consulte Pasta de mídia.
modalInputs booleano Se true mostrar editores modais para campos de entrada de texto e subclasses em dispositivos móveis, e um editor inline em computadores. Se false mostrar um editor inline em computadores e dispositivos móveis. O valor padrão é true.
move objeto Configura o comportamento de como os usuários podem se mover pelo espaço de trabalho. Consulte Mover.
oneBasedIndex booleano Se true, as operações de lista e string devem indexar de 1. Se false, indexar de 0. O padrão é true.
plugins objeto Um objeto que mapeia nomes de tipos de registro para classes de substituição ou os nomes registrados de classes de substituição. Consulte Injetar sua classe de substituição.
readOnly booleano Se true, impeça que o usuário edite. Suprime a caixa de ferramentas e a lixeira. O padrão é false. Consulte também setIsReadOnly e isReadOnly.
renderer string Determina o renderizador usado pelo Blockly. Os renderizadores pré-empacotados incluem 'geras' (o padrão), 'thrasos' e 'zelos' (um renderizador semelhante ao Scratch). Para informações sobre renderizadores personalizados, consulte Criar renderizadores personalizados.
rtl booleano Se true, espelhe o editor (para localidades em árabe ou hebraico). Consulte a demonstração de RTL. O valor padrão é false.
scrollbars objeto ou booleano Define se o espaço de trabalho tem barras de rolagem verticais ou horizontais. Usa um objeto em que a propriedade horizontal determina se a rolagem horizontal está ativada e a propriedade vertical determina se a rolagem vertical está ativada. Se um booleano for transmitido, será equivalente a transmitir um objeto com as propriedades horizontal e vertical definidas como esse valor. O padrão é true se a caixa de ferramentas tiver categorias.
sounds booleano Se false, desativa os sons. O padrão é true.
theme Tema O padrão é o tema clássico se nenhum tema for fornecido. Consulte Temas.
toolbox string, XML ou JSON Estrutura em árvore de categorias e blocos disponíveis para o usuário. Consulte Como definir a caixa de ferramentas para mais informações.
toolboxPosition string Se a caixa de ferramentas 'start' estiver na parte de cima (se horizontal) ou à esquerda (se vertical e LTR) ou à direita (se vertical e RTL). Se a caixa de ferramentas 'end' estiver do lado oposto. O valor padrão é 'start'.
trashcan booleano Mostra ou oculta a lixeira. O padrão é true se a caixa de ferramentas tiver categorias e false caso contrário.
zoom objeto Configura o comportamento de zoom. Consulte Zoom.