package net.sf.eclipsefp.haskell.ui.internal.resolve;
import net.sf.eclipsefp.haskell.ui.HaskellUIPlugin;
import net.sf.eclipsefp.haskell.ui.internal.util.UITexts;
import net.sf.eclipsefp.haskell.ui.util.HaskellUIImages;
import net.sf.eclipsefp.haskell.ui.util.IImageNames;
import org.eclipse.core.resources.IMarker;
import org.eclipse.jface.text.BadLocationException;
import org.eclipse.jface.text.IDocument;
import org.eclipse.jface.text.IRegion;
import org.eclipse.jface.text.contentassist.CompletionProposal;
import org.eclipse.jface.text.contentassist.ICompletionProposal;
/**
* <p>Remove an unused import</p>
*
* @author JP Moresmau
*/
public class RemoveImportResolution extends MarkerCompletion {
@Override
public ICompletionProposal getCompletionProposal( final IMarker marker,
final IDocument document ) {
int line=marker.getAttribute(IMarker.LINE_NUMBER, 0);
try {
IRegion r=document.getLineInformation( line-1 );
int l=r.getLength();
String ld=document.getLineDelimiter( line-1 );
if (ld!=null){
l+=ld.length();
}
return new CompletionProposal( "", r.getOffset(), l, 0,HaskellUIImages.getImage( IImageNames.IMPORT_REMOVE ),getLabel(),null,null ); //$NON-NLS-1$
} catch( BadLocationException ex ) {
HaskellUIPlugin.log( ex );
}
return null;
}
@Override
public String getLabel() {
return UITexts.resolve_import_remove;
}
}