22
33import com .intellij .codeInsight .completion .*;
44import com .intellij .codeInsight .lookup .LookupElement ;
5+ import com .intellij .patterns .PatternCondition ;
56import com .intellij .patterns .PlatformPatterns ;
7+ import com .intellij .patterns .StandardPatterns ;
68import com .intellij .psi .PsiElement ;
79import com .intellij .util .ProcessingContext ;
810import com .jetbrains .php .PhpIndex ;
911import com .jetbrains .php .lang .psi .elements .ConstantReference ;
1012import com .jetbrains .php .lang .psi .elements .MethodReference ;
1113import com .jetbrains .php .lang .psi .elements .PhpClass ;
1214import fr .adrienbrault .idea .symfony2plugin .Symfony2ProjectComponent ;
15+ import fr .adrienbrault .idea .symfony2plugin .dic .ServiceCompletionProvider ;
1316import fr .adrienbrault .idea .symfony2plugin .util .PhpElementsUtil ;
1417import org .jetbrains .annotations .NotNull ;
1518
1922public class FormCompletionContributor extends CompletionContributor {
2023
2124 public FormCompletionContributor () {
22- extend (CompletionType .BASIC , PlatformPatterns .psiElement ().withParent (ConstantReference .class ), new CompletionProvider <CompletionParameters >() {
25+ extend (CompletionType .BASIC , PlatformPatterns .psiElement ().withParent (ConstantReference .class ), new CompletionProvider <>() {
2326 @ Override
24- protected void addCompletions (@ NotNull CompletionParameters completionParameters , ProcessingContext processingContext , @ NotNull CompletionResultSet completionResultSet ) {
27+ protected void addCompletions (@ NotNull CompletionParameters completionParameters , @ NotNull ProcessingContext processingContext , @ NotNull CompletionResultSet completionResultSet ) {
2528 PsiElement psiElement = completionParameters .getOriginalPosition ();
2629 if (!Symfony2ProjectComponent .isEnabled (psiElement )) {
2730 return ;
@@ -32,8 +35,8 @@ protected void addCompletions(@NotNull CompletionParameters completionParameters
3235 return ;
3336 }
3437
35- if (!(
36- PhpElementsUtil .isMethodReferenceInstanceOf (methodReference , "Symfony\\ Component\\ Form\\ FormBuilderInterface" , "add" ) ||
38+ if (!(
39+ PhpElementsUtil .isMethodReferenceInstanceOf (methodReference , "Symfony\\ Component\\ Form\\ FormBuilderInterface" , "add" ) ||
3740 PhpElementsUtil .isMethodReferenceInstanceOf (methodReference , "Symfony\\ Component\\ Form\\ FormBuilderInterface" , "create" ) ||
3841 PhpElementsUtil .isMethodReferenceInstanceOf (methodReference , "Symfony\\ Component\\ Form\\ FormFactoryInterface" , "createNamedBuilder" ) ||
3942 PhpElementsUtil .isMethodReferenceInstanceOf (methodReference , "Symfony\\ Component\\ Form\\ FormFactoryInterface" , "createNamed" )
@@ -42,20 +45,17 @@ protected void addCompletions(@NotNull CompletionParameters completionParameters
4245 }
4346
4447 for (PhpClass phpClass : PhpIndex .getInstance (psiElement .getProject ()).getAllSubclasses ("\\ Symfony\\ Component\\ Form\\ FormTypeInterface" )) {
45- if (phpClass .isAbstract () || phpClass .isInterface ()) {
48+ if (phpClass .isAbstract () || phpClass .isInterface ()) {
4649 continue ;
4750 }
4851
4952 LookupElement elementBuilder = new FormClassConstantsLookupElement (phpClass );
5053
51- // does this have an effect really?
5254 completionResultSet .addElement (
53- PrioritizedLookupElement .withExplicitProximity ( PrioritizedLookupElement . withPriority (elementBuilder , 1000 ), 1000 )
55+ PrioritizedLookupElement .withPriority (elementBuilder , 100 )
5456 );
5557 }
56-
5758 }
58-
5959 });
6060 }
6161
0 commit comments