Compartilhar via


Como: implementar marcadores de erro

Marcadores de erro (ou vermelho ondulado) é as personalizações do editor de texto para implementar a mais difícil. No entanto, os benefícios que eles oferecem aos usuários do seu VSPackage podem superam em muito o custo para fornecer-lhes. Marcadores de erro sutilmente marcam o texto que o parser do idioma julgue incorreto com uma linha vermelha ondulada ou ondulada. Este indicador ajuda os programadores visualmente exibindo código incorreto.

Use os marcadores de texto para implementar o sublinhado ondulado em vermelho. Como regra, serviços de linguagem adicionar ondulados em vermelho para o buffer de texto como uma passagem de plano de fundo, no tempo ocioso ou em um segmento de plano de fundo.

Para implementar o recurso de vermelho ondulado

  1. Selecione o texto sob a qual você deseja colocar o sublinhado ondulado em vermelho.

  2. Criar um marcador do tipo MARKER_CODESENSE_ERROR. Para obter mais informações, consulte Como: adicionar marcadores de texto padrão.

  3. Depois disso, passe em um IVsTextMarkerClient o ponteiro de interface.

Esse processo também permite que você crie texto de dica ou um menu de contexto especial sobre um determinado marcador. Para obter mais informações, consulte Como: adicionar marcadores de texto padrão.

Os seguintes objetos são necessários antes de marcadores de erro podem ser exibidas.

  • Um analisador.

  • Um provedor de tarefas (ou seja, uma implementação de IVsTaskProvider2) que mantém um registro de alterações nas informações de linha para identificar as linhas a ser re-parsed.

  • Eventos de alteração de um filtro de exibição de texto que captura o cursor no modo de exibição que usa a OnChangeCaretLine) método.

O analisador, o provedor de tarefas e filtro fornecem a infra-estrutura necessária para tornar os marcadores de erro possível. As seguintes etapas fornecem o processo para exibir os marcadores de erro.

  1. Em uma exibição que está sendo filtrada, o filtro obtém um ponteiro para o provedor de tarefas associado aos dados do modo de exibição.

    Dica

    Você pode usar o mesmo filtro de comando para a conclusão da instrução, dicas de método, marcadores de erro e assim por diante.

  2. Quando o filtro recebe um evento indicando que você moveu para outra linha, uma tarefa é criada para verificar se há erros.

  3. O manipulador de tarefas verifica se a linha está suja. Em caso afirmativo, ele analisa a linha de erros.

  4. Se houver erros, o provedor de tarefas cria uma instância de item de tarefa. Esta instância cria o marcador de texto que o ambiente usa como um marcador de erro no modo de exibição de texto.

Consulte também

Tarefas

Como: adicionar marcadores de texto padrão

Como: criar marcadores de texto personalizado

Conceitos

Como: usar marcadores de texto

Outros recursos

Através de marcadores de texto com a API Legacy