Je semble rencontrer un problème avec l'association d'un marqueur de problème à une ressource; Dans mon cas, j'essaye de créer un marqueur de problème pour l'éditeur.Développement de plug-in: création d'un marqueur de problème pour une ressource donnée
Pour ce faire, j'ai essayé de faire ce qui suit:
public class MyEditor extends TextEditor{
private ColorManager colorManager;
public MyEditor() {
super();
...
IResource resource = (IResource) getEditorInput().getAdapter(IResource.class);
try
{
marker = resource.createMarker(IMarker.PROBLEM);
}
catch (CoreException e)
{
e.printStackTrace();
}
}
Cependant, le problème est getEditorInput() revient toujours nulle. Je suppose que je ne l'appelle pas au bon endroit. Je pensais que ce serait idéal pour créer le marqueur une fois que je mettrais en place l'éditeur, mais cela prouve le contraire.
Quelqu'un at-il des conseils pour obtenir la ressource appropriée que je veux afin que je puisse créer le marqueur de problème? Je voudrais montrer des erreurs et telles dans l'éditeur.
J'ai regardé des exemples en ligne pour créer le marqueur, mais la plupart montrent juste des méthodes qui passent l'objet ITextEditor sans montrer où l'appel de méthode est. (par exemple: Creating Error Marker for Compiler -- see reportError method)
Merci. Paul
Edit: J'ai aussi vu le lien suivant en ce qui concerne les marqueurs de problème, mais encore une fois, il appelle createMarker d'une ressource (res, dans ce cas), mais ne montre pas la configuration pour elle. See Show Syntax Errors in An Eclipse Editor Plugin
A travaillé parfaitement, merci! Donc je suppose que je recevais null avant parce qu'il appelait le getEditorInput() trop tôt? –
Désolé pour ma réponse si tardive ... Vous avez supposé que vous aviez raison ... Vous appeliez getEditorInput avant la méthode init (...), qui initialisait l'entrée – dpndeveloper