diff --git a/tree_structure_provider/META-INF/plugin.xml b/tree_structure_provider/META-INF/plugin.xml
index 84a10e209..cd4c1f7e3 100644
--- a/tree_structure_provider/META-INF/plugin.xml
+++ b/tree_structure_provider/META-INF/plugin.xml
@@ -13,7 +13,7 @@
com.intellij.modules.lang
-
+
diff --git a/tree_structure_provider/scr/org/jetbrains/plugins/sample/tree/CustomTreeStructureProvider.java b/tree_structure_provider/scr/org/jetbrains/plugins/sample/tree/CustomTreeStructureProvider.java
deleted file mode 100644
index 75cf50a37..000000000
--- a/tree_structure_provider/scr/org/jetbrains/plugins/sample/tree/CustomTreeStructureProvider.java
+++ /dev/null
@@ -1,27 +0,0 @@
-package org.jetbrains.plugins.sample.tree;
-
-import com.intellij.ide.projectView.TreeStructureProvider;
-import com.intellij.ide.projectView.ViewSettings;
-import com.intellij.ide.util.treeView.AbstractTreeNode;
-import org.jetbrains.annotations.NotNull;
-import org.jetbrains.annotations.Nullable;
-
-import java.util.Collection;
-import java.util.Collections;
-
-/**
- * @author Anna Bulenkova
- */
-public class CustomTreeStructureProvider implements TreeStructureProvider {
- @NotNull
- @Override
- public Collection modify(@NotNull AbstractTreeNode parent, @NotNull Collection children, ViewSettings viewSettings) {
- return Collections.emptyList();
- }
-
- @Nullable
- @Override
- public Object getData(Collection collection, String s) {
- return null;
- }
-}
diff --git a/tree_structure_provider/scr/org/jetbrains/plugins/sample/tree/TextOnlyTreeStructureProvider.java b/tree_structure_provider/scr/org/jetbrains/plugins/sample/tree/TextOnlyTreeStructureProvider.java
new file mode 100644
index 000000000..d97f975c8
--- /dev/null
+++ b/tree_structure_provider/scr/org/jetbrains/plugins/sample/tree/TextOnlyTreeStructureProvider.java
@@ -0,0 +1,40 @@
+package org.jetbrains.plugins.sample.tree;
+
+import com.intellij.ide.projectView.TreeStructureProvider;
+import com.intellij.ide.projectView.ViewSettings;
+import com.intellij.ide.projectView.impl.nodes.PsiFileNode;
+import com.intellij.ide.util.treeView.AbstractTreeNode;
+import com.intellij.openapi.fileTypes.PlainTextFileType;
+import com.intellij.openapi.vfs.VirtualFile;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
+
+import java.util.ArrayList;
+import java.util.Collection;
+
+/**
+ * @author Anna Bulenkova
+ */
+public class TextOnlyTreeStructureProvider implements TreeStructureProvider {
+ @NotNull
+ @Override
+ public Collection modify(@NotNull AbstractTreeNode parent, @NotNull Collection children, ViewSettings settings) {
+ ArrayList nodes = new ArrayList();
+ for (AbstractTreeNode child : children) {
+ if (child instanceof PsiFileNode) {
+ VirtualFile file = ((PsiFileNode) child).getVirtualFile();
+ if (file != null && !file.isDirectory() && !(file.getFileType() instanceof PlainTextFileType)) {
+ continue;
+ }
+ }
+ nodes.add(child);
+ }
+ return nodes;
+ }
+
+ @Nullable
+ @Override
+ public Object getData(Collection collection, String s) {
+ return null;
+ }
+}
\ No newline at end of file