Order of TreeStructureProviders

Answered

Hello,

I have implemented a custom TreeStructureProvider class (TagTreeStructure) to modify the text and the foreground color of nodes text.

I noticed that modifications are only applied to non Kotlin files (the opened project is in Kotlin). So, I went to debug my TreeStructureProvider implementation and found that my provider is executed before the Kotlin ones (despite the fact that I specified order="last" to my plugin.xml declaration).

Is there a way to be sure that my provider will always be in last position ?

Thanks :)

0
3 comments

You can enumerate multiple order rules as in "last, after [id]" where id is the one from Kotlin plugin

0

Yes I see, but the problem is that if I open a project written in another language (in Python for example), the plugin id will change. So, is there a solution that works with every type of projects ?

0

There is currently no way to register EPs to be in "guaranteed last" order.

If you don't modify tree structure but just alter existing nodes text/presentation, try using com.intellij.ide.projectView.ProjectViewNodeDecorator

0

Please sign in to leave a comment.