Apresentação do Modelo de Depuração

Como há um modelo genérico e uniforme para os elementos de depuração na plataforma, é possível fornecer um ponto inicial para implementar uma UI do depurador. A parte principal do suporte à UI do depurador é a apresentação do modelo de depuração (IDebugModelPresentation). A apresentação do modelo de depuração é responsável por fornecer etiquetas, imagens e editores associados a elementos específicos de depuração.

Os plug-ins que definem seu próprio modelo de depuração normalmente fornecem uma apresentação de modelo de depuração para exibir elementos de depuração no modelo. Isso é feito utilizando o ponto de extensão org.eclipse.debug.ui.debugModelPresentations. Esse ponto de extensão permite uma implementação de IDebugModelPresentation a ser associada ao identificador de um modelo específico de depuração.

Lembre-se que os elementos de modelo de depuração conhecem o ID de seu modelo de depuração original. Isso significa que, dado um elemento de depuração, a plataforma de depuração pode obter o ID do modelo de depuração e, em seguida, consultar o registro de extensão para quaisquer apresentações correspondentes do modelo de depuração.

A marcação para inclusão de uma apresentação do gabarito de depuração assemelha-se ao seguinte:

<extension point = "org.eclipse.debug.ui.debugModelPresentations">
         <debugModelPresentation
             class = "org.eclipse.jdt.internal.debug.ui.JDIModelPresentation"
             id = "org.eclipse.jdt.debug"
             detailsViewerConfiguration = "org.eclipse.jdt.internal.debug.ui.display.DetailsViewerConfiguration">
          </debugModelPresentation>
   </extension>

Um detailsViewerConfiguration opcional pode ser especificado, além da apresentação do modelo de depuração. O visualizador de detalhes deve estender a classe JFace SourceViewerConfiguration. O significado de "details" é interpretado pelo modelo de depuração. Os detalhes são computados pela apresentação do modelo de depuração e transmitidos para o visualizador de detalhes. Por exemplo, o depurador Java utiliza o visualizador de detalhes para mostrar a assistência ao código na visualização de variáveis quando as expressões são avaliadas.

Os implementadores de IDebugModelPresentation podem implementar também IDebugEditorPresentation quando for necessário mais controle sobre o editor que está exibindo o código fonte para um quadro temporário. Os implementadores podem controlar a posição do editor ou as anotações na origem.