public API for pattern transformation

This commit is contained in:
Konstantin Bulenkov
2013-10-23 14:55:17 +02:00
parent 5af63c227f
commit 6f3285d186
2 changed files with 11 additions and 2 deletions
@@ -747,6 +747,10 @@ public abstract class ChooseByNameBase {
}
public String transformPattern(String pattern) {
final ChooseByNameModel model = getModel();
if (model instanceof ContributorsBasedGotoByModel) {
return ((ContributorsBasedGotoByModel)model).transformPattern(pattern);
}
return pattern;
}
@@ -336,6 +336,11 @@ public class ChooseByNamePopup extends ChooseByNameBase implements ChooseByNameP
@Override
public String transformPattern(String pattern) {
final ChooseByNameModel model = getModel();
return getTransformedPattern(pattern, model);
}
public static String getTransformedPattern(String pattern, ChooseByNameModel model) {
Pattern regex = null;
if (pattern.indexOf(':') != -1 ||
pattern.indexOf(',') != -1 ||
@@ -345,7 +350,7 @@ public class ChooseByNamePopup extends ChooseByNameBase implements ChooseByNameP
regex = patternToDetectLinesAndColumns;
}
if (getModel() instanceof GotoClassModel2) {
if (model instanceof GotoClassModel2) {
if (pattern.indexOf('#') != -1) {
regex = patternToDetectMembers;
}
@@ -362,7 +367,7 @@ public class ChooseByNamePopup extends ChooseByNameBase implements ChooseByNameP
}
}
return super.transformPattern(pattern);
return pattern;
}
public int getLinePosition() {