blockly > Flyout

Classe de submenu flutuante

Classe para um submenu flutuante.

Signature:

export declare abstract class Flyout extends DeleteArea implements IAutoHideable, IFlyout, IFocusableNode 

Extends:DeleteArea

Implementa:IAutoHideable, IFlyout, IFocusableNode

Construtores

Construtor Modificadores Descrição
(constructor)(workspaceOptions) Cria uma nova instância da classe Flyout.

Propriedades

Propriedade Modificadores Tipo Descrição
autoClose booleano O menu flutuante fecha automaticamente quando um bloco é criado?
conteúdo protected FlyoutItem[] Lista de elementos de submenu.
CORNER_RADIUS readonly número Raio do canto do plano de fundo do submenu flutuante.
dragAngleRange_ protected número Intervalo de um ângulo de arrasto de um submenu flutuante considerado "arrastando para o espaço de trabalho". Arrastos que estão dentro dos limites desse número de graus da linha ortogonal até a borda do submenu flutuante são considerados "arrastos em direção ao espaço de trabalho".
GAP_X readonly número
GAP_Y readonly número
height_ protected número Altura do submenu flutuante.
inflaters protected Map<string, IFlyoutInflater> Mapeia do tipo de conteúdo do submenu flutuante para a classe de inflador correspondente responsável por criar instâncias concretas do tipo de conteúdo.
MARGIN readonly número
RTL booleano
SCROLLBAR_MARGIN readonly número Padding na parte de cima/baixo entre a barra de rolagem e a borda do plano de fundo do submenu flutuante.
svgBackground_ protected SVGPathElement | null O caminho ao redor do plano de fundo do menu suspenso, que será preenchido com uma cor de plano de fundo.
svgGroup_ protected SVGGElement | null O grupo SVG raiz do botão ou marcador.
tabWidth_

protected

readonly

número
toolboxPosition_ protected número
width_ protected número Largura do submenu flutuante.
workspace_ protected WorkspaceSvg

Métodos

Método Modificadores Descrição
autoHide(onlyClosePopups) Oculta automaticamente o submenu se ele for de fechamento automático.
canBeFocused() Consulte IFocusableNode.canBeFocused.
createDom(tagName) Cria o DOM do submenu. Só precisa ser chamado uma vez. O submenu pode existir como um elemento SVG próprio ou ser um elemento g aninhado em um elemento SVG separado.
dispose() Descarte este submenu. Desvincule de todos os elementos DOM para evitar vazamentos de memória.
getContents() Receba a lista de elementos do submenu flutuante atual.
getFlyoutScale() Recebe a escala (nível de zoom) do submenu flutuante. Por padrão, isso corresponde à escala do espaço de trabalho de destino, mas pode ser substituído.
getFocusableElement() Consulte IFocusableNode.getFocusableElement.
getFocusableTree() Consulte IFocusableNode.getFocusableTree.
getHeight() Recebe a altura do submenu flutuante.
getInflaterForType(type) protected Retorna o criador de instâncias responsável por construir itens do tipo especificado.
getNestedTrees() Consulte IFocusableNode.getNestedTrees.
getRestoredFocusableNode(_previousNode) Consulte IFocusableNode.getRestoredFocusableNode.
getRootFocusableNode() Consulte IFocusableNode.getRootFocusableNode.
getTargetWorkspace() Encontre o espaço de trabalho de destino no menu suspenso.
getWidth() Recebe a largura do submenu.
getWorkspace() Receba o espaço de trabalho no submenu.
getX() abstract Calcula a coordenada x para a posição do submenu flutuante.
getY() abstract Calcula a coordenada y para a posição do submenu flutuante.
hide() Ocultar e esvaziar o submenu.
init(targetWorkspace) Inicializa o submenu flutuante.
isDragTowardWorkspace(currentDragDeltaXY) abstract Determine se um delta de arrasto está em direção ao espaço de trabalho, com base na posição e orientação do submenu flutuante. Usado em determineDragIntention_ para determinar se um novo bloco precisa ser criado ou se o menu flutuante precisa rolar.
isVisible() O submenu está visível?
layout_(contents)

protected

abstract

Organize os elementos no submenu.
lookUpFocusableNode(_id) Consulte IFocusableNode.lookUpFocusableNode.
normalizeSeparators(contents) protected

Atualiza e retorna a lista fornecida de conteúdo do submenu flutuante para simplificar os separadores conforme necessário.

Quando vários separadores aparecem um após o outro, o valor do último tem precedência, e os separadores anteriores no grupo são removidos.

onNodeBlur() Consulte IFocusableNode.onNodeBlur.
onNodeFocus() Consulte IFocusableNode.onNodeFocus.
onTreeBlur(_nextTree) Consulte IFocusableNode.onTreeBlur.
onTreeFocus(_node, _previousTree) Consulte IFocusableTree.onTreeFocus.
position() abstract Posicione o submenu flutuante.
positionAt_(width, height, x, y) protected Atualize a visualização com base nas coordenadas calculadas em position().
reflow() Reflow do conteúdo do submenu flutuante.
reflowInternal_()

protected

abstract

Calcula os limites do submenu flutuante. Para RTL: alinhe os elementos à direita.
scrollToStart() abstract Role o submenu até o início do conteúdo.
serializeBlock(block) protected Serializa um bloco para JSON.
setAutoClose(autoClose) Define se o submenu flutuante fecha automaticamente quando os blocos são arrastados para fora, o espaço de trabalho é clicado etc.
setContainerVisible(visible) Define se o contêiner desse submenu flutuante está visível.
setContents(contents) Armazene a lista de elementos no submenu.
setMetrics_(xyRatio)

protected

abstract

Define a tradução do submenu flutuante para corresponder às barras de rolagem.
setVisible(visible) Define se o submenu flutuante está visível. Um valor "true" não significa necessariamente que o submenu será mostrado. Ele pode estar oculto porque o contêiner dele está oculto.
show(flyoutDef) Mostrar e preencher o submenu.
wheel_(e)

protected

abstract

Role o menu flutuante.