compilation fixed

This commit is contained in:
nik
2012-08-29 09:35:01 +04:00
parent 61e87729e3
commit 1b4b0d28de
2 changed files with 35 additions and 31 deletions
@@ -37,21 +37,30 @@ import java.util.List;
*/
public class TreeJavaClassChooserDialog extends AbstractTreeClassChooserDialog<PsiClass> implements TreeClassChooser {
public TreeJavaClassChooserDialog(String title, Project project) {
super(title, project);
super(title, project, PsiClass.class);
}
public TreeJavaClassChooserDialog(String title, Project project, @Nullable PsiClass initialClass) {
super(title, project, initialClass);
super(title, project, PsiClass.class, initialClass);
}
public TreeJavaClassChooserDialog(String title,
Project project,
GlobalSearchScope scope,
final ClassFilter classFilter, @Nullable PsiClass initialClass) {
super(title, project, scope, createFilter(classFilter), initialClass);
super(title, project, scope, PsiClass.class, createFilter(classFilter), initialClass);
}
public TreeJavaClassChooserDialog(String title,
Project project,
GlobalSearchScope scope,
final @Nullable ClassFilter classFilter,
PsiClass baseClass,
@Nullable PsiClass initialClass, boolean isShowMembers) {
super(title, project, scope, PsiClass.class, createFilter(classFilter), baseClass, initialClass, isShowMembers);
}
@Override
@Nullable
protected PsiClass getSelectedFromTreeUserObject(DefaultMutableTreeNode node) {
@@ -61,15 +70,6 @@ public class TreeJavaClassChooserDialog extends AbstractTreeClassChooserDialog<P
return descriptor.getPsiClass();
}
public TreeJavaClassChooserDialog(String title,
Project project,
GlobalSearchScope scope,
final ClassFilter classFilter,
PsiClass baseClass,
@Nullable PsiClass initialClass, boolean isShowMembers) {
super(title, project, scope, createFilter(classFilter), baseClass, initialClass, isShowMembers);
}
public static TreeJavaClassChooserDialog withInnerClasses(String title,
Project project,
GlobalSearchScope scope,
@@ -79,15 +79,15 @@ public class TreeJavaClassChooserDialog extends AbstractTreeClassChooserDialog<P
}
@Nullable
private static Filter<Object> createFilter(@Nullable final ClassFilter classFilter) {
private static Filter<PsiClass> createFilter(@Nullable final ClassFilter classFilter) {
if (classFilter == null) {
return null;
}
else {
return new Filter<Object>() {
return new Filter<PsiClass>() {
@Override
public boolean isAccepted(Object element) {
return element instanceof PsiClass && classFilter.isAccepted((PsiClass)element);
public boolean isAccepted(PsiClass element) {
return classFilter.isAccepted(element);
}
};
}
@@ -76,36 +76,40 @@ public abstract class AbstractTreeClassChooserDialog<T extends PsiNamedElement>
private TabbedPaneWrapper myTabbedPane;
private ChooseByNamePanel myGotoByNamePanel;
private final GlobalSearchScope myScope;
@NotNull private final Filter<Object> myClassFilter;
private final T myBaseClass;
@NotNull private final Filter<T> myClassFilter;
private final Class<T> myElementClass;
@Nullable private final T myBaseClass;
private T myInitialClass;
private final boolean myIsShowMembers;
public AbstractTreeClassChooserDialog(String title, Project project) {
this(title, project, null);
public AbstractTreeClassChooserDialog(String title, Project project, final Class<T> elementClass) {
this(title, project, elementClass, null);
}
public AbstractTreeClassChooserDialog(String title, Project project, @Nullable T initialClass) {
this(title, project, GlobalSearchScope.projectScope(project), null, initialClass);
public AbstractTreeClassChooserDialog(String title, Project project, final Class<T> elementClass, @Nullable T initialClass) {
this(title, project, GlobalSearchScope.projectScope(project), elementClass, null, initialClass);
}
public AbstractTreeClassChooserDialog(String title,
Project project,
GlobalSearchScope scope,
@Nullable Filter<Object> classFilter,
@NotNull Class<T> elementClass,
@Nullable Filter<T> classFilter,
@Nullable T initialClass) {
this(title, project, scope, classFilter, null, initialClass, false);
this(title, project, scope, elementClass, classFilter, null, initialClass, false);
}
public AbstractTreeClassChooserDialog(String title,
Project project,
GlobalSearchScope scope,
@Nullable Filter<Object> classFilter,
T baseClass,
@NotNull Class<T> elementClass,
@Nullable Filter<T> classFilter,
@Nullable T baseClass,
@Nullable T initialClass,
boolean isShowMembers) {
super(project, true);
myScope = scope;
myElementClass = elementClass;
myClassFilter = classFilter == null ? allFilter() : classFilter;
myBaseClass = baseClass;
myInitialClass = initialClass;
@@ -120,10 +124,10 @@ public abstract class AbstractTreeClassChooserDialog<T extends PsiNamedElement>
handleSelectionChanged();
}
private Filter<Object> allFilter() {
return new Filter<Object>() {
private Filter<T> allFilter() {
return new Filter<T>() {
@Override
public boolean isAccepted(Object element) {
public boolean isAccepted(T element) {
return true;
}
};
@@ -286,7 +290,7 @@ public abstract class AbstractTreeClassChooserDialog<T extends PsiNamedElement>
private Set<Object> doFilter(Set<Object> elements) {
Set<Object> result = new HashSet<Object>();
for (Object o : elements) {
if (getFilter().isAccepted(o)) {
if (myElementClass.isInstance(o) && getFilter().isAccepted((T)o)) {
result.add(o);
}
}
@@ -434,7 +438,7 @@ public abstract class AbstractTreeClassChooserDialog<T extends PsiNamedElement>
}
@NotNull
protected Filter<Object> getFilter() {
protected Filter<T> getFilter() {
return myClassFilter;
}