public class MethodParameterInfoHandler extends java.lang.Object implements ParameterInfoHandlerWithTabActionSupport<PsiExpressionList,java.lang.Object,PsiExpression>, DumbAware
Constructor and Description |
---|
MethodParameterInfoHandler() |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
isWhitespaceSensitive
getParameterCloseChars, getParametersForDocumentation, tracksParameterIndex
public java.lang.Object[] getParametersForLookup(LookupElement item, ParameterInfoContext context)
getParametersForLookup
in interface ParameterInfoHandler<PsiExpressionList,java.lang.Object>
public boolean couldShowInLookup()
couldShowInLookup
in interface ParameterInfoHandler<PsiExpressionList,java.lang.Object>
public PsiExpressionList findElementForParameterInfo(CreateParameterInfoContext context)
ParameterInfoHandler
Find psiElement for parameter info should also set ItemsToShow in context and may set highlighted element
Note: it is executed on non UI thread
findElementForParameterInfo
in interface ParameterInfoHandler<PsiExpressionList,java.lang.Object>
public void showParameterInfo(PsiExpressionList element, CreateParameterInfoContext context)
showParameterInfo
in interface ParameterInfoHandler<PsiExpressionList,java.lang.Object>
public PsiExpressionList findElementForUpdatingParameterInfo(UpdateParameterInfoContext context)
ParameterInfoHandler
Hint has to be removed if method returns null
.
Note: it is executed on non-UI thread
findElementForUpdatingParameterInfo
in interface ParameterInfoHandler<PsiExpressionList,java.lang.Object>
public void processFoundElementForUpdatingParameterInfo(PsiExpressionList expressionList, UpdateParameterInfoContext context)
ParameterInfoHandler
ParameterInfoHandler.findElementForUpdatingParameterInfo(UpdateParameterInfoContext)
on UI thread.processFoundElementForUpdatingParameterInfo
in interface ParameterInfoHandler<PsiExpressionList,java.lang.Object>
public void updateParameterInfo(PsiExpressionList o, UpdateParameterInfoContext context)
ParameterInfoHandler
Updates parameter info context due to change of caret position.
It could update context and state of UpdateParameterInfoContext.getObjectsToView()
Note: context.getParameterOwner()
equals to parameterOwner
or null
Note: it is executed on non UI thread.
updateParameterInfo
in interface ParameterInfoHandler<PsiExpressionList,java.lang.Object>
public void dispose(DeleteParameterInfoContext context)
dispose
in interface ParameterInfoHandler<PsiExpressionList,java.lang.Object>
public java.lang.Class<PsiExpressionList> getArgumentListClass()
getArgumentListClass
in interface ParameterInfoHandlerWithTabActionSupport<PsiExpressionList,java.lang.Object,PsiExpression>
public IElementType getActualParametersRBraceType()
getActualParametersRBraceType
in interface ParameterInfoHandlerWithTabActionSupport<PsiExpressionList,java.lang.Object,PsiExpression>
public java.util.Set<java.lang.Class<?>> getArgumentListAllowedParentClasses()
getArgumentListAllowedParentClasses
in interface ParameterInfoHandlerWithTabActionSupport<PsiExpressionList,java.lang.Object,PsiExpression>
public java.util.Set<? extends java.lang.Class<?>> getArgListStopSearchClasses()
getArgListStopSearchClasses
in interface ParameterInfoHandlerWithTabActionSupport<PsiExpressionList,java.lang.Object,PsiExpression>
public IElementType getActualParameterDelimiterType()
getActualParameterDelimiterType
in interface ParameterInfoHandlerWithTabActionSupport<PsiExpressionList,java.lang.Object,PsiExpression>
public PsiExpression [] getActualParameters(PsiExpressionList psiExpressionList)
getActualParameters
in interface ParameterInfoHandlerWithTabActionSupport<PsiExpressionList,java.lang.Object,PsiExpression>
public static java.lang.String updateMethodPresentation(PsiMethod method, PsiSubstitutor substitutor, ParameterInfoUIContext context)
public void updateUI(java.lang.Object p, ParameterInfoUIContext context)
ParameterInfoHandler
This method is executed on UI thread and supposed only to update UI representation using
ParameterInfoUIContext.setUIComponentEnabled(boolean)
or ParameterInfoUIContext.setupUIComponentPresentation(String, int, int, boolean, boolean, boolean, Color)
.
Don't perform any heavy calculations like resolve here: move it to ParameterInfoHandler.findElementForParameterInfo(CreateParameterInfoContext)
or
ParameterInfoHandler.updateParameterInfo(Object, UpdateParameterInfoContext)
.
updateUI
in interface ParameterInfoHandler<PsiExpressionList,java.lang.Object>
public boolean supportsOverloadSwitching()
supportsOverloadSwitching
in interface ParameterInfoHandler<PsiExpressionList,java.lang.Object>
public void syncUpdateOnCaretMove(UpdateParameterInfoContext context)
syncUpdateOnCaretMove
in interface ParameterInfoHandler<PsiExpressionList,java.lang.Object>