blockly > Suspenso

Classe do menu suspenso

Classe para um menu suspenso.

Signature:

export declare abstract class Flyout extends DeleteArea implements IAutoHideable, IFlyout 

Estende:DeleteArea

Implementa: IAutoHideable, IFlyout

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 suspenso é fechado automaticamente quando um bloco é criado?
buttons_ protected FlyoutButton[] Lista de botões visíveis.
conteúdo protected FlyoutItem[] Lista de botões e blocos visíveis.
CORNER_RADIUS readonly number Raio dos cantos do plano de fundo do menu suspenso.
dragAngleRange_ protected number Intervalo de um ângulo de arrasto de um menu suspenso considerado "arrastar para o espaço de trabalho". Os arrastos que estão dentro dos limites desse número de graus, da linha ortogonal até a borda suspensa, são considerados "arrastos em direção ao espaço de trabalho".
FlyoutItemType static typeof FlyoutItemType O tipo de um item de conteúdo do menu suspenso.
GAP_X readonly number
GAP_Y readonly number
height_ protected number Altura do menu suspenso.
MARGEM readonly number
rectMap_ protected WeakMap<BlockSvg, SVGElement>
RTL booleano
SCROLLBAR_MARGIN readonly number Padding de cima/baixo entre a barra de rolagem e a borda do plano de fundo do menu suspenso.
svgBackground_ protected SVGPathElement | nulo O caminho ao redor do plano de fundo do menu suspenso, que será preenchido com uma cor de plano de fundo.
svgGroup_ protected SVGGElement | nulo O grupo SVG raiz para o botão ou rótulo.
tabWidth_

protected

readonly

number
toolboxPosition_ protected number
width_ protected number Largura do menu suspenso.
workspace_ protected WorkspaceSvg

Métodos

Método Modificadores Descrição
addBlockListeners_(root, block, rect) protected Adicione listeners a um bloco que foi adicionado ao menu suspenso.
autoHide(onlyClosePopups) Oculta automaticamente o menu suspenso se for um menu suspenso com fechamento automático.
blockIsRecyclable_(_block) protected Retorna se o bloco em questão pode ser reciclado ou não.
createDom(tagName) Cria o DOM do menu suspenso. Só precisa ser chamado uma vez. O menu suspenso pode existir como seu próprio elemento SVG ou ser um elemento g aninhado em um elemento SVG separado.
createRect_(block, x, y, blockHW, index) protected Crie e posicione um retângulo correspondente ao bloco em questão.
dispose() Descarte este menu suspenso. Desvincule todos os elementos do DOM para evitar vazamentos de memória.
getContents() Acessa a lista de botões e blocos do menu suspenso atual.
getFlyoutScale() Descubra a escala (nível de zoom) do menu suspenso. Por padrão, isso corresponde à escala do espaço de trabalho de destino, mas pode ser substituído.
getHeight() Extrai a altura do menu suspenso.
getWidth() Extrai a largura do menu suspenso.
getWorkspace() Abra o espaço de trabalho no menu suspenso.
getX() abstract Calcula a coordenada x para a posição do menu suspenso.
getY() abstract Calcula a coordenada y para a posição do menu suspenso.
hide() Oculte e esvazie o menu suspenso.
init(targetWorkspace) Inicializa o menu suspenso.
initFlyoutButton_(button, x, y) protected Inicializar o botão fornecido: movê-lo para o local correto, adicionar listeners etc.
isDragTowardWorkspace(currentDragDeltaXY) abstract Determine se um delta de arrastar é em direção ao espaço de trabalho, com base na posição e orientação do menu suspenso. É usado em determineDragIntention_ para determinar se um novo bloco deve ser criado ou se o menu suspenso deve rolar.
isVisible() O menu suspenso está visível?
layout_(conteúdos, lacunas)

protected

abstract

Posicione os blocos no menu suspenso.
moveRectToBlock_(rect, block) protected Mova um retângulo para ficar exatamente atrás de um bloco, levando em consideração guias, chapéus e quaisquer outras protrusões que inventarmos.
position() abstract Posicione o menu suspenso.
positionAt_(largura, altura, x, y) protected Atualize a visualização com base nas coordenadas calculadas em position().
reflow() Reflow de blocos e seus tapetes.
reflowInternal_()

protected

abstract

Calcule a altura do menu suspenso. Posicione o tapete abaixo de cada bloco. Para RTL: posicione os blocos alinhados à direita.
scrollToStart() abstract Role o menu suspenso até o início do conteúdo.
serializeBlock(block) protected Serializar um bloco para JSON.
setAutoClose(autoClose) Define se este menu suspenso é fechado automaticamente quando os blocos são arrastados, o espaço de trabalho é clicado etc.
setContainerVisible(visible) Defina se o contêiner deste menu suspenso está visível.
setContents(contents) Armazene a lista de botões e blocos no menu suspenso.
setMetrics_(xyRatio)

protected

abstract

Define a tradução do menu suspenso para corresponder às barras de rolagem.
setVisible(visible) Defina se o menu suspenso ficará visível. O valor "true" não significa necessariamente que o menu suspenso será exibido. Ele pode estar oculto porque o contêiner dele está oculto.
show(flyoutDef) (em inglês) Mostre e preencha o menu suspenso.
wheel_(e)

protected

abstract

Role o menu suspenso.