A seleção é o conteúdo que tem foco em uma página de apresentação aberta, como um intervalo de texto destacado ou uma tabela. Este guia descreve como acessar e definir a seleção em uma apresentação ativa usando o Apps Script.
Um script só pode acessar a seleção do usuário que o executa.
A seleção é um instantâneo do que era quando o script foi iniciado. Se o usuário clicar e a seleção mudar enquanto o script estiver em execução, essas mudanças não serão refletidas.
Seleções e tipo de seleção
Leia a seleção usando a classe Selection. A classe tem vários métodos para receber os objetos selecionados com base no tipo de objeto(s) selecionado(s).
A enumeração SelectionType
representa o tipo específico de objetos selecionados. Por exemplo, se o usuário tiver selecionado algum texto em uma forma, o tipo de seleção será TEXT. Nesse caso, é possível recuperar o intervalo de texto selecionado usando o método selection.getTextRange().
Também é possível recuperar o objeto que contém a seleção. Por exemplo, você pode recuperar a forma que contém o texto selecionado usando selection.getPageElementRange().getPageElements()[0]. Da mesma forma, a página que contém a forma delimitadora é a página ativa atual. Para recuperar essa página, use selection.getCurrentPage().
Ler a seleção
Para ler a seleção, use o Presentation.getSelection() , conforme mostrado no exemplo a seguir:
Ler a página atual
Para recuperar a página atual que o usuário está visualizando, use os getSelection() e getCurrentPage() da seguinte maneira:
A página atual pode ser um destes tipos:
A página atual pode ter um ou mais objetos selecionados, e o SelectionType determina o tipo de seleção.
Ler a seleção com base no tipo de seleção
O exemplo a seguir mostra como usar o tipo de seleção para ler a seleção atual de uma maneira adequada ao tipo.
Ler seleções de texto
Leia a seleção de texto usando o Selection.getTextRange(). Há dois tipos de seleção de texto:
- Seleção de intervalo: se uma forma contém o texto "Olá" e "Ol" está selecionado, o intervalo retornado tem startIndex=0 e endIndex=2.
- Seleção de cursor: se uma forma contém o texto "Olá" e o cursor está depois de "O" ("O|lá"), o intervalo retornado é um intervalo vazio com startIndex=1 e endIndex=1.
Modificar a seleção
O script pode modificar a seleção do usuário. Todas as mudanças de seleção que o script faz na apresentação são refletidas em operações de seleção subsequentes durante a execução do script.
As mudanças de seleção são refletidas no navegador do usuário somente após a conclusão da execução do script ou quando Presentation.saveAndClose() é chamado.
Selecionar a página atual
Uma página na apresentação ativa pode ser selecionada como a página atual chamando o selectAsCurrentPage() método. Esse método remove qualquer elemento de página, página ou seleção de texto anterior. Portanto, usar esse método na página atual permite desmarcar todas as seleções atuais na página. Exemplo:
Selecionar um elemento de página
Para selecionar um elemento de página, use o PageElement.select(). Isso também desmarca todos os elementos de página selecionados anteriormente.
Os métodos select() e select(true) são equivalentes.
Exemplo:
Selecionar vários elementos de página
Para anexar outros elementos de página à seleção, use o PageElement.select(false). Todos os elementos de página precisam estar na página atual.
Transformar a seleção
As edições que o script realiza podem transformar a seleção atual, de modo que o que está selecionado muda como resultado da edição. Exemplo:
- Suponha que você tenha duas formas A e B selecionadas.
- Em seguida, o script remove a forma A.
- Como resultado, a seleção é transformada na edição para que apenas a forma B seja selecionada.
O exemplo a seguir mostra como a seleção pode ser transformada pela manipulação de elementos de página selecionados.
Selecionar texto
O texto contido em uma forma ou em uma célula de tabela pode ser selecionado usando o TextRange.select(). Se o texto estiver contido em uma forma, essa forma também será selecionada. Se o texto estiver contido em uma célula de tabela, essa célula e a tabela delimitadora serão selecionadas.
Isso também define a página mãe como a página atual.
Seleção de intervalo em uma forma
O exemplo a seguir mostra como fazer uma seleção de intervalo em um texto contido em uma forma.
Seleção de cursor em uma forma
O exemplo a seguir mostra como fazer uma seleção de cursor em um texto contido em uma forma.
Seleção de intervalo em uma célula de tabela
O exemplo a seguir mostra como fazer uma seleção de intervalo em um texto contido em uma célula de tabela.
Seleção de cursor em TableCell
O exemplo a seguir mostra como fazer uma seleção de cursor em um texto contido em uma célula de tabela.
Transformação de seleção com edições textuais
O exemplo a seguir mostra como a seleção pode ser transformada editando o texto selecionado.
Desmarcar
Não há métodos explícitos para desmarcar texto ou elementos de página. No entanto, esse resultado pode ser alcançado usando os métodos Page.selectAsCurrentPage() ou pageElement.select().
Selecionar uma página atual
O exemplo a seguir mostra como desmarcar todas as seleções atuais em uma página definindo essa página como a atual.
Selecionar um elemento de página
O exemplo a seguir mostra como desmarcar todas as seleções atuais em uma página selecionando um elemento de página, removendo assim todos os outros itens da seleção.