Interagentes de Seleção

As seções a seguir explicam como usar os interagentes de seleção.

SelectionInteractor

O SelectionInteractor gerencia a interação entre seu gráfico e seu objeto Selection, incluindo e removendo os elementos selecionados. Por padrão, ao clicar em um elemento, a seleção fica vazia e o elemento clicado é selecionado. Se você clicar em um elemento enquanto mantém pressionada a tecla Ctrl, o elemento clicado será incluído na seleção. Se o elemento já estiver selecionado, ele será removido da seleção. Se você clicar em uma área livre do diagrama, a seleção ficará vazia.
O SelectionInteractor também pode ser usado sem um widget Diagram, ativando-o no gráfico:
graph = surface.createGraph();
graph.setSelect(true);

MarqueeSelectionInteractor

O MarqueeSelectionInteractor está disponível no widget DiagramEditor. Ele permite selecionar vários elementos, selecionando uma área retangular do diagrama.
Quando você clica em uma área livre do diagrama e arrasta o mouse, um retângulo translúcido é desenhado na Viewport. Ao soltar o botão do mouse, os elementos limitados são selecionados. Por padrão, os elementos parcialmente limitados estão incluídos na seleção do quadro de seleção. No entanto, se desejar incluir apenas elementos totalmente delimitados na seleção do quadro de seleção, será possível configurar o método setPartialSelectionEnabled como false.
Os modos de MarqueeSelectionInteractor podem ser alterados por meio de DiagramEditor usando o método setMarqueeMode(mode).
  • Top level only:
    Modo padrão. Selects only the top-level elements (the ones that are created in the graph). Configure este modo usando a constante topLevelOnly.
  • Top parent:
    Seleciona apenas o mais alto dos elementos selecionados. Por exemplo, se um subgráfico completo for limitado, apenas o subgráfico será selecionado, mas não seus filhos. If the subgraph is not bounded by the marquee, its bounded children are selected. Configure este modo usando a constante topParent.
  • Todos:
    Seleciona todos os elementos limitados. Configure este modo usando a constante all.
A seleção múltipla também é possível. Se o usuário repetir a seleção do quadro de seleção com a tecla modificadora apropriada pressionada (Ctrl, por padrão), os elementos selecionados serão incluídos na seleção, sem limpar os preexistentes.