Pular para o conteúdo principal

Plug-ins

Um plug-in é um programa separado que trabalha com o Input.Observer. A maioria desenha coisas: o plug-in Styles, que vem com o Input.Observer, desenha os estilos de rastro animados e as dicas e mensagens decoradas. Outros podem adicionar funções que os scripts chamam, ou executar ações escritas em outra linguagem. O Input.Observer inicia, monitora e para cada plug-in por conta própria; você nunca inicia um plug-in à mão.

Esta página trata do gerenciamento de plug-ins. Como escrever um está descrito na documentação separada para desenvolvedores de plug-ins.

observação

Modo Avançado. A página Plug-ins fica na seção Mecanismo da navegação, que fica oculta no modo Simples. Os plug-ins continuam em execução no modo Simples, e a página Aparência mostra e controla os estilos do renderizador nos dois modos.

As alterações nesta página têm efeito imediatamente. Elas não fazem parte das alterações não salvas da sua configuração: Aplicar não é necessário, e Descartar não as desfaz. Os plug-ins nunca são exportados nem importados.

A página Plug-ins​

Input.ObserverSimplesAvançado
AUTOMAÇÃO
Ações
Expansão de texto
Snippets
Gravador
Área de testes
Grupos de aplicativos
Grupos ignorados
Gestos
MECANISMO
Eventos globais
Zonas de exclusão
Scripts
Plug-ins
CONFIGURAÇÃO
Geral
Aparência
Perfis
Console
Segurança
Ajuda
Sobre
Plug-ins
Registrados: 2 · Íntegros: 2
AtualizarAdicionar plug-in…
Plug-ins são programas separados que desenham rastros de gesto, dicas e mensagens para o mecanismo. As alterações feitas aqui se aplicam imediatamente; elas não fazem parte da configuração salva.
NomeCaminhoRecursosStatusAções
Input.Observer.StylesC:\Program Files\Input.Observer\Input.Observer.Styles.exeEstilosÍntegroDesativar
Plug-in de exemploD:\Tools\SamplePlugin.exeFunções de scriptNão usadoUsar como renderizador

A página lista todos os plug-ins registrados ②, com uma caixa de pesquisa e um filtro de status (Todos os status, Íntegros, Precisam de atenção, Desativados) acima da lista. A linha do título conta os plug-ins registrados e os íntegros.

ColunaO que mostra
NomeO nome do plug-in. A linha do renderizador tem um selo Renderizador. O botão de copiar copia o nome exatamente, que é o que a chamada PluginSendMessage de um script precisa.
CaminhoO arquivo de programa do plug-in. O botão no fim abre o Explorador de Arquivos com o arquivo selecionado.
RecursosO que o plug-in oferece: Rastro do gesto, Dica, Mensagem na tela, Estilos, Comandos de script, Funções de script, Mecanismo de script, Configurações, Configurações aqui. Um plug-in que não está em execução mostra o que oferecia na última vez que foi executado.
StatusConsulte a tabela abaixo.
AçõesOs botões que se aplicam a este plug-in no momento (abaixo).
StatusSignificado
ÍntegroEm execução e respondendo.
Iniciando…Está sendo iniciado. A página verifica de novo a cada segundo até ele se estabilizar.
Não usadoUm plug-in de desenho que não é o renderizador, ou o renderizador enquanto nada está atribuído a ele. Ele não está em execução e não usa memória ("Não usado", abaixo).
Não está respondendoEm execução, mas não respondeu por 10 segundos. O Input.Observer o reinicia.
DesativadoDesligado com Desativar.
Desativado automaticamente -- falha ao iniciarFalhou ao iniciar várias vezes seguidas. O Input.Observer parou de tentar ("Quando um plug-in falha", abaixo).
Fechado pelo plug-inO plug-in se fechou de propósito. Ele fica fechado até você escolher Tentar novamente, desativá-lo e ativá-lo, ou reiniciar o Input.Observer.

Os botões em Ações:

BotãoAparece quandoO que faz
Usar como renderizadorUm plug-in de desenho que está ligado e não é o renderizadorTorna-o o renderizador (abaixo).
Configurações (engrenagem)O plug-in tem configurações e está em execução ou não usadoAbre as configurações dele (abaixo).
Visualizar / Parar visualizaçãoO plug-in desenha um rastro, uma dica ou mensagensMostra o que ele desenha (abaixo).
Tentar novamenteDesativado automaticamente, ou fechado pelo plug-inInicia-o de novo e zera a contagem de falhas.
Permitir retornos de chamada / Bloquear retornos de chamadaO plug-in fornece funções de script ou um mecanismo de scriptConsulte "Retornos de chamada", abaixo.
Ativar / DesativarSempreInicia ou para o plug-in e o mantém registrado.
RemoverSemprePara o plug-in e o esquece. O programa em si não é excluído.

Desativar e Remover perguntam antes quando há scripts na sua configuração que precisam do plug-in (scripts executados no mecanismo de script dele ou que chamam as funções dele), e os listam. Esses scripts param de funcionar enquanto o plug-in não estiver lá.

Adicionar um plug-in​

  1. Escolha Adicionar plug-in… ① e escolha o programa do plug-in (.exe).
  2. O Input.Observer inicia o programa uma vez para perguntar o nome dele, depois o inicia de novo e verifica se ele se conecta e responde. Isso leva alguns segundos.
  3. Se ele passar, o plug-in é adicionado no topo da lista e continua em execução. Se ele desenhar rastros, dicas ou mensagens, ele também se torna o renderizador, e uma nota "Renderizador alterado" avisa isso.

Se o plug-in não passar, "Não foi possível adicionar o plug-in" explica por quê: o arquivo não está lá, o programa não respondeu ou respondeu de forma errada (ele pode não ser um plug-in do Input.Observer), demorou demais, o nome dele já é usado por outro plug-in registrado, ou as funções de script ou o mecanismo de script dele usam nomes que outro plug-in já usa. Em cada caso, nada é adicionado.

O Input.Observer guarda o caminho do plug-in relativo à própria pasta quando o plug-in está dentro dela, então um plug-in instalado ao lado do Input.Observer continua funcionando se o Input.Observer for movido.

Confiar em um plug-in​

  • Adicionar um plug-in o executa. O passo 2 inicia o programa imediatamente, com as suas permissões, e a partir daí o Input.Observer o inicia toda vez que é iniciado. O Input.Observer não verifica quem fez um plug-in nem se ele é assinado. Adicione somente programas de fontes em que você confia, como faria antes de executar qualquer programa.
  • Um plug-in é executado como um programa próprio. Ele nunca é executado dentro do Input.Observer, e o Input.Observer nunca espera por um plug-in enquanto trata o seu mouse e o seu teclado, então um plug-in lento ou com defeito não consegue deixar a sua entrada atrasada.
  • Um plug-in que desenha recebe os traços dos seus gestos e o texto das dicas e das mensagens, para poder desenhá-los.
  • Um plug-in com funções de script recebe os valores que os scripts passam a essas funções.

O renderizador​

O renderizador é o único plug-in que desenha para o Input.Observer: os estilos de rastro, e as dicas e as mensagens quando elas estão em Seguir o estilo na página Aparência. Somente um plug-in é o renderizador de cada vez. Uma instalação padrão registra o plug-in Styles como renderizador.

Para tornar outro plug-in de desenho o renderizador, escolha Usar como renderizador na linha dele. O mecanismo troca imediatamente: o novo renderizador inicia, o anterior para e mostra Não usado, e o rastro, as dicas e as mensagens que o novo plug-in consegue desenhar são atribuídos a ele. As suas escolhas na página Aparência decidem então o que ele desenha (Aparência). Um plug-in que não oferece estilos aparece como um único bloco na galeria, com o próprio nome; as próprias configurações dele decidem como ele desenha.

Desativar ou remover o renderizador deixa nenhum renderizador: o rastro, a janela de dica e a janela de mensagens clássicos do Input.Observer desenham até você escolher outro.

Não usado​

O Input.Observer não executa um plug-in que não tem nada a fazer. Um plug-in de desenho só é executado enquanto é o renderizador e algo na página Aparência está atribuído a ele. Um plug-in que fornece funções de script ou um mecanismo de script é sempre executado enquanto está ativado.

Um plug-in que não está em uso é iniciado por um instante quando você abre as configurações dele ou o visualiza, e depois volta para Não usado. O plug-in Styles para cerca de um minuto depois da sua última alteração nas configurações dele. A chamada PluginSendMessage de um script a um plug-in de desenho que não está em execução falha com um erro que diz isso; ela não inicia o plug-in.

Configurações dos plug-ins​

A engrenagem na linha de um plug-in abre as configurações dele:

  • Um plug-in marcado com Configurações aqui mostra as configurações em uma janela desenhada pela janela de configuração, com uma lista de seções à esquerda. As do plug-in Styles estão descritas em Rastros de gestos.
  • Qualquer outro plug-in com Configurações abre a própria janela de configurações.

Um plug-in que não está em execução é iniciado antes, então a janela pode levar alguns segundos para ser preenchida. As alterações têm efeito imediatamente e são salvas pelo próprio plug-in, no próprio arquivo dele ao lado do seu arquivo de configuração; elas não esperam por Aplicar, e Descartar não as desfaz. Restaurar padrões devolve a seção selecionada aos padrões do plug-in. Se uma alteração não puder ser feita, uma nota na janela diz por quê: o plug-in não iniciou ou não oferece essas configurações, não respondeu a tempo, recusou a alteração, ou a fez mas não conseguiu salvá-la.

Visualização​

Visualizar mostra o que um plug-in de desenho desenharia, sem um gesto real: um rastro que segue o seu ponteiro, uma dica de exemplo e uma mensagem de exemplo. Clique com o botão direito para ver o rastro terminar e começar de novo; o clique direito não abre nada durante a visualização.

Enquanto uma visualização está em execução, os gestos ficam pausados em todo lugar, e uma faixa na página avisa isso. A visualização termina quando você pressiona Esc, escolhe Parar visualização, sai da página Plug-ins ou o plug-in para. Uma visualização não pode começar enquanto uma gravação de macro ou um treinamento de gestos estiver em execução.

Quando um plug-in falha​

O Input.Observer verifica cada plug-in em execução a cada 5 segundos.

  • Um plug-in que para de responder por 10 segundos (duas verificações perdidas) mostra Não está respondendo e é reiniciado.
  • Um plug-in que sai inesperadamente é reiniciado 10 segundos depois.
  • Um plug-in que falha ao iniciar é tentado de novo depois de 2, 5 e 10 segundos. Depois da terceira tentativa com falha, ele fica Desativado automaticamente -- falha ao iniciar e o Input.Observer o deixa em paz, mesmo entre reinicializações, até você escolher Tentar novamente. A contagem de falhas volta a zero assim que um plug-in é executado sem problemas por 5 minutos.
  • Um plug-in que se fecha de propósito mostra Fechado pelo plug-in e não é reiniciado até você escolher Tentar novamente, desativá-lo e ativá-lo, ou reiniciar o Input.Observer.

Enquanto o renderizador está fora do ar, o rastro, a janela de dica e a janela de mensagens clássicos do Input.Observer desenham no lugar dele, e a página Aparência avisa isso com um botão Reiniciar. Toda vez que isso acontece, uma linha vai para a seção Sistema do console (Console).

Quando o Input.Observer é iniciado, ele inicia cada plug-in que tem trabalho a fazer e espera até cerca de 5 segundos por cada um; a tela de abertura nomeia o plug-in que está carregando. Um plug-in que perde esse tempo é assumido um pouco depois. Quando o Input.Observer sai, ele fecha todos os plug-ins, e um plug-in nunca pode continuar em execução depois que o Input.Observer parou. No Modo de segurança, nenhum plug-in é iniciado (Solução de problemas).

Retornos de chamada​

Um plug-in que fornece funções de script ou um mecanismo de script pode pedir para executar script do Input.Observer enquanto trata uma chamada. Isso fica bloqueado a menos que você escolha Permitir retornos de chamada na linha dele e confirme. Permita somente para um plug-in em que você confia: os pedidos dele podem então fazer qualquer coisa que um script aqui pode (pressionar teclas, mover e fechar janelas, executar programas), inclusive em janelas executadas como administrador, que o plug-in não consegue alcançar sozinho. Bloquear retornos de chamada retira a permissão de novo.