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_ |
|
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) |
|
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_() |
|
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) |
|
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) |
|
Role o menu suspenso. |